1. Accueil
  2. Base de connaissances
  3. Hébergement Performance avec Magento

Hébergement Performance avec Magento

Magento est un des SGC pour commerce électronique les plus populaires. Moyennant quelques petites optimisations, il est capable de parfaitement gérer de petites et de grandes boutiques en ligne. Cet article vous aidera à préparer votre SGC à faire face à d’importantes quantités de trafic, sans faire de compromis au niveau de la vitesse.

La première partie de cet article vous montrera des techniques d’optimisation standards, applicables à n’importe quel hébergement, même si vous n’utilisez pas les options de mise en cache.

Ce n’est que lorsque vous aurez terminé l’optimisation générale que vous pourrez vous attaquer à la seconde partie de l’article, qui vous montre comment votre SGC peut tirer profit des outils de l’hébergement Performance.


Table des matières:


Hébergement Performance pour Magento

Cet article vous expliquera comment configurer votre Magento pour que ce dernier fonctionne avec votre compte d’hébergement Performance.

Si vous avez appliqué les [optimisations standards] et que vous ou vos clients avez besoin d’une configuration encore plus performance, les performances de Magento peuvent être optimisées de manière significative en implémentant une instance Redis avec mise en cache de pages entières.

Activer une instance Redis

Pour ce faire, vous devrez acheter/activer une instance Redis.

La taille de l’instance dépend du nombre de pages devant être mises en cache – nombre qui diffère d’un site à l’autre.

En général, une instance de 64 Mo ou 128 Mo suffit.

Installer et configurer Lesti_fpc avec modman

Compatibilité et préparation:
  • Lesti_fpc peut être utilisé avec Redis (key-value store).
  • Mais Ramdisk doit être supprimé (s’il a été utilisé).
  • Le répertoire www/[magento]/var/cache doit être vidé.

Modman:

Dans le back-end de Magento, allez dans:
System >> Configuration >> Advanced >> Developer >> Template Settings >> Allow symlinks





Install:

Revenez ensuite dans le terminal ou l’invite de commande en connexion avec le pack d’hébergement.
Assurez-vous que vous vous trouvez dans le bon répertoire, sans quoi vous risquez de créer de sérieux problèmes !

Vous devez exécuter les commandes depuis votre répertoire Magento ; dans le cas présent, Magento est installé à l’adresse www/magento/

cd ~/www/magento/
wget -q --no-check-certificate -O - https://raw.github.com/colinmollenhour/modman/master/modman-installer > modman.sh
chmod +x modman.sh
./modman.sh
Done. Modman installed in /data/sites/web/USER/bin/modman


Lancement:

~/bin/modman init
Initialized Module Manager at /data/sites/web/ninefortwoperformancecom/www/magento

Installer Lesti_fpc:

Saisissez les commandes suivantes dans votre terminal ou invite de commande:

~/bin/modman clone https://github.com/GordonLesti/Lesti_Fpc.git

CmCacheBackend_Redis:

Maintenant, installez CmCacheBackend_Redis

~/bin/modman clone https://github.com/colinmollenhour/Cm_Cache_Backend_Redis.git

Activer une instance Redis:

Après cela, activez une instance Redis via le My Combell

  • Nom: CECIESTLENOMDELINSTANCEREDIS
  • Taille: 256 Mo
  • Mot de passe: CECIESTLEMOTDEPASSEDEVOTREREDIS
  • Adresse IP: CECIESTLADRESSEIPDEVOTREREDIS

Créez/modifiez fpc.xml

Revenez à votre terminal. Créez/modifiez votre fichier fpc.xml comme indiqué ci-dessous. Personnalisez le contenu du fichier et enregistrez.

nano app/etc/fpc.xml

~~~~~~

86400 CmCacheBackendRedis

THISISYOUREDISIPADDRESS
THISISYOURREDISPORT 0 0
THISISYOURREDISPASSWORD 0
1
86400 10
1
1
gzip

LESTIFPC_ ~~~~~~

 

Attention: Vous devez personnaliser les détails et vous assurer que vous avez correctement saisi le serveur, le port et le mot de passe.

 


 

Testez ensuite la connexion au serveur Redis depuis la prison SSH. Redis-cli est maintenant disponible sur les prisons SSH mutualisées. Il est nécessaire de réinitialiser le SSH pour pouvoir les utiliser. Une fois que cela a été fait, vous pouvez utiliser Redis-cli:

 

redis-cli -h THISISYOUREDISIPADDRESS -p THISISYOURREDISPORT
250.250.250.0:10000> AUTH THISISYOURREDISPASSWORD
OK

 

 

Modifier local.xml

Nous allons ensuite modifier le fichier local.xml:

 

nano app/etc/local.xml

 

Et entre les tags du cache, là où vous aurez généralement l’APC, collez le code suivant (Une fois de plus, faites attention à l’IP du serveur, au port et au mot de passe)

 

