Se você administra infraestrutura TOTVS ou trabalha com Protheus, entender o Broker Protheus é essencial para garantir conexões estáveis, reduzir retrabalhos e melhorar a performance do ERP. Aqui explico o conceito, comparo com a arquitetura antiga (Load Balance) com o Broker e apresento um passo a passo prático de configuração, incluindo dicas para evitar os erros mais comuns.
O que é balanceamento de carga e por que o Broker Protheus importa
O balanceamento de carga distribui acessos entre servidores de aplicação para assegurar que cada conexão caia no servidor com mais recursos disponíveis. A implementação tradicional chamada Load Balance fazia apenas a distribuição das conexões. O Broker Protheus vai além: ele gerencia conexões, tenta reconectar automaticamente por um período (90 segundos) e facilita o uso dos web smartclient, entregando maior robustez e menos perda de trabalho em caso de instabilidade na rede.
Comparativo rápido
- Load Balance: distribuição simples de conexões entre master e slaves. Sem tentativa automática de reconexão. Arquitetura antiga e descontinuada.
- Broker Protheus: distribuição + gerenciamento de conexões. Tentativa de reconexão por 90 segundos. Melhora a experiência com web smart clients.

Visão prática: estrutura e arquivos do Broker
Na instalação típica você terá:
- Um app-server configurado como broker (porta padrão usada neste exemplo: 4000).
- Dois ou mais app-servers configurados como slaves (Exemplo: Portas TCP 4001 e 4002).
- Webapp de cada slave com portas exclusivas (exemplo: 4323 e 4324).

Passo a passo de configuração
Cópia dos binários e renomeação
Faça duas cópias do appserver e renomeie as pastas para algo claro, por exemplo: app-server_broker, app-server_slave_1, app-server_slave_2.

Cópias do appserver criadas e renomeadas para broker e slave. Definir portas TCP e webapp
Edite o appserver.ini de cada slave e defina portas distintas. Exemplo usado aqui:
- Broker: 4000
- Slave 1: TCP 4001, webapp 4323
- Slave 2: TCP 4002, webapp 4324

Mostrando Port=4001 no appserver.ini — defina a porta TCP do slave aqui. Certificados SSL (opcional, recomendado)
Se for usar TLS, gere um certificado autoassinado e aponte os caminhos no appserver.ini. Atenção: ao colar o caminho do arquivo, remova as aspas que o sistema adiciona automaticamente, caso contrário a leitura falhará.

Arquivos de certificado (crt e key) e utilitário exibidos — prontos para apontar no appserver.ini. Configurar o appserver.ini do broker
Substitua o conteúdo do appserver.ini pelo template de balance HTTP, caso utilize alguma segurança adicione as chaves relacionadas ao SSL:
- [GENERAL]
- ConsoleLog=1
- ConsoleLogDate=0
- [BALANCE_HTTP]
- LOCAL_SERVER_PORT = 4000
- REMOTE_SERVER_01 = localhost 4001
- REMOTE_SERVER_02 = localhost 4002
- SSL_encrypt_upstream = 1
- SSL_method = SSL/TLS
- SSL_certificate = caminho/do/certificado
- SSL_key = caminho/da/chave
![Arquivo appserver.ini exibindo a seção [BALANCE_HTTP], com LOCAL_SERVER_PORT = 4000 e entradas REMOTE_SERVER_01/02.](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)
Template BALANCE_HTTP com porta do broker e servidores remotos configurados. Criar atalhos para rodar em console
Crie atalhos do appserver.exe para cada papel. No atalho do broker inclua o serviço de balanceamento como argumento, por exemplo:
- -balance_http -d

Criando o atalho: use ‘Enviar para → Área de trabalho (criar atalho)’ — passo mostrado com setas. Ordem de inicialização
Preferencialmente inicie: License, DB Access, Slaves e por último o Broker. Assim o Broker consegue detectar os slaves ao subir.
Como verificar se está funcionando
Para checar o status do Broker Protheus e os recursos consumidos por cada app-server, acesse:
https://localhost:4000/totvs_broker_query/status

A página exibe servidores registrados, quantidade de usuários, trends e consumo de CPU. Realize um login via web smart client apontando para a porta do broker (4000). O Broker fará o redirecionamento para um dos slaves (por exemplo 4001) e a sessão aparecerá no status.

Checklist rápido antes de subir o ambiente
- Portas definidas e sem conflito com outros serviços.
- Caminho do certificado corretamente referenciado e sem aspas.
- Atalhos configurados com os argumentos corretos (-console, -dp balance_http etc).
- Firewall e regras de rede liberando comunicação entre broker e slaves.
- Logs habilitados para facilitar diagnóstico.
Soluções para problemas comuns
- Broker não encontra slaves: verifique se os slaves estão rodando e se a porta TCP configurada está correta.
- Erro ao ler certificado: confirme o caminho e remova aspas; garanta permissões de leitura.
- Conexões caem frequentemente: confira latência de rede, recursos da máquina e ajuste o balance de carga se necessário.
Considerações Finais
O Broker Protheus representa a evolução natural para ambientes Protheus que precisam de estabilidade, resiliência e melhor gerenciamento de sessões. Com configurações simples de portas, appserver.ini e certificados, é possível reduzir retrabalhos e garantir uma experiência melhor para os usuários do ERP. Seguindo os passos e checklist acima você terá um ambiente de balanceamento de carga funcional e monitorável.
Este este artigo foi uma breve explicação sobre balanceamento de carga no TOTVS Protheus, para conferir o processo completo de forma prática sugerimos que assista o vídeo no início da página.
Cursos
Se você está buscando se tornar um desenvolvedor completo no Protheus, dominar REST, PO-UI e as demais tecnologias relacionadas ao Protheus, não fique de fora da nossa turma de alunos, clique aqui para mais detalhes.
Sobre nós:
A RFB Sistemas é uma consultoria e escola há mais de 15 anos no mercado e já atuamos em diferentes setores e portes de empresas ajudando a implantar a melhor solução para gerenciar os seus negócios, o que possibilita que sua empresa consiga tomar decisões mais rápidas, assertivas e claro otimizando resultados. Além disso já capacitamos mais de 1.600 profissionais a utilizarem as ferramentas, como: TOTVS Protheus e RM, Microsoft Power BI e Excel.



![Arquivo appserver.ini exibindo a seção [BALANCE_HTTP], com LOCAL_SERVER_PORT = 4000 e entradas REMOTE_SERVER_01/02.](https://rfbsistemas.com.br/wp-content/uploads/2025/12/balance-http-template-appserver-ini.png)


