APC -> APCu / OPCache, les performances des

J'ai un m3.xlarge instance EC2 que j'ai mis à jour à PHP 5.5.11 aujourd'hui.

Avec cette mise à jour, il a remplacé php55-pecl-apc avec php55-pecl-apcu.

Après la lecture et à l'expérimentation, ma compréhension est que APC a été remplacé par OPCache, sauf pour une valeur de clé de magasin qui peut être ramené à APCu.

Après peaufiner ma config pour quelque chose qui semble raisonnable, en utilisant WordPress alors que vous êtes connecté en est maintenant terriblement lent, à moins de 300 900ms pire (le front-end est mise en cache par le vernis, et fonctionne parfaitement... mais quand vous êtes à l'aide de l'admin, c'est volontairement pas mis en cache, et lente, comme le péché).

J'ai fait une série de critères, comme je l'ai mis à niveau, sur une petite taille de l'échantillon pour chaque étape. Il a dégradé le pire et pour le pire que je suis allé sur.

  • APC (avant la mise à niveau) -->
  • OPCache + pas de APCu -->
  • OPCache + APCu + Plugin WP pour APCu

Maintenant je suis en sortir avec OPCache, et pas de APCu.

  1. Comment puis-je obtenir la même performance? J'ai aimé l'interface d'admin, j'ai aimé la façon rapide, il a été. Honnêtement, je ne vois pas en quoi c'est une amélioration à tous, c'est assez déprimant vraiment... à moins qu'il y est un super-bibliothèque que je ne suis pas au courant. Ce n'est certainement pas ce que j'ai, même si, ou peut-être qu'il n'est pas bien configuré.
  2. En supposant que la réponse à la n ° 1 est "vous avez configurées comme des balles", alors auriez-vous l'esprit de prendre un coup d'oeil à tout ça et voir si c'est raisonnable?

Pour ma configuration, je suis en utilisant les dernières wordpress, quelques grandes plugins, mais je ne peux pas les prendre parce qu'ils sont importants. Heureusement, le vernis prend soin de la plupart des travaux. J'ai 4 coeurs, 16 go de mémoire, ~10k fichiers dans mon site web racine. Je n'ai aucun vrai hardcore apps ou autre chose que wordpress, c'est un assez vanille de l'installation. Je pense que c'est pour des trucs qui pourraient vous aider.

Config:

zend_extension=opcache.so
opcache.enable=1
opcache.enable_cli=0
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.max_wasted_percentage=5
opcache.use_cwd=1
opcache.validate_timestamps=1
opcache.revalidate_freq=0
opcache.revalidate_path=0
opcache.save_comments=0
opcache.load_comments=0
opcache.fast_shutdown=1
opcache.enable_file_override=0
opcache.optimization_level=0xffffffff
opcache.inherited_hack=1
opcache.dups_fix=0
opcache.blacklist_filename=/etc/php-5.5.d/opcache*.blacklist
opcache.max_file_size=2M
opcache.consistency_checks=1
opcache.force_restart_timeout=180
opcache.error_log=/var/log/php-fpm/5.5/opcache.log
opcache.log_verbosity_level=1
opcache.preferred_memory_model=
opcache.protect_memory=0
  • Êtes-vous bien sûr que OPCache est en effet chargé et activé ? Créer un fichier testopcache.php avec <?php var_dump(opcache_get_status()); ?> l'intérieur et à l'essayer pour y accéder, il devrait vous dire si OPCache est de travail. Aussi, essayez d'augmenter opcache.max_file_size à 5M ou même plus.
  • J'ai augmenté à 10M. C'est certainement en cours d'exécution, je vois un immense dépotoir.
  • Pouvez-vous sauvegarder votre installation actuelle et essayez de supprimer ces few large plugins et voir si cela change quelque chose ?
  • J'ai besoin de voir comment APCu a été configuré par la personne qui a emballé, trouver pour moi, la ligne de configuration de la src tr / min/pkg/etc ...
InformationsquelleAutor Tallboy | 2014-04-30