Balanceamento de servidores
O MegaConnectionManager possui o recurso de balanceamento de carga entre servidores de aplicação, podendo direcionar as conexões de usuários para o servidor que estiver com menor número de usuários conectados naquele momento.
Isto é feito automaticamente, quando existe mais de um servidor de aplicação configurado no arquivo MegaClient.xml, localizado na pasta da versão, subpasta Config.
Essa configuração pode ser feita por grupo de servidores e, consequentemente, servidores.
Exemplo:
Neste cenário, há 4 servidores, sendo, 3 servidores medianos e um servidor extremamente parrudo, que em termos computacionais corresponde a somatória dos 3 medianos.
Dessa forma, são criados dois grupos, o primeiro denominado GRUPO_A, que possui os 3 servidores medianos, que por sinal, balancearão a carga entres esses 3. Para aproveitar os servidores mais rápidos, é criado o GRUPO_B, que servirá como um balanceador de primeiro nível, direcionando os usuários primeiramente entre os grupos e depois dentro destes grupos, gerando no cenário uma equivalência de perfomance entre eles.
Exemplo de configuração do grupo DEFAULT (quando não se utiliza balanceamento entre grupos):
<!-- Configuração para uma determinado Grupo de Computadores -->
<GRUPO_CONFIG>
<!-- O Grupo de Configuração <DEFAULT> é obrigatório !!! -->
<DEFAULT>
<!--Configuração do Servidor 1 de Aplicação-->
<SERVERS>
<!--Configuração para Ativar\desativar Servidor-->
<ACTIVE>TRUE</ACTIVE>
<!--Configuração do Nome/Ip do Servidor-->
<APPLSERVER>SERVIDOR_MEGA1</APPLSERVER>
<!--Configuração da Porta Http do Servidor-->
<SERVERPORT>8099</SERVERPORT>
</SERVERS>
<!--Configuração do Servidor 2 de Aplicação-->
<SERVERS>
<ACTIVE>TRUE</ACTIVE>
<APPLSERVER>SERVIDOR_MEGA2</APPLSERVER>
<SERVERPORT>8099</SERVERPORT>
</SERVERS>
</DEFAULT>
</GRUPO_CONFIG>
Exemplo de configuração quando utiliza-se balanceamento de grupos de servidores:
<DEFAULT> -->
<COMPUTADORES>
<SERVIDOR_MEGA1>CONFIG_GRUPO_A</SERVIDOR_MEGA1>
<SERVIDOR_MEGA2>CONFIG_GRUPO_A</SERVIDOR_MEGA2>
<SERVIDOR_MEGA3>CONFIG_GRUPO_A</SERVIDOR_MEGA3>
<SERVIDOR_MEGAPARRUDO>CONFIG_GRUPO_B</SERVIDOR_MEGAPARRUDO>
</COMPUTADORES>
<!-- Configuração para uma determinado Grupo de Computadores -->
<GRUPO_CONFIG>
<!-- O Grupo de Configuração <DEFAULT> é obrigatório !!! -->
<DEFAULT></DEFAULT>
<!-- Podemos fazer a configuração para um determinado grupo de máquinas -->
<CONFIG_GRUPO_A>
<!--Configuração do Servidor 1 de Aplicação-->
<SERVERS>
<!--Configuração para Ativar\desativar Servidor-->
<ACTIVE>TRUE</ACTIVE>
<!--Configuração do Nome/Ip do Servidor-->
<APPLSERVER>SERVIDOR_MEGA1</APPLSERVER>
<!--Configuração da Porta Http do Servidor-->
<SERVERPORT>8099</SERVERPORT>
</SERVERS>
<!--Configuração do Servidor 2 de Aplicação-->
<SERVERS>
<ACTIVE>TRUE</ACTIVE>
<APPLSERVER>SERVIDOR_MEGA2</APPLSERVER>
<SERVERPORT>8099</SERVERPORT>
</SERVERS>
<!--Configuração do Servidor 3 de Aplicação-->
<SERVERS>
<ACTIVE>TRUE</ACTIVE>
<APPLSERVER>SERVIDOR_MEGA3</APPLSERVER>
<SERVERPORT>8099</SERVERPORT>
</SERVERS>
</CONFIG_GRUPO_A>
<!-- Podemos fazer a configuração para um determinado grupo de máquinas -->
<CONFIG_GRUPO_B>
<!--Configuração do Servidor 1 de Aplicação-->
<SERVERS>
<!--Configuração para Ativar\desativar Servidor-->
<ACTIVE>TRUE</ACTIVE>
<!--Configuração do Nome/Ip do Servidor-->
<APPLSERVER>SERVIDOR_MEGAPARRUDO</APPLSERVER>
<!--Configuração da Porta Http do Servidor-->
<SERVERPORT>8999</SERVERPORT>
</SERVERS>
</CONFIG_GRUPO_B>
</GRUPO_CONFIG>
</DOCUMENT>