Conforme informações da Ignite Realtime, o Openfire foi desenvolvido para atender um número bem expressivo de conexões (milhares de conexões simultâneas), dependendo para isso de hardware e memória suficientes no servidor, é claro.
Mas para facilitar que o servidor possa atingir esses números sem que precisemos de um hardware "absurdo", o ideal é usar o módulo Connection Manager.
O que é o módulo Connection Manager ?
O módulo Connection Manager (Gerenciador de conexões) foi criado para otimizar o servidor Openfire, permitindo que o mesmo atenda milhares de conexões concorrentes.
Quais as vantagens de usar o módulo ?
Cada módulo pode atender uma porção de conexões de clientes o que ajuda a dividir a carga de processamento no servidor Openfire principal, evitando upgrades desnecessários no mesmo e garantindo melhor estabilidade no serviço.
Conforme informações do desenvolvedor, cada módulo consegue atender até 5 mil conexões simultâneas, o que por si só já é um valor bem significativo.
E como funciona ?
Para fazer o mesmo funcionar basta fazer o download do módulo e instalá-lo no computador que irá atender as conexões (por razões óbvias, esse computador não é o servidor Openfire).A configuração do mesmo é bastante simples:
- Habilite o suporte ao Connection Manager no console admin do Openfire (em Servidor -> Configurações do Servidor -> Gerenciadores de Conexão). Deixe a porta padrão (5262) mas coloque uma senha para garantir a segurança. E não esqueça de liberar essa porta no firewall, caso esteja bloqueada.
- Edite o arquivo manager.xml que fica na pasta conf do Connection Manager, colocando o domínio do servidor e informações de porta e senha (o resto pode ser deixado como padrão).
- Inicie o serviço do Connection Manager, rodando o arquivo cmanager.sh na pasta bin (cmanager.bat para usuários Windows) do Connection Manager. Aconselho que você crie um script de inicialização para automatizar o processo.
- Aponte seus clientes XMPP para conectarem no IP do computador onde foi instalado o Connection Manager (as portas são as mesmas, 5222 ou 5223 para SSL), ao invés de deixar ele se conectar no servidor principal (procedimento padrão dos clientes XMPP). Essa pode ser a parte "mais chata" do processo. Caso você tenha vários servidores rodando o Connection Manager, uma idéia interessante pode ser fazer um round robin DNS para eles.
Para outras informações e downloads do Connection Manager, acesse aqui.
Querendo ser apenas construtivo amigo, otimizar quer dizer que será feito melhor, logo otimizar melhor é um pleonasmo! Ótimo o artigo, mas o ejabberd suporta nativamente este balanceamento.
ResponderExcluirRealmente você tem razão.
ResponderExcluirAlterado !!! :-)
Quanto ao ejabberd eu realmente não sabia dessa feature.
Considero o ejabberd um excelente servidor XMPP (tanto que é usado pelo jabber.org). Só acho que falta para ele mais recursos (que você encontra no Openfire através de seus plugins) e também uma melhor interface gráfica de gerenciamento.
[]s