ホームページ >バックエンド開発 >PHPチュートリアル >memcached と xcache を使用した PHP キャッシュ最適化の実装手順

memcached と xcache を使用した PHP キャッシュ最適化の実装手順

php中世界最好的语言
php中世界最好的语言オリジナル
2017-12-05 09:36:521940ブラウズ

eaccelerator は、動的コンテンツを最適化してキャッシュする無料のオープンソース PHP アクセラレーターであり、PHP のスクリプト キャッシュのパフォーマンスを向上させ、スクリプトを最適化できるため、PHP プログラム コードの実行効率が 1 ~ 10 倍向上することがわかっています。 PHP でキャッシュを最適化する方法を説明します。

2. キャッシュ原理

ユーザーが PHP プログラムをリクエストすると、PHP エンジンはプログラムを解析し、バイナリ形式の実行可能コードである特定のオペコード (オペコード) にコンパイルします。このオペコードは PHP エンジンによって実行され、破棄されます。オペコード キャッシュは、このコンパイルされたオペコードを保存し、次回ページが呼び出されたときに再利用します。これにより、繰り返しのコンパイルにかかる時間を大幅に節約し、リソースを節約し、パフォーマンスを最適化します。
3. eaccelerator をインストールする

文字セットを調整する
4. eaccelerator をロードするように PHP を設定する

キャッシュ ディレクトリを作成する

mkdir /tmp/eaccelerator #ディレクトリは tmpfs メモリ

ファイル システム

を使用して保存できますソリッド ステート ハードディスク

#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
php.ini に次の内容を追加します:

chown -R www.www /tmp/eaccelerator

設定が完了しました

有効にするために httpd または php-fpm を再起動します

5. バージョンの選択

php5.3.xx が利用可能 eaccelerator-0.9 .6 バージョン

php5 .2.xx が利用可能 eaccelerator-0.9.5.2 バージョン


2)Xcache

1 はじめに

XCache は、十分にテストされ、高トラフィック/高負荷の実稼働マシンで使用されます。 (Linux 上で) 動作がテストされ、PHP_4_3 PHP_4_4 PHP_5_0 PHP_5_1 PHP_5_2 HEAD(6.x) などの現在のすべての PHP ブランチの最新リリースをサポートし、同様のオペコード キャッシュよりも優れたパフォーマンスをサポートします。 XCache プロジェクトは、Lighttpd の開発チームのメンバーでもある mOo によって主導されており、Lighttpd は最も高速な Web サーバー アプリケーションの 1 つであり、Apache や他の多くの XCache を超えることを目指しています。効果。 2.

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
をインストールします

3. xcache をロードするように PHP を設定します

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/

xcache-1.3.2/xcache.ini を変更します。

3 行目をコメントします。

cd /usr/local/php/lib/

コメント6行目にコメントする8番目の行は、サーバーの構成に従って残りのパラメーターをaddjustにaddjustphp.ini


rreee

test


rreee
restartに追加しますhttpd または php-fpm 効果的

3) memcache クライアント、PDO_mysql、imagick 拡張ライブラリ

1. はじめに

Memcache は、メモリ内に統合された巨大なハッシュ テーブルを維持することにより、高性能の分散メモリ オブジェクト
キャッシング システム
画像、ビデオファイル、データベースの検索結果など、さまざまな形式でデータを保存するために使用できます。簡単に言うと、データをメモリに呼び出し、メモリから読み取ることで、読み取り速度が大幅に向上します。 PHP がデータベースにアクセスするための軽量で一貫したインターフェイスを定義します。これにより、データ アクセス抽象化レイヤーが提供されるため、どのデータベースが使用されているかに関係なく、クエリを実行して一貫した関数を通じてデータを取得できます

ImageMagick は、強力で安定した一連の無料のワーキング セットと開発パッケージを使用して、89 を超える形式でサイズ変更、回転、シャープ化、色削減などを行うことができ、現在はパフォーマンス、バグの削減、および ABI


2 のインストールに重点が置かれています。

echo >> php.ini
echo "xcache config by ZhangDejin 2017-12-1"

nginxコンパイルパラメータを表示

nginx -V

httpdコンパイルパラメータを表示

cat httpd/build/config.nice

mysqlコンパイルパラメータを表示

grep "CONFIGURE_LINE" mysql/bin/mysqlbug

phpコンパイルパラメータ

php/bin/php -i|grep configurecomplete

これらの事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。

関連書籍:



キャメルケースの名前付けと JS に関する質問への回答




JS のブール値、関係演算子、論理演算子の詳細な説明と例


フロントエンド JS の概要フレームワークとその使用法の説明

以上がmemcached と xcache を使用した PHP キャッシュ最適化の実装手順の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。