2010-12-14 6 views
0

J'ai une question concernant Memcache et le verrouillage de session pour une session utilisateur. Je veux verrouiller ou faire quelque chose qui empêche la discussion perturbatrices pour la session utilisateur ...Cohérence de mémoire || Thread interférence || Php

Nous avons une situation comme ceci:

Si le serveur est au maximum, l'utilisateur est redirigé vers le serveur « libre », mais a ce point, certaines données sont erronées ...

Alors quelqu'un a-t-il des sugestions:?

+0

Je ne sais pas exactement ce que vous voulez dire, mais si vous équilibrez la charge des serveurs, vous devez partager des sessions entre eux. Vous devriez configurer vos sessions soit dans memcache ou une base de données. Je comprends que vous utilisez des sessions memcache? Si oui, quel est le problème? – Fanis

+0

La session est chargée dans memcache et le problème est la consistance des données, certaines données sont très rarement stockées avec des valeurs incorrectes. Et je ne sais pas pourquoi:/ – xyz

Répondre

0

Tous vos serveurs Memcached doivent figurer dans votre fichier app/etc/local.xml et être les mêmes pour chaque serveur, afin qu'ils partagent les données de session. En variante, ou en plus, une meilleure politique d'équilibrage de charge serait un "hachage cohérent". Les utilisateurs seraient répartis équitablement sur les serveurs disponibles et chaque utilisateur serait géré par le même serveur, et par conséquent, la même session.

+0

Les serveurs sont répertoriés dans local.xml Hmmm ... je pense que je vais essayer "cohérente hachage" ... – xyz

+0

stratégie cohérente ne fonctionne pas dans cette situation ... – xyz

+0

Désolé écoute ça. J'ai vraiment pensé que ça pourrait aider. – clockworkgeek

0

Si vous souhaitez répartir vos sessions sur plusieurs serveurs, nous vous recommandons d'utiliser un hachage cohérent, car il réduit le nombre d'échecs lorsque vous ajoutez/supprimez des serveurs.

Memcached ne supporte pas le verrouillage, mais je crois que le nouveau module memcached a une solution de contournement qui fournit support for locking. Je ne l'ai cependant pas encore utilisé.

Questions connexes