<cache>
<backend>Cm_Cache_Backend_Redis</backend>
<backend_options>
<server>THISISYOUREDISIPADDRESS</server>
<port>THISISYOURREDISPORT</port>
<database>0</database>
<password>THISISYOURREDISPASSWORD</password>
<force_standalone>0</force_standalone> <!-- 0 for phpredis, 1 for standalone PHP -->
<connect_retries>1</connect_retries> <!-- Reduces errors due to random connection failures -->
<automatic_cleaning_factor>0</automatic_cleaning_factor> <!-- Disabled by default -->
<compress_data>1</compress_data> <!-- 0-9 for compression level, recommended: 0 or 1 -->
<compress_tags>1</compress_tags> <!-- 0-9 for compression level, recommended: 0 or 1 -->
<compress_threshold>20480</compress_threshold> <!-- Strings below this size will not be compressed -->
<compression_lib>gzip</compression_lib> <!-- Supports gzip, lzf and snappy -->
<persistent>0</persistent> <!-- persistence value, 0: not in use, > 0 used as persistence ID -->
</backend_options>
</cache>



Modifier Cm_RedisSession.xml

Activez ensuite Cm_RedisSession.xml

nano app/etc/modules/Cm_RedisSession.xml

Changez False en True:

<active>true</active>



Maintenant que tout ceci a été configuré, vous devez revenir dans le back-end de Magento et apporter quelques modifications supplémentaires au cache.

Activer le cache de pages entières Fpc

Dans le back-end de Magento, allez dans Système >> Gestion du cache

 Fpc Full Page Cache => Activer

 Tous les autres caches => Laissez-les activés

Résolution des problèmes





Résolution des problèmes

Si vous ne voyez pas le cache de pages entières FPC dans la liste, cela signifie que vous êtes toujours en train d’utiliser le cache.

Celui-ci peut être vidé en vidant le répertoire du cache:

cd var/cache/

rm -rf *

Si vous ne voyez toujours pas le cache de pages entières FPC dans la liste, cela signifie qu’il y a un problème au niveau de l’installation de vos modules via modman.

cd ~/www/magento/
~/bin/modman list
Cm_Cache_Backend_Redis
Lesti_Fpc

Si vous ne voyez pas ‘CmCacheBackendRedis’ et ‘LestiFpc’ dans la liste ici, cela signifie que vous n’avez pas correctement installé les modules.

Testez si votre Redis fonctionne avec votre SGC; vous devriez pouvoir lister les clés de Redis en exécutant les commandes suivantes, l’une après l’autre. Prenez soin de bien vérifier l’hôte, le port et le mot de passe:

redis-cli -h THISISYOUREDISIPADDRESS -p THISISYOURREDISPORT
250.250.250.0:10000> AUTH THISISYOURREDISPASSWORD
OK
keys *

Si vous ne voyez aucune clé, cela signifie que la configuration ne fonctionne pas correctement.

Faire un warm-up du cache.

Installer n98

Si Redis est implémenté correctement, nous pouvons maintenant faire un warm-up du cache.

Pour ce faire, il faut installer n98

cd /site/bin
git clone https://github.com/netz98/n98-magerun
cd n98-magerun
curl -s https://getcomposer.org/installer | php
php -f ./composer.phar -- install
cd ~/www/magento/


Activer n98

Et après que n98 ait été installé, il faut l’activer.

Attention: veillez à faire cela depuis le répertoire Magento

/site/bin/n98-magerun/n98-magerun.phar sys:url:list --add-products --add-categories 1 > /site/tmp/crawl.txt

Attention : La valeur ‘1’ peut parfois être égale à ‘0’ ou ‘2’ ou ‘3’ ou un chiffre plus élevé. Cela dépend de la configuration du client.

for i in `cat /site/tmp/crawl.txt`; do wget -q $i; done


Le cache fera ainsi un warm-up. Vous verrez cela en ouvrant un autre shell pour exécuter la commande ‘ps aux’. Vous verrez ainsi chaque processus wget.

Lorsque les processus arrêtent d’apparaître, cela signifie qu’il est prêt.

Vérifiez les clés dans Redis – leur nombre a augmenté.

Mis à jour le 17 février 2020

Cet article a-t-il été utile ?

Besoin de soutien?
Vous ne trouvez pas la réponse que vous cherchez ? Ne vous inquiétez pas, nous sommes là pour vous aider !
Contactez le support

Avez-vous trouvé une solution ?

support_bottom_contact_alt

Nos spécialistes sont prêts à vous fournir une assistance gratuite 24 h/24 et 7 j/7. N’hésitez pas à contacter Joachim et ses collègues via e-mail ou téléphone.

support_bottom_contact_alt
Joachim Coessens Assistance fournie par des spécialistes