Heim > Artikel > Backend-Entwicklung > Implementierungsschritte für die PHP-Cache-Optimierung mit memcached und xcache
Wir wissen, dass eaccelerator ein kostenloser und Open-Source-PHP-Beschleuniger ist, der dynamische Inhalte optimiert und zwischenspeichert. Er kann die Skript-Caching-Leistung von PHP verbessern und Skripte optimieren, sodass die Effizienz der Ausführung Ihres PHP-Programmcodes um das 1- bis 10-fache gesteigert werden kann. Heute werde ich Ihnen beibringen, wie Sie das Caching in PHP optimieren.
2. Caching-Prinzip
Wenn ein Benutzer ein PHP-Programm anfordert, analysiert die PHP-Engine das Programm und kompiliert es in einen bestimmten Operationscode (Opcode), der eine ausführbare Datei ist Code im Binärformat. Dieser Opcode wird dann von der PHP-Engine ausgeführt und verworfen. Der Opcode-Cache speichert diesen kompilierten Opcode und verwendet ihn beim nächsten Aufruf der Seite wieder. Dadurch wird beim wiederholten Kompilieren viel Zeit gespart, Ressourcen gespart und die Leistung optimiert.
3. Eaccelerator installieren
#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.so4. PHP zum Laden von Eaccelerator konfigurieren Cache-Verzeichnis erstellen mkdir /tmp/eaccelerator #Das Verzeichnis kann im tmpfs-Speicher gespeichert werden
Dateisystem , SSD-Solid-State-Laufwerk
chown -R www.www /tmp/eacceleratorFügen Sie den folgenden Inhalt in php.ini hinzu :
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 eAcceleratKonfiguration abgeschlossenStarten Sie httpd oder php-fpm neu, damit es wirksam wird5. Versionsauswahlphp5.3. xx verfügbare Eaccelerator-Version 0.9.6
php5.2.xx verfügbare Eaccelerator-0.9.5.2-Version
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. Konfigurieren Sie PHP zum Laden von xcache
cd /usr/local/php/lib/
Ändern Sie xcache-1.3.2/xcache.ini. Sie können den Befehl sed verwenden, um
Kommentieren Sie die dritte Zeile
echo >> php.ini echo "xcache config by ZhangDejin 2017-12-1"
Kommentieren Sie die sechste Zeile
zend_extension = /usr/local/lib/php/extensions/non-debug-non-zts-xxx/xcache.so
Aktivieren Sie die achte Zeile
zend_extension_ts = c:/php/extensions/php_xcache.dll
Die restlichen Parameter basieren auf der Serverkonfiguration
und dann zu php.ini hinzufügen
;extension = xcache.so
Testen
cat /home/king/xcache-1.3.2/xcache.ini >> php.ini
HTTPD oder PHP-FPM neu starten, damit es wirksam wird
3) Memcache-Client, PDO_mysql, Imagick-Erweiterungsbibliothek
/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 mOo1. EinführungMemcache ist ein leistungsstarkes verteiltes Speicherobjekt
Caching-System
, das in verwendet wird Speicher Darin wird eine einheitliche riesige Hash-Tabelle verwaltet, die zum Speichern von Daten in verschiedenen Formaten, einschließlich Bildern, Videodateien und Datenbankabrufergebnissen, verwendet werden kann. Einfach ausgedrückt, werden die Daten in den Speicher aufgerufen und dann aus dem Speicher gelesen Erhebliche Verbesserung der LesegeschwindigkeitDie PDO-Erweiterung definiert eine leichte, konsistente Schnittstelle für den Zugriff auf die Datenbank durch PHP. Sie bietet eine Abstraktionsschicht für den Datenzugriff, sodass Abfragen unabhängig von der verwendeten Datenbank konsistent ausgeführt werden können Funktionen 2. InstallierenNginx-Kompilierungsparameter anzeigen
nginx - Vhttpd-Kompilierungsparameter anzeigen
cat httpd/build/config.nicetar 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:MySQL-Kompilierungsparameter anzeigen
grep "CONFIGURE_LINE" mysql/bin/mysqlbug
PHP-Kompilierungsparameter
php/bin /php -i|grep configure
Abschließen
Ich glaube, dass Sie die Methode beherrschen, nachdem Sie diese Fälle gelesen haben. Für weitere spannende Informationen achten Sie bitte auf andere verwandte Themen auf der chinesischen PHP-Website!
Verwandte Lektüre:
Antworten auf Fragen zur Kamelfallbenennung und JS
Zusammenfassung des Front-End-JS-Frameworks und Erläuterung seiner Verwendung
Das obige ist der detaillierte Inhalt vonImplementierungsschritte für die PHP-Cache-Optimierung mit memcached und xcache. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!