Conectividade com Load Balancer
Muitas vezes, as implantações de aplicativos empregam balanceadores de carga para evitar que as solicitações sobrecarreguem os servidores, ou seja, impedir que os clientes acessem os servidores diretamente.
Note
Essa configuração é para balanceadores de carga que usam uma abordagem round-robin.
importante
Certifique-se de que as sessões fixas não estejam habilitadas no balanceador de carga.
Nessas circunstâncias, para garantir que seu cliente se conecte a todas as máquinas do cluster (o que é necessário tanto para o Particionado e Réplica de partição topologias), NCache oferece o is-load-balancer
configuração.
Esta configuração funciona usando múltiplas solicitações para estabelecer conexões com todos os servidores desejados conectados ao balanceador de carga. Por exemplo, imagine que você tem um balanceador de carga conectado a três servidores onde NCache já está conectado ao servidor 1 e precisa estar conectado aos demais servidores, ele enviará solicitações repetidas até se conectar ao servidor 2 e ao servidor 3 sequencialmente. Após a primeira conexão ser estabelecida, o balanceador de carga envia a segunda solicitação ao servidor 2, NCache receberá o ID do servidor e concordará em estabelecer uma conexão antes de prosseguir, conforme demonstrado abaixo.
No entanto, se o balanceador de carga enviar a solicitação ao servidor 3, NCache rejeitará a conexão e tentará novamente, conforme mostrado abaixo. Este processo continuará até que esteja conectado a todos os servidores ou até que o número especificado de novas tentativas seja alcançado (load-balancer-connection-retries
).
Note
O número padrão de load-balancer-connection-retries
is 15 e o número mínimo de tentativas é 2.
importante
A load-balancer-connection-retries
tag significa com que frequência o balanceador de carga é solicitado por novas tentativas de conexão regulares (ou seja, novas tentativas de conexão). Portanto, se connection-retry= 3
e load-balancer-connection-retries= 15
, o balanceador de carga será solicitado 15 vezes por nova tentativa, totalizando 45 solicitações ao balanceador de carga para conectar o cliente à máquina correta.
Note
Todas as tentativas de conexão são registradas.
configurar NCache para abordar o balanceador de carga
Para ativar esse sinalizador, você pode editar o cliente.ncconf arquivo (disponível em %NCHOME%\config
no Windows ou opt/ncache/config
no Linux) configurando is-load-balancer
para True, como segue:
<configuration>
<ncache-server connection-retries="3" retry-connection-delay="0" retry-interval="1" load-balancer-connection-retries = "15" command-retries="3" command-retry-interval="0.1" client-request-timeout="90" connection-timeout="5" port="9800" local-server-ip="20.200.20.40" enable-keep-alive="False" keep-alive-interval="30"/>
<cache id="demoCache" client-cache-id="" client-cache-syncmode="optimistic" skip-client-cache-if-unavailable="True" reconnect-client-cache-interval="10" default-readthru-provider="" default-writethru-provider="" load-balance="False" enable-client-logs="True" log-level="info">
<server name="20.200.20.40" is-load-balancer="True"/>
</cache>
</configuration>
Note
Você também pode fazer isso programaticamente usando o API CacheConnectionOptions.
Veja também
Topologias de cache
Cluster de cache
Cliente de cache
Cache de cliente
Ponte para replicação WAN