Mot-clé - memcached

Fil des billets

08mars 2010

Gestion des sessions Magento

magento_logo.jpg
Suite à mon article Centralisation des sessions Magento en cluster présentant l'utilisation de Memcached avec Magento, voici également d'autres façons de gérer les sessions.

  1. Utilisation du mode par défaut :

Lors de l'utilisation de ce mode par défaut, les sessions sont sauvegardées dans le répertoire /home/www/domain.com/var/session. Dans le cadre d'un système clusterisé il serait nécessaire de mutualiser ce répertoire.

Dans le cadre de l'utilisation de Magento sur un serveur en StandAlone, je vous conseil de stocker vos sessions (profitez-en pour vous occuper du cache) en RAM afin d'optimiser au mieux les accès.
Par exemple mon /etc/fstab avec 256Mo alloué pour le cache et 64Mo pour les sessions

tmpfs /home/www/domain.com/var/cache tmpfs size=256M 0 0
tmpfs /home/www/domain.com/var/session tmpfs size=64M 0 0

Attention en cas de redémarrage du serveur le cache et les sessions seront intégralement perdus, il conviendra donc de régénérer le cache depuis l'administration.

  1. Utilisation d'une base de données :

Il vous suffit de choisir l'option appropriée lors de l'étape 3 de l'assistant d'installation : Save session data in Database ou d'effectuer la modification suivante dans app/etc/local.xml.

<session_save><![CDATA[db]]></session_save>

Les sessions devraient à présent apparaître dans la table core_session.

  1. Utilisation de Memcached :

Voir le précèdent billet : Memcached et Magento

30mars 2009

Centralisation des sessions Magento en cluster

magento_logo.jpg
Après avoir effectué quelques recherches sur la centralisation des sessions Magento en cluster, 2 modes ont retenu mon attention.

Le premier mode avec une centralisation par base de données, et le second via un serveur Memcached.

Voici pour les développeurs la syntaxe à adopter pour l'utilisation d'un serveur Memcached via Magento :

<session_save><![CDATA[memcache]]></session_save>
 <session_save_path><![CDATA[tcp://XXX.XXX.XXX.XXX:11211?persistent=1&weight=2&timeout=10&retry_interval=10]]></session_save_path>
 <session_cache_limiter><![CDATA[]]></session_cache_limiter>
 <cache>
     <backend>memcached</backend>
     <memcached>
  <servers>
      <server>
   <host><![CDATA[XXX.XXX.XXX.XXX]]></host>
   <port><![CDATA[11211]]></port>
   <persistent><![CDATA[0]]></persistent>

Je ne suis pas du tout développeur donc si vous avez des améliorations, des conseils n'hésitez pas ;) Par ailleurs je rappel que Magento est une vraie usine à gaz et qu'il existe sur la toile une foule de conseils afin de l'optimiser.

Lien :

Session-cache-limiter