Histórico da Página
Balanceamento entre Clientes HTTP e servidor
...
Inclusão de trecho Application Server Application Server nopanel true
Application Server | |
Application Server | |
nopanel | true |
Este broker é utilizado para balanceamento de aplicações web que necessitam de controle de sessão. Tipicamente usado com Como por exemplo o portal Protheus e o SmartClient HTML/WebApp.
Este broker não é voltado para aplicações web stateless, como por exemplo web services. Especificamente, este broker não funciona para balancear consumo de web services fornecidos pelo application server
em uso com o ERP Protheus. Para este caso de uso utilizar o Broker para Web Services. Inclusão de trecho Application Server Application Server nopanel true
...
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
[GENERAL] ; configuracao recomendada para gravacao de log ConsoleLog=1 AsyncConsoleLog = 0 ConsoleLogDate = 0 [BALANCE_HTTP] ; porta que atende o Client HTTP LOCAL_SERVER_PORT = 4000 ; hostname ou endereço ip, e porta TCP onde os servidores ProtheusApplication Server ERP aceitam conexões HTTP REMOTE_SERVER_01 = 172.16.106.31 5001 REMOTE_SERVER_02 = 172.16.106.31 5002 ; etc ; esta chave aceita letras e números para identificar servidores, ; por exemplo REMOTE_SERVER_0A, REMOTE_SERVER_XY, etc, e as chaves ; podem estar em qualquer ordem ; tempo de retenção de uma sessão inativa, em segundos ; obs. não se aplica ao smartclient html SESSION_TIMEOUT = 600 ; nome do serviço Windows, caso seja utilizado ; (não pode conter espaços) SERVICE_NAME = TOTVS_BROKER_SH_XYZ ; opcional: "display name" do serviço Windows SERVICE_DISPLAY_NAME = "BROKER SERVICE" |
Importante: Quando o SmartClient HTML/WebApp é utilizado com o broker, o controle de tempo de inatividade continua sendo feito normalmente pelo Protheus através da chave InactiveTImeout no arquivo de configuração appserver.ini do Protheus (http://tdn.totvs.com/x/e4pc). Além disso, é necessário configurar a chave WebSocket = 0 na seção WebApp do arquivo de configuração appserver.ini do ERPa aplicação client deve tratar explicitamente o cookie de afinidade TOTVS_BROKER_SH_001 enviado pelo broker.
Quando o broker recebe um request HTTP sem este cookie, o broker envia a seguinte resposta para o client, para criação do cookie:
para POST: "window.location.reload"
outros (GET, etc) : "window.location.href = window.location.href"
Portanto, é essencial que para uma aplicação web client utilizar o Broker HTTP este cenário seja considerado.
Normalmente esta consideração se refere a cenários não browser-based, por exemplo, aplicações client escritas em client em Java, Python, C#, etc.
Eventualmente mesmo aplicações JavaScript browser-based podem precisar de algum tratamento específico quando utilizadas com este broker.
Tudo depende de como a aplicação client é escrita.