Connettività con Load Balancer
Spesso, le distribuzioni delle applicazioni utilizzano sistemi di bilanciamento del carico per evitare richieste provenienti da server sovraccarichi, ovvero impedire ai client di accedere direttamente ai server.
Note:
Questa configurazione è per i bilanciatori del carico che utilizzano un approccio round-robin.
Consigli
Assicurati che le sessioni permanenti non siano abilitate nel bilanciatore del carico.
In tali circostanze, per garantire che il client si connetta a tutte le macchine nel cluster (che è necessario sia per il Partitioned ed Partizione-Replica topologie), NCache crea un is-load-balancer
configurazione.
Questa configurazione funziona utilizzando più richieste per stabilire connessioni con tutti i server desiderati collegati al bilanciatore del carico. Ad esempio, immagina di avere un bilanciatore del carico connesso a tre server dove NCache è già connesso al server 1 e deve essere connesso agli altri server, invierà quindi richieste ripetute fino a quando non sarà connesso in sequenza al server 2 e al server 3. Dopo aver stabilito la prima connessione, il bilanciatore del carico invia la seconda richiesta al server 2, NCache riceverà l'ID del server e accetterà di stabilire una connessione prima di proseguire, come dimostrato di seguito.
Tuttavia, se il sistema di bilanciamento del carico invia la richiesta al server 3, NCache rifiuterà la connessione e riproverà, come mostrato di seguito. Questo processo continuerà fino alla connessione a tutti i server o fino al raggiungimento del numero di tentativi specificato (load-balancer-connection-retries
).
Note:
Il numero predefinito di load-balancer-connection-retries
is 15 e il numero minimo di tentativi è 2.
Consigli
I load-balancer-connection-retries
Il tag indica la frequenza con cui viene richiesto il sistema di bilanciamento del carico per ogni tentativo di connessione regolare (ovvero, tentativi di connessione). Pertanto, se connection-retry= 3
ed load-balancer-connection-retries= 15
, al sistema di bilanciamento del carico verranno richieste 15 volte per tentativo, per un totale di 45 richieste al sistema di bilanciamento del carico per connettere il client alla macchina corretta.
Note:
Tutti i tentativi di connessione vengono registrati.
Configurazione NCache per indirizzare il bilanciatore del carico
Per abilitare questo flag, puoi modificare il file client.ncconf file (disponibile su %NCHOME%\config
in Windows o opt/ncache/config
in Linux) impostando is-load-balancer
a Vero, come 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:
Puoi anche farlo a livello di codice usando il file API CacheConnectionOptions.
Vedere anche
Topologie della cache
Cluster di cache
Cliente di cache
Cache cliente
Bridge per la replica WAN