Funcionalidade disponível a partir da versão 13.2.3.40 do Protheus Application Server de 18/12/2018.
Para utilizar o Protheus Monitor com broker para smart client é necessário que seja criado um servidor Protheus master de balanceamento, que no entanto será utilizado apenas para monitoramento e não para balanceamento de conexões. Além disso, também é necessário incluir uma configuração específica no arquivo appserver.ini do broker.
Exemplo de configuração
Para este exemplo, vamos configurar 1 broker, 3 servidores "slave" e um servidor para monitoração.
Vamos supor que broker, slaves e servidor de monitoração estão na mesma máquina física ou VM. (Isto não é necessário, mas é uma configuração comum).
Neste caso, do ponto de vista do broker tanto os slaves quanto o servidor de monitoração possuem IP 127.0.0.1 (localhost).
Do ponto de vista do servidor de monitoração, os 3 slaves possuem IP 127.0.0.1. (Assim não vai ser possível ao servidor de monitoração distribuir conexões balanceadas).
Apenas o broker precisa ter o ip e porta publicados.
Broker: ip 10.172.36.130 porta 4321
Servidor de monitoração: ip 127.0.0.1 porta 4000.
Servidores slave: ip 127.0.0.1 porta 4001, 127.0.0.1 porta 4002, 127.0.0.1 porta 4003.
Configuração do broker (appserver.ini)
[BALANCE_SMART_CLIENT_DESKTOP]
LOCAL_PORT=4321
REMOTE_SERVER_01=127.0.0.1 4001
REMOTE_SERVER_01=127.0.0.1 4002
REMOTE_SERVER_01=127.0.0.1 4003
; configuracao para o protheus monitor
PROTHEUS_MONITOR_ADDRESS=127.0.0.1 PROTHEUS_MONITOR_PORT=4000
Configuração do servidor de monitoração (appserver.ini)
...
...
[Drivers]
active=TCP
[TCP]
type = TCPIP
port = 4000
...
...
[ServerNetwork]
servers=Slave01, Slave02, Slave03
[Slave01]
server=127.0.0.1
port=4001
connections=1
[Slave02]
server=127.0.0.1
port=4002
connections=1
[Slave03]
server=127.0.0.1
port=4003
connections=1
...
...
Configuração do monitor (smartclient.ini)
...
...
[conexao-monitor]
server=10.172.36.130
port=4321
...
...
Notar que a configuração de conexão utilizada pelo monitor não utiliza a chave BrokerProxy!
Importante: neste cenário não é possível utilizar conexão encriptada para acesso ao monitor.