Nota |
---|
O único arquivo de configuração do servidor de aplicação que será alterado com as informações abaixo é o do servidor Master, pois é ele quem administrará o balanceamento de carga de conexões. |
Sem Formato |
---|
[ServerNetwork]
MasterConnection=0
Servers=SERVER2,SERVER3
[SERVER2]
Type=TCPIP
Server=172.16.77.42
Port=1234
Connections=1
[SERVER3]
Type=TCPIP
Server=172.16.75.62
Port=1235
Connections=1 |
Configuração dos servidores Slave
Os servidores Slave, aqueles que recebem os usuários balanceados, requerem o tratamento da chave RootPath e para isso o diretório raíz do ambiente que está no servidor Master deve ser compartilhado com um único usuário com direitos suficientes para acessar, manipular, remover arquivos e pastas e que será utilizado por todos os demais servidores Slave.
Informações |
---|
O ambiente acessado deve estar igualmente configurado (exceto a chave RootPath) em todos os servidores que fazem parte da lista de balanceamento. |
Informações |
---|
O tratamento da chave RootPath é necessário porque os arquivos e pastas do ambiente que outrora poderia ser acessado fisicamente serão acessados através de um compartilhamento. |
Veja a seguir a alteração a ser realizada no arquivo de configuração dos servidores Slave, supondo que a raíz do ambiente esteja no servidor Master:
Sem Formato |
---|
[Environment]
RootPath=\\SERVER1\protheus_data\ |
Observe que a raíz do ambiente é acessada através de um compartilhamento do servidor Master
Observações
Cada servidor deverá ter o seu build e repositório, sendo que a base de dados fica centralizada no servidor Master ou no servidor de banco de dados.
- O balanceamento de carga das conexões é monoplataforma para o TOTVS | Application Server. Isso significa que o MASTER e todos os SLAVES devem rodar no mesmo sistema operacional.
- Quando for realizada qualquer atualização de build e o repositório no servidor Master, a mesma alteração deverá ser feita nos outros servidores.
- Um mesmo usuário Windows deve ter direitos na pasta compartilhada (RootPath) e deverá ser um usuário Administrador, para que possa ser associado ao serviço de cada servidor.
- Para verificar onde os usuários estão conectados, basta utilizar a aplicativo TOTVS | Monitor em cada servidor.
Crie seções [TCP] no arquivo de configuração, do TOTVS | SmartClient, para receber conexão dos slaves (TCP1, TCP2, TCP3 e TCPN).
[TCP1]
Server=Slave1
Port=1237
[TCP2]
Server=Slave2
Port=1239
[TCP3]
Server=Slave3
Port=1241
Ao abrir o TOTVS | Monitor, informe qual comunicação [TCP] que deseja verificar as conexões.
- O nome do ambiente e portas de comunicação deve ser idêntico para todos os servidores.
- Separe em um servidor dedicado, um TOTVS | Application Server para o ambiente de compilação: compilação é uma operação crítica, exclusiva, que não deve ser executada no mesmo serviço do TOTVS | Application Server que está atendendo conexões de usuários do TOTVS | SmartClient e ambiente de produção.
- No caso de balanceamento de carga das conexões em schedule, deve-se escolher um slave para receber a conexão. Lembre-se que o servidor Master NÃO recebe conexões.
- O valor da chave Connections determina a distribuição entre os slaves usando RAZÃO MATEMÁTICA (Exemplo: 1:2:1).
- O valor de RootPath=\\SIGAMASTER\XXX\AP_DATA\ deve ser a mesma para todas as instâncias para os ambientes [Environment] de mesmo nome. Para mais informações, consulte a documentação da seção[ServerNetwork].
- Reserve 2 GB para cada TOTVS | Application Server criado que pode ser na mesma máquina (desde que tenha capacidade para isso).
- No ambiente de balancecada ambiente deve ter seu RPO (todos iguais). NÃO compartilhe RPO em rede, pelos seguintes motivos:
Em casos conhecidos os logs mostram que o sistema operacional está causando os erros de comunicação nos servidores de aplicação e não nas estações.
As mensagens que as estações enviam no momento de uma nova conexão mostram que foi a parte servidora da operação que cortou a conexão de rede.
Os servidores de aplicação fazem leitura intensiva dos RPOs quando executam o ERP, pois neles estão compiladas todas as regras de negócio, se o RPO é compartilhado em rede, tem como resultado:
- Degradação na performance de execução dos servidores de aplicação que utilizam o RPO compartilhado (tráfego de RPO em rede).
- O aumento do consumo de recursos de rede nos servidores que compartilham RPO, tipicamente, saturam o uso das interfaces de rede, criando uma concorrência de transmissão de dados com as estações que utilizam o TOTVS | SmartClient.