advancedcache

Magento – Une boutique plus rapide avec Soon_AdvancedCache

Sommaire

Magento - Ajouter des blocs en cache

Je passe à la télé !

Votre boutique Magento rencontre le succès tant attendu, félicitations ! Un succès tel que les médias se bousculent pour vous interviewer et raconter votre histoire à leurs auditoires. A chaque parution dans la presse ou sujet télévisé relatant votre success-story, le trafic sur votre boutique explose… et le temps de chargement de ses pages avec. La lenteur devient si perturbante que de nombreux internautes attristés quittent votre site sans passer commande.

Ce sensible ralentissement de votre boutique est dûe au système de mise en cache de Magento malheureusement incomplet (souvent inadapté aux pointes de trafics). En effet, sur Magento, la mise en cache des éléments constitutifs d’une page (les blocs ou « blocks ») est très partielle et la grande majorité est regénérée à chaque consultation ce qui ralentit le site.

Soon_AdvancedCache complète le cache Magento

Le module Soon_AdvancedCache permet de mettre en cache, automatiquement et à la demande (voir Guide Utilisateur), de nombreux blocs en complément de ceux ajoutés nativement par Magento. Par exemple : lors de l’affichage d’une page catégorie, le listing des produits est ajouté au cache par Soon_AdvancedCache. Ainsi, tout internaute visualisant le même listing produits recevra directement le code HTML prégénéré et issu du cache plutôt que le résultat d’opérations PHP et MySQL gourmandes en ressouces.

Eléments mis en cache par Soon_AdvancedCache

Soon_AdvancedCache est livré avec la mise en cache automatique d’une sélection de blocs communs à toutes les boutiques Magento.

  • Page d’accueil (mis en cache du contenu et des mises à jour d’agencement)
  • Pages CMS
  • Blocs CMS
  • Fil d’ariane
  • Page catégorie et listings produits (y compris résultats de recherche)
  • Navigation par filtre
  • Fiche produit
  • Tags populaires

De plus, moyennant quelques configurations et rapides développements spécifiques, Soon_AdvancedCache saura s’adapter à votre projet et gérer le cache de blocs qui lui sont propres grâce à une interface ergonomique dans l’admin.

Fonctionnalités complémentaires

    • Possibilité de créer des exceptions (exclure certaines pages CMS du cache)
    • Intégration de Symlink Cache En savoir plus…

Informations techniques

      • Module basé sur le système natif de cache Magento / Zend Framework
      • Sans surcharge (rewrite)
      • Sans modification des tables « core » en BDD
      • Bien que l’effet de Soon_AdvancedCache soit visible sur votre boutique Magento sans configuration spécifique, des compétences en développement Magento restent obligatoires afin d’utiliser cet outil à son meilleur potentiel et d’en adapter le fonctionnement à votre projet. Voir Guide Utilisateur.

Copies d’écran

Configuration système

Configuration Soon_AdvancedCache

Caches de blocs propres à un projet

Blocs complémentaires mis en cache

Téléchargements

Télécharger l'archive du module Archive tar.gz
Installer via Magento Connect Installer via Magento Connect
Guide utilisateur du module Guide utilisateur

Ce module a besoin de Soon_All pour fonctionner. Si après rafraîchissement du cache l’onglet « Soon » n’apparaît pas dans dans votre configuration système merci d’installer Soon_All.

Cache, Magento, Module Magento, Optimisation
  • Jerome dit :

    Bonjour

    J’utilise déjà symlink cache avec APC, si j’utilise votre module, je devrais désactiver et enlever symlink cache pour éviter les conflits ?

    Votre module est en version stable ?

    Cordialement

    • Hervé dit :

      Bonjour,

      A nos yeux, le module est stable car nous l’utilisons depuis près d’un an maintenant sur presque tous nos projets et nous n’avons constaté aucun bug.

      Quant à votre question au sujet de Symlink, je ne suis pas en mesure de vous répondre car nous n’avons jamais utilisé Symlink autrement qu’avec Soon_AdvancedCache. Cependant, je pense qu’il n’y aura pas de conflit car Symlink est intégré à Soon_AdvancedCache et fonctionne indépendamment du module original. Cependant, je ne peux apporter de garantie. Peut-être que Symlink sera donc appelé 2 fois et qu’il créera donc des liens symbolliques 2 fois…

      Nous vous laissons donc le soin de partager ici vos retours si d’aventure vous essayez Soon_AdvancedCache !

      Merci.

  • [...] Le module Soon_AdvancedCache doit être installé (voir Une boutique plus rapide avec Soon_AdvancedCache [...]

  • Julie dit :

    Bonjour

    Lors de l’installation avec Magento Connect ça me donne cette erreur :
    « Exception during cache and session cleaning: Error in file: « /var/www/clients/client1/web1/web/_test/app/code/community/Soon/AdvancedCache/sql/advancedcache_setup/mysql4-install-0.9.4.php » – SQLSTATE[42S01]: Base table or view already exists: 1050 Table ‘advancedcache_config’ already exists »
    Et du coup j’ai une erreur 503 sur mon front et mon back-office..
    La désinstallation ne change rien….
    Comment y remédier svp ??

    Merci d’avance

    • Hervé dit :

      Bonjour,

      Ceci est un bug « normal » car vous avez certainement tenté d’installer le module plusieurs fois. Nous avons pris le parti de ne pas supprimer les tables du module si celui-ci était réinstallé pour ne pas perdre les données qui auraient été associées au module (ex : ne pas perdre vos blocs mis en cache).

      Il faut donc, dans votre cas, en effet supprimer les tables du module et faire croire à Magento qu’il n’a jamais été installé !

      Pour ce faire :

      1) Logout du back-office

      2) Lancer les lignes suivantes dans votre phpmyadmin :

      DROP TABLE `advancedcache_blocks`, `advancedcache_config`, `advancedcache_exception`;
      DELETE FROM `core_resource` WHERE `core_resource`.`code` = ‘advancedcache_setup’;

      3) Login back-office

      4) Purger le stockage du cache

      Et çà devrait marcher !

  • Julie dit :

    Re bonjour

    Merci de votre réponse rapide. Cependant, en supprimant les bases et en réinstallant le module via Magento conect j’ai toujours la même erreur…

    Pour info j’ai préfixer mes tables. Et lorsque je tente de lancer ce code :
    « DELETE FROM `ma_core_resource` WHERE `ma_core_resource`.`code` = ‘advancedcache_setup’ » il m’indique que ça n’existe pas.

    Je suis en version 1.6.1.0 et mes cache sont désactivé. J’espère que vous pourrez m’aider, votre module à l’air d’être super !
    Merci d’avance.

    • Hervé dit :

      Oui, ce module est super :)

      Le problème que vous recontrez est en effet un bug du module qui ne prend pas en compte le prefixage des tables lors de son installation. Nous avons prévu de le corriger et comptons sur votre patience car nous sommes ici dans le cadre d’un module gratuit communautaire…

      Sa résolution reste cependant très simple (normallement !) :

      1) Assurez vous tout d’abord que :
      a) Les tables advancedcache_blocks, advancedcache_config et advancedcache_exception (avec ou sans prefix) sont bien effacées de votre BDD

      b) dans la table core_resource (apparemment ma_core_resource dans votre cas), l’entrée dont le champ « code » vaut « advancedcache_setup » n’est pas présente

      c) les fichiers de l’extension ont bien été supprimés de votre serveur sinon Magento Connect fera des erreurs « File already exists »

      2) Réinstaller Soon_AdvancedCache via Magento Connect

      3) Renommer, à la main, les tables nouvellement créées advancedcache_blocks, advancedcache_config et advancedcache_exception en y ajoutant votre préfixe. Apparemment ma_advancedcache_blocks, ma_advancedcache_config et ma_advancedcache_exception

      4) Purger le cache

      Et là, çà devrait fonctionner.

      [EDIT] Un utilisateur a eu le même problème que vous et a réussi à l’installer avec succès grâce à cette méthode. Voir les « reviews » de « Angel-1973″ sur la page Magento Connect du module.

  • Julie dit :

    Re bonjour

    J’ai finalement réussi à l’installer mais à la main vu que mes tables sont préfixée. J’espère que vous pourrez modifier cette partie pour une version prochaine ^^

    J’avais au préalable installée votre module Soon_All.

    Merci encore pour votre réponse rapide.
    Cdlt
    Julie

  • Jean-Pierre dit :

    Bonjour
    Pouvez-vous me confirmer le fonctionnement de votre module sur une Magento 1.6.2.0
    Tout semble bien s’installer par « Magento Connect », mias je n’ai pas l’onglet du cache avancé (icone)

    Je précise que le magento en question est « natif » pack de traduction FR, pas de théme autre que celui par defaut

    Cordialement
    JPR

    • Hervé dit :

      Bonjour,

      Nous avons en effet détecté 2 petits bugs sur le module.
      Nous avons effectué les modifications et retesté son installation sur des fresh installs de Magento 1.4, 1.6.0.0 et 1.6.2.0. Celle-ci s’est déroulée avec succès.
      Pour utiliser Soon_AdvancedCache :
      - le désinstaller complètement (y compris en base de données + les fichiers)
      - le réinstaller via Magento Connect

      Merci de vous réferrer aux autres commentaires afin d’avoir plus d’informations sur la marche à suivre pour désinstaller complètement le module.

  • Jean-Pierre dit :

    Je confime que cela fonctionne maintenant
    Merci pour votre aide

    Cordialement
    JPR

  • Hervé dit :

    Merci pour votre retour et heureux de vous compter parmi les utilisateurs de Soon_AdvancedCache !

  • STANISLAS dit :

    Bonjour et félicitations pour votre module. NOus la testons en dév actuellement et voici 2 petits bug :
    -> Le module contient dans les installer des noms de tables mysql en dur, nous on uitilise un prefixe -> crac! utilisez la méthode getTable de Magento
    -> Les clés de cache ne semblent pas tenir compte du User-Agent, donc le même cache est généré pour la version Full et la version Mobile.

    J’essaierai de vous envoyer les corrections en début de semaine, si vous ne les avez pas faites avant ;)

    Encore merci pour le boulot !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>