Connectivité avec Load Balancer
Souvent, les déploiements d'applications utilisent des équilibreurs de charge pour empêcher les requêtes émanant de serveurs surchargés, c'est-à-dire empêcher les clients d'accéder directement aux serveurs.
Notes
Cette configuration est destinée aux équilibreurs de charge utilisant une approche circulaire.
Important
Assurez-vous que les sessions persistantes ne sont pas activées dans l'équilibreur de charge.
Dans de telles circonstances, pour garantir que votre client se connecte à toutes les machines du cluster (ce qui est nécessaire à la fois pour le Partitionné et les Réplique de partition topologies), NCache offre le is-load-balancer
configuration.
Cette configuration fonctionne en utilisant plusieurs requêtes pour établir des connexions avec tous les serveurs souhaités connectés à l'équilibreur de charge. Par exemple, imaginez que vous disposez d'un équilibreur de charge connecté à trois serveurs où NCache est déjà connecté au serveur 1 et doit être connecté aux autres serveurs, il enverra alors des requêtes répétées jusqu'à ce qu'il soit connecté au serveur 2 et au serveur 3 séquentiellement. Une fois la première connexion établie, l'équilibreur de charge envoie la deuxième requête au serveur 2, NCache recevra l'ID du serveur et acceptera d'établir une connexion avant de continuer, comme démontré ci-dessous.
Cependant, si l'équilibreur de charge envoie la requête au serveur 3, NCache rejettera la connexion et réessayera, comme indiqué ci-dessous. Ce processus se poursuivra jusqu'à ce qu'il soit connecté à tous les serveurs ou jusqu'à ce que le nombre de tentatives spécifié soit atteint (load-balancer-connection-retries
).
Notes
Le nombre par défaut de load-balancer-connection-retries
is 15 et le nombre minimum de tentatives est 2.
Important
La load-balancer-connection-retries
La balise indique la fréquence à laquelle l'équilibreur de charge est invité à effectuer une nouvelle tentative de connexion régulière (c'est-à-dire des tentatives de connexion). Par conséquent, si connection-retry= 3
et les load-balancer-connection-retries= 15
, l'équilibreur de charge sera invité 15 fois par nouvelle tentative, soit un total de 45 invites à l'équilibreur de charge pour connecter le client à la bonne machine.
Notes
Toutes les tentatives de connexion sont enregistrées.
Configurer NCache pour aborder l'équilibreur de charge
Pour activer cet indicateur, vous pouvez modifier le client.ncconf fichier (disponible sur %NCHOME%\config
sous Windows ou opt/ncache/config
sous Linux) en définissant is-load-balancer
à True, comme suit :
<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>
Notes
Vous pouvez également le faire par programmation en utilisant le API CacheConnectionOptions.
Voir aussi
Topologies de cache
Cluster de cache
Client cache
Cache Client
Pont pour la réplication WAN