1. Contexto e objetivo 🎯
O Broker é altamente recomendado em ambientes onde o SmartClient sofre quedas por erro de sincronismo com o AppServer. Ele suporta a conexão por até 90 segundos, evitando o timeout e mantendo a sessão ativa.
2. Pré-requisitos
-
Ter uma instalação separada do AppServer dedicada ao Broker.
-
Acesso ao mesmo banco de dados usado pelo AppServer principal.
-
Configuração de portas e IPs adequados para comunicação entre SmartClient e Broker
3. Passo a passo da configuração
3.1. Instalar AppServer para o Broker
Crie uma nova pasta (ex.: appserver_broker
) com uma cópia do AppServer, apontando ao mesmo banco.
3.2. Ajustar o appserver.ini
Apague todo o conteúdo e inclua:
1 2 3 4 5 6 7 8 9 10 |
[GENERAL] CONSOLELOG=1 [BALANCE_SMART_CLIENT_DESKTOP] LOCAL_SERVER_PORT = 4000 REMOTE_SERVER_01 = 172.16.50.42 5000 REMOTE_SERVER_02 = 172.16.50.42 5001 REMOTE_SERVER_03 = 172.16.50.42 5002 SERVICE_NAME = XXX_TOTVS_BALANCE_SC_001 SERVICE_DISPLAY_NAME = "BROKER SERVICE" |
-
LOCAL_SERVER_PORT
: porta que o Broker escutará. -
REMOTE_SERVER_*
: IP/porta dos AppServers destino. -
SERVICE_NAME
eSERVICE_DISPLAY_NAME
: caso deseja instalar como serviço Windows
3.3. Configurar portas e IPs
Ajuste os endereços de acordo com seu ambiente para garantir a conectividade entre SmartClient e Broker.
3.4. Deploy da DLL totvsbrocker
Copie a DLL totvsbrocker
para a pasta do SmartClient.
3.5. Inicializar o AppServer com parâmetro correto
Execute o AppServer com:
1 |
appserver.exe -i -balance_smart_client_desktop |
Correção importante: troque -d
por -i
, pois:
-
-d
ativa modo DEBUG -
-i
ativa modo INSTALL/SERVICE
3.6. Configurar o SmartClient
No smartclient.ini
, adicione:
1 |
brokerproxy=1 |
Isso habilita a utilização do Broker
4. Atualizações de versões e DLL
-
Usuários relataram que, a partir do binário AppServer 20.3.0.4, a DLL
totvsbrokercg.dll
não é mais necessária. -
A partir da versão SmartClient 20.3.0.2, o SmartClient suporta PO-UI com conexões criptografadas, mesmo sem a chave
brokerproxy
, porém neste caso não há tolerância a quedas e não aparece na tela de status do Broker
5. Resumo da configuração
Etapa | Detalhes |
---|---|
Instalar AppServer dedicado | Crie pasta separada com cópia do AppServer principal |
Editar appserver.ini |
Incluir [GENERAL] e [BALANCE_SMART_CLIENT_DESKTOP] |
Copiar DLL para SmartClient | Arquivo totvsbrocker dentro da pasta do SmartClient |
Executar AppServer | Com -i -balance_smart_client_desktop |
Configurar SmartClient | Adicionar brokerproxy=1 no smartclient.ini |
Versões mais novas | DLL opcional e suporte a PO‑UI mesmo sem brokerproxy |
6. Quando não é necessário usar DLL ou chave
-
A partir do AppServer 20.3.0.4, a DLL
totvsbrokercg.dll
deixa de ser necessária. -
Com SmartClient 20.3.0.2+, é possível usar Broker sem
brokerproxy
, mas sem suporte a recuperação de conexão ou exibição no status.
Configurar o Broker proporciona maior robustez ao ambiente Protheus, reduzindo erros de sincronismo e garantindo estabilidade nas conexões do SmartClient. Seguindo os passos acima e aplicando as correções sugeridas pelos usuários, você garante uma implementação eficaz e alinhada às versões mais recentes do framework e binários.
Fernando Bueno
Atuando desde 2005 no mercado de tecnologia, desenvolvendo e implantando e sistemas gerenciais, sistemas e sites web e ecommerce.
Siga-me no Linked In
Últimos posts por Fernando Bueno (exibir todos)
- Lovable se torna unicórnio apenas 8 meses após sua fundação e desafia o modelo tradicional de desenvolvimento com IA - 18 de julho de 2025
- Como Ativar o Controle Automático de Revisão de Estruturas no Protheus - 14 de julho de 2025
- Como Configurar o SmartView no Protheus - 9 de julho de 2025