Page tree
Skip to end of metadata
Go to start of metadata

Funcionalidade disponível no binário TOTVSTEC NG (linha Microsiga Protheus 12).

Obs. esta versão funciona também para a linha Microsiga Protheus 11 (Versão 131227A), respeitando os Sistemas operacionais do TOTVSTEC NG

Versão recomendada: 19.3.0.3

Balanceamento de carga nativo do Protheus

O balanceamento de carga nativo do Protheus não funciona como proxy reverso, ou seja, a comunicação entre smart clients e servidores Protheus não passa através do servidor Protheus configurado como master, este apenas atua como distribuidor da carga de conexão.

Este mecanismo foi construído para prover melhor eficiência do balanceamento, porque o master não se torna um ponto único de falha do sistema:  caso o master fique indisponível, os slaves continuam executando as conexões neles já estabelecidas.

O balanceamento de carga nativo do Protheus funciona apenas para o smart client desktop. Caso seja necessário fazer um balanceamento de carga para protocolo TCP "raw" (como usado por clientes Telnet) ou para protocolo HTTP (usado por clientes web, incluindo smart client html e web services) não é possível utilizar o balanceamento nativo, embora seja possível utilizar soluções open source ou comerciais não fornecidas pela Totvs.

Existem diversas soluções não-Totvs, como o Network Load Balancing do Windows, o Linux Load Balancer da Red Hat, o HAProxy, o ZEN Load Balancer, entre outros. Essas soluções podem ser utilizadas sem prejuízo do comportamento do sistema, desde que elas sejam transparentes para a aplicação, isto é, não alterem o conteúdo das mensagens trocadas entre os clients e os servidores Protheus. Para maiores informações, verifique com o fornecedor da solução se a mesma atende a este critério de transparência.


Broker - Balanceamento utilizando proxy reverso

A versão 12 do Protheus inclui funcionalidade nativa de proxy reverso, que pode ser utilizada alternativamente ao balanceamento utilizando master/slave disponível nas versões anteriores.

Existem 4 casos de uso mais comuns em que esta funcionalidade pode ser utilizada:
  1. balanceamento de conexões entre Smart Client desktop e servidor Protheus
  2. balanceamento de conexões entre Clientes HTML e servidor Protheus
  3. balanceamento de conexões entre clientes Telnet e servidor Protheus
  4. balanceamento de conexões entre clientes de Web Services e servidor Protheus

Adicionalmente, os casos 1, 2, 3 e 4 são na verdade de utilização genérica, podendo de maneira geral ser aplicados a variados tipos de clientes e servidores.

A funcionalidade de balanceamento é ativada através de um parâmetro no comando de chamada do servidor Protheus:

Parâmetros de linhaDescrição
-balance_smart_client_desktopExecuta o Application Server como proxy para o SmartClient Desktop.
-balance_httpExecuta o Application Server como proxy para o SmartClient HTML.
-balance_telnetExecuta o Application Server como proxy para conexões via Telnet.
-balance_web_servicesExecuta o Application Server como proxy para serviços de Web Service.


Adicionalmente, em cada uma destas opções podem ser utilizados os seguintes parâmetros adicionais, referentes à utilização da funcionalidade de balanceamento como serviço Windows:

Parâmetros de linhaDescriçãoExemplo
-i

Instala o serviço Windows.

appserver -balance_http -i
-u

Desinstala o serviço Windows.

appserver -balance_http -u
-dExecuta em modo desktop (numa janela DOS ou console Linux).appserver -balance_http -d
-aInicia o serviço Windows (ou daemon Linux).appserver -balance_http -a
-oInterrompe o serviço Windows (ou daemon Linux).appserver -balance_http -o
-qVerifica se o serviço Windows está instalado (ou daemon Linux está ativo).appserver -balance_http -q

* As mesmas opções referentes a serviço também funcionam em conjunto com as opções "-balance_smart_client_desktop", "-balance_telnet" e "-balance_web_services".

As opções de instalação/desinstalação de serviço estão disponíveis apenas no ambiente Windows.


  • No labels