Configuração para balanceamento de carga Appserver Logix X Requisições HTTP Rest usando TOTVS Broker
O TOTVS | Application Server pode ser utilizado como um proxy transparente de balanceamento para acionamento de requisições API REST a um TOTVS | Application Server, usando um serviço TOTVS Broker, para equilibrar a quantidade de requisições API REST que uma aplicação Web ou Serviço externo possa vir a solicitar para o Logix.
Um exemplo prático onde isso pode ser bem útil é a execução de uma Aplicação Web Logix onde a tela pode ser composta por informações onde cada uma pode ser resultado de uma requisição API REST enviada para o AppServer Logix.
Imagine então se uma tela faz 15 ou 20 requisições simultâneas para preencher os dados em tela. Isso tende a sobrecarregar o Appserver, caso apenas um único serviço de AppServer venha a receber todas estas 15 a 20 requisições API REST. Com isso a melhor alteranativa é fazer com que estas 15 a 20 requisições sejam distribuidas de forma inteligente para um grupo de AppServers Logix, com indicação de apenas um endereço HOST e PORT fixo do AppServer TOTVS Broker para balanceamento de serviços Webservices para a porta do serviço HTTP REST, que faz o redirecionamento das requisições API REST para um grupo de AppServers Logix que tenham o serviço HTTP REST ativo em todos eles, gerenciando a quantidade de requisições HTTP REST de forma equilibrada, evitando assim a sobrecarga e consequentemente melhorando a performance do produto.
Instalação e configuração do Appserver Broker
Para instalação do Appserver Broker, deve-se utilizar o mesmo binário AppServer 64 bits utilizado para executar o produto Logix.
Lembrando que, mesmo que o produto Logix ainda esteja utilizando AppServer 32 bits, o serviço do TOTVS Broker pode ser utilizado na arquitetura 64 bits, pois não apresenta conflitos para gerenciar requisições para AppServer com arquitetura 32 bits. O TOTVS Broker funciona como um serviço de proxy, redirecionando requisições entre serviços.
As configurações de um AppServer Broker são mais simples do que um AppServer que processa os dados para o produto Logix.
De forma resumida, para cada tipo protocolo de serviço que desejar configurar um balanceamento de carga usando o TOTVS Broker, você deverá ter:
- 2 ou mais AppServers com o protocolo do serviço HTTP REST devidamente disponibilizado para uso.
- 1 AppServer principal que será o Broker para gerenciar as requisições para os serviços dos demais AppServers que farão parte do balanceamento de carga, que podemos chamar de serviços AppServers "Escravos".
Veja exemplo de configuração básica de dois AppServers com o protocolo HTTP REST ativado, onde se deseja configurar posteriomente o balanceamento de carga de requisições:
Agora veja como é feita a configuração no AppSever Broker que irá administrar as requisições para os dois AppServers apresentados acima:
Substitua os valores HOSTNAME e o número das portas pelas respectivas portas configuradas no Appserver Broker.
ATENÇÃO
As configurações acima apenas é uma sugestão de uso, sendo que algumas chaves adicionais podem ser informadas e o valor de chaves podem ser alteradas, conforme houver necessidade. Para mais detalhes sobre configurações para o TOTVS Broker acessse:
Instalação Appserver Broker como serviço no Windows
Para instalar o Appserver Broker como serviço do Windows é um pouco diferente da instalação de serviço de um Appserver para ERP Logix. No caso do Appserver como Broker é preciso que, via linha de comando no Windows, usando permissão de acesso como administrador, execute uma instrução a partir da pasta onde está o binário do Appserver Broker, com um parâmetro indicando o tipo de protocolo de balanceamento de carga que o Broker irá gerenciar.
Para mais detalhes a respeito de como realizar esta instalação e configuração acesse Balanceamento de carga com broker.
ATENÇÃO
A configuração das chaves SERVICE_DISPLAY_NAME e SERVICE_NAME devem ter sido previamente registradas no arquivo de configuração .INI do AppServer Totvs Broker antes de executar o comando de instalação como serviço no Windows.
Em caso de instalação como serviço do Windows, confirme a criação do serviço do Appserver Broker após realizar o procedimento acima e configure o serviço como automático se desejar inicialização automática, juntamente com o servidor/máquina local onde foi realizada a instalação, não esquecendo que para não haver restrições durante o uso do AppServer, é preciso configurar neste serviço uma conta de usuário administrador para evitar bloqueios de acessos do serviço no uso do Logix.
Utilizando os serviços após configurados
Após configurados os serviços AppServers REST "Escravos" e o AppServer Broker REST, basta iniciar todos serviços e fazer com que as requisições REST utilizem a URL base do REST com o número da porta REST configurada no appserver REST Broker para que as requisições sejam automaticamente redirecionadas para os AppServers REST "Escravos".
Qualquer requisição de API Rest enviada para o Logix pode ser direcionada para a URL Base REST considerando o número da porta REST configurada no AppServer REST Broker.
Já para a execução das Aplicações WEB Logix, como a exemplo da aplicação GTR10000, será necessário configurar no arquivo de Profile do Logix a seguinte chave para que todas requisições API REST realizadas a partir das Aplicações WEB Logix sejam direcionadas para o AppServer REST Broker que irá então realizar a devida distribuição das requisições API REST respeitando as configurações indicadas para o Totvs AppServer REST Broker em relação a lista dos AppServers "Escravos" e a forma configurada para realizar a distribuição de processos.
#Chave para indicar um endereço URL fixo para direcionar todas requisicoes HTTP REST das aplicações WEB Logix iniciadas com auxílio do componente FreeForme LWebDialog. logix.app.baseRestURL = "https://[HOSTNAME]:9030"
O [HOSTNAME] deve ser o nome ou IP do servidor onde foi disponibilizado o serviço do AppServer Broker para atender o balanceamento de carga de requisições API REST.
PARABÉNS! Agora você já pode executar as aplicações WEB Logix com mais tranquilidade e rapidez.
Mas calma, caso você não tenha configurado ainda os serviços dos AppServers para permitir executar as telas das aplicações Web Logix, clique AQUI e siga todas orientações.
Em caso de dificuldades ou problemas para configurar ou executar os procedimentos acima, faça abertura de um ticket na página de suporte da Totvs para o time de atendimento do Framework Logix, enviando as seguintes informações:
- Resumo do problema
- Arquivos de LOG/DEBUG do problema
- Versões de builds TOTVS Client e TOTVS Server em uso
- Arquivos de configuração .INI dos AppServers envolvidos, indicando
- Informações sobre o sistema operacional utilizado no servidor de aplicação e também na maquina local do usuário.