web-dev-qa-db-fra.com

En utilisant Drupal 7 avec APC, Varnish et Memcache, quels bacs mettre dans quel cache?

J'optimise un site Web Drupal 7 et j'ai du vernis, memcache et APC tous installés et travaillant avec leurs modules individuels Drupal 7. Dans mes settings.php J'ai le $conf options ci-dessous.

Ma question est d'obtenir de meilleures performances et que tous ces caches fonctionnent bien ensemble, dois-je ajouter plus d'options de configuration?

Les fichiers readme du module supposent généralement un système de cache unique. Y a-t-il des semaines nécessaires pour obtenir de meilleures performances en exécutant 3 backends de mise en cache distincts?

// Add Varnish as the page cache handler.
$conf['cache_backends'][] = 'sites/all/modules/varnish/varnish.cache.inc';
$conf['cache_class_cache_page'] = 'VarnishCache';
// Drupal 7 does not cache pages when we invoke hooks during bootstrap.
// This needs to be disabled.
$conf['page_cache_invoke_hooks'] = FALSE;

$conf['cache_backends'][] = 'sites/all/modules/apc/drupal_apc_cache.inc';
$conf['cache_class_cache'] = 'DrupalAPCCache';
$conf['cache_class_cache_bootstrap'] = 'DrupalAPCCache';
//$conf['apc_show_debug'] = TRUE;  // Remove the slashes to use debug mode.

$conf['cache_backends'][] = 'sites/all/modules/memcache/memcache.inc';
$conf['cache_default_class'] = 'MemCacheDrupal';
$conf['cache_class_cache_form'] = 'DrupalDatabaseCache';
12
user1073319

Ça me va.

Ce que vous pouvez essayer, c'est jouer avec les options de Memcache. Il y a par exemple un indicateur de compression mais cela dépend généralement du site s'il est logique de l'activer car vous avez alors une utilisation plus élevée du processeur pour effectuer la compression/décompression.

Je pense également que le drapeau page_cache_invoke_hooks n'est plus nécessaire, voir http://drupal.org/node/804864 . Si vous n'avez pas besoin de ces crochets pour fonctionner, vous pouvez le définir, mais il n'est plus nécessaire que Varnish fonctionne.

L'utilisation du cache APC avec plusieurs serveurs Web signifie que vous rencontrez des incohérences lors de la suppression des caches sur un serveur, donc si vous en avez plusieurs, vous souhaiterez probablement utiliser Memcache pour cache et cache_bootstrap également. J'ai également eu des problèmes de stabilité lors de l'utilisation du cache APC, mais je l'ai utilisé pour tous les caches, ce qui pourrait être le problème.

6
Berdir

J'exécute une configuration similaire avec les serveurs memcache et Varnish localement sur chaque serveur Web. Je pensais que la mise en cache de page localement avec Varnish ne serait pas aussi efficace que l'utilisation de memcache.

J'envisage d'utiliser MongoDB pour quelque chose car je le fais aussi fonctionner et c'est aussi une ressource partagée.

2
Jerry Sumpton