Maison > Article > développement back-end > Étapes de mise en œuvre pour l'optimisation du cache PHP à l'aide de memcached et xcache
Nous savons qu'eaccelerator est un accélérateur PHP gratuit et open source qui optimise et met en cache le contenu dynamique. Il peut améliorer les performances de mise en cache des scripts PHP et optimiser les scripts, de sorte que l'efficacité de l'exécution du code de votre programme PHP puisse être améliorée de 1 à 10 fois, aujourd'hui, je vais vous apprendre à optimiser le cache en PHP.
2. Principe de mise en cache
Lorsqu'un utilisateur demande un programme PHP, le moteur PHP analysera le programme et le compilera dans un code d'opération spécifique (opcode), qui est un exécutable. code au format binaire. Cet opcode est ensuite exécuté par le moteur PHP et supprimé. Le cache d'opcode enregistrera cet opcode compilé et le réutilisera lors du prochain appel de la page, économisant ainsi beaucoup de temps sur les compilations répétées, économisant des ressources et optimisant les performances.
3. Installez eaccélérateur
Ajustez le jeu de caractères
#echo 'LC_ALL=C' >> /etc/profile#source /etc/profile [root@~]#tar jxf eaccelerator-0.9.6.tar.bz2[root@~]#cd eaccelerator-0.9.6 [root@~]#/usr/local/php/bin/phpize phpize是用来扩展php模块的,通过phpize可以建立php的外挂模块[root@~]#./configure --enable-eaccelerator=shared \ --with-php-config=/usr/local/php-5.3.27/bin/php-config[root@~]#make && make install [root@~]# ls /usr/local/php-5.3.27/lib/php/extensions/no-debug-zts-20090626/eaccelerator.so
4. Configurez PHP pour charger eaccélérateur
Créez un répertoire de cache.
mkdir /tmp/eaccelerator #Le répertoire peut être stocké en utilisant la mémoire tmpfs le système de fichiers , le disque SSD
chown -R www.www /tmp/eaccelerator
Ajoutez le contenu suivant dans php.ini :
eaccelerator cache config by Zhang DeJin 2017-12-1 [eaccelerator] extension = eaccelerator.so eaccelerator.shm_size="64" eaccelerator.cache_dir="/tmp/eaccelerator" eaccelerator.enable="1" eaccelerator.optimizer="1" eaccelerator.chech_mtime="1" eaccelerator.debug="0" eaccelerator.filter="" eaccelerator.shm_max="0" eaccelerator.shm_ttl="3600" eaccelerator.shm_prune_perid="3600" eaccelerator.shm_only="0" eaccelerator.compress="1" eaccelerator.compress_level="9" --End config 测试:[root@lnmp nginx]# /usr/local/php-5.3.27/bin/php -v PHP 5.3.27 (cli) (built: Nov 30 2017 05:35:00) Copyright (c) 1997-2013 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2013 Zend Technologies with eAccelerator v0.9.6, Copyright (c) 2004-2010 eAccelerator, by eAccelerat
Configuration terminée
Redémarrez httpd ou php-fpm pour prendre effet
5. Sélection de la version
php5.3. xx disponible eaccelerator- Version 0.9.6
php5.2.xx disponible eaccelerator-0.9.5.2 version
2) Xcache
1 Introduction
XCache est un outil rapide et cache d'opcode PHP stable. Bien testé et stable sur les machines de production à trafic élevé et à charge élevée. Testé (sous Linux) et prend en charge les dernières versions de toutes les branches PHP actuelles, telles que PHP_4_3 PHP_4_4 PHP_5_0 PHP_5_1 PHP_5_2 HEAD(6 .x) et. prend en charge la sécurité des threads/Windows. Par rapport aux caches d'opcodes similaires, il est supérieur, par exemple en étant capable de suivre rapidement les versions PHP. Le projet XCache est dirigé par mOo, qui est également l'un des membres de développement de Lighttpd. L'une des applications de serveur Web, et surpasse Apache et de nombreux autres serveurs Web, XCache s'efforce d'obtenir des résultats similaires 2. Installez
tar jxf xcache-1.3.2.tar.bz2cd xcache-1.3.2/usr/local/php-5.3.27/bin/phpize./configure --enable-xcache --with-php-config=/usr/local/php-5.3.27/bin/php-configmake && make install ls /usr/local/php-5.3.27/lib/php/extensions/no-debug-zts-20090626/
3. Configurez PHP pour charger xcache
Ajouter des remarquescd /usr/local/php/lib/.
Modifiez xcache-1.3.2/xcache.ini, vous pouvez utiliser la commande sed pour modifier
echo >> php.ini echo "xcache config by ZhangDejin 2017-12-1"
zend_extension = /usr/local/lib/php/extensions/non-debug-non-zts-xxx/xcache.so
zend_extension_ts = c:/php/extensions/php_xcache.dll
;extension = xcache.so
Test
cat /home/king/xcache-1.3.2/xcache.ini >> php.ini
Redémarrez httpd ou php-fpm pour prendre effet
/usr/local/php-5.3.27/bin/php -v PHP 5.3.27 (cli) (built: Nov 29 2017 18:03:24) Copyright (c) 1997-2013 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2013 Zend Technologies with XCache v1.3.2, Copyright (c) 2005-2011, by mOo
1 Introduction
Memcache est un objet de mémoire distribuée hautes performances
système de mise en cache, qui est utilisé dans. mémoire Une énorme table de hachage unifiée y est conservée, qui peut être utilisée pour stocker des données dans divers formats, y compris des images, des fichiers vidéo et des résultats de récupération de base de données. En termes simples, les données sont appelées dans la mémoire puis lues dans la mémoire. améliorant considérablement la vitesse de lecture
L'extension PDO définit une interface légère et cohérente permettant à PHP d'accéder à la base de données. Elle fournit une couche d'abstraction d'accès aux données afin que, quelle que soit la base de données utilisée, exécutez des requêtes pour obtenir des données via des données cohérentes. fonctions ImageMagick est un ensemble d'ensembles de travail et de kits de développement puissants, stables et gratuits qui peuvent redimensionner, faire pivoter, affiner et réduire les types d'images dans plus de 89 formats de traitement des couleurs et autres, son objectif principal étant désormais. sur les performances, réduisant les bugs et fournissant une API et un ABI stables
2 Install
Afficher les paramètres de compilation nginxnginx - V
Afficher les paramètres de compilation httpdtar zxf memcache-2.2.5.tgzcd memcache-2.2.5/usr/local/php-5.3.27/bin/phpize./configure --with-php-config=/usr/local/php-5.3.27/bin/php-configmake && make installln /usr/local/php-5.3.27/lib/php/extensions/no-debug-zts-20090626/ls /usr/local/php-5.3.27/lib/php/extensions/no-debug-zts-20090626/ 安装PDO_MYSQL tar zxf PDO_MYSQL-1.0.2.tgzcd PDO_MYSQL-1.0.2/usr/local/php-5.3.27/bin/phpize./configure --with-php-config=/usr/local/php-5.3.27/bin/php-config --with-pdo-mysql=/usr/local/mysql/make && make installls /usr/local/php-5.3.27/lib/php/extensions/no-debug-non-zts-2009062 yum install perl-devel -ytar zxf ImageMagick.tar.gzcd ImageMagick-6.5.1-2/./configuremake && make install安装imagicktar zxf imagick-2.3.0.tgzcd imagick-2.3.0/usr/local/php-5.3.27/bin/phpize./configure --with-php-config=/usr/local/php-5.3.27/bin/php-configmake && make installls /usr/local/php-5.3.27/lib/php/extensions/no-debug-zts-20090626/配置PHP加载pdo_mysql,memcache,imagick等模块修改extension_dir = "./"为extension_dir = "/usr/local/php-5.3.27/lib/php/extensions/no-debug-zts-20090626/"添加这几个模块;--cache ext start by Zhang Dejin 2017-12-1extension = memcache.soextension = pdo_mysql.soextension = imagick.so;End config:cat. httpd/build/config.nice
Afficher les paramètres de compilation mysql
grep "CONFIGURE_LINE" mysql/bin/mysqlbug
Paramètres de compilation php
php/bin /php -i|grep configure
Complet
Lecture connexe :
Valeurs booléennes, opérateurs relationnels en JS, Explication détaillée et exemples d'opérateurs logiques
Résumé du framework front-end js et explication de ses utilisations
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!