この記事では主に、PHP がキャッシュ実装方法としてメモリをどのように使用するか、Memcached キャッシュの使用状況を分析し、APC、EC、Zend アクセラレータの使用状況を比較する方法を紹介します。必要な友人は参考にしてください。
詳細は以下の通りです:
phpのキャッシュはメモリキャッシュ、ファイルキャッシュ、ページキャッシュなど多くの種類に分かれています。この記事では、php でのメモリ キャッシュのいくつかの方法について説明します。ここでは、Memcached キャッシュと、php.
1.Memcached キャッシュに付属する APC キャッシュ方法を紹介します。
memcached は、データベース クエリの結果をキャッシュし、動的 Web アプリケーションの速度を向上させるために、「Key=>Value」メソッドを使用してデータを整理する、高性能の分散メモリ キャッシュ サーバーです。これにより、ホスト上の複数のユーザーが同時にこのキャッシュ システムにアクセスできるようになります。通常、Memcached はデータをキャッシュするためにメモリを使用するため、サーバーが再起動されるか、memcached プロセスが終了すると、データが失われるため、memcached は使用できません。
php_memcache を使用したことがある人は誰でも、実際には、主に効率的で高速な分散メモリ オブジェクト キャッシュ システムであると考えるでしょう。 WEB 動的アプリケーションを高速化するために使用されます
ここでは、WIN32 での memcached の構成と使用法を紹介します
1. php_memcache.rar をダウンロードします
圧縮パッケージをダウンロードします。 rar
php_memcache.rar 圧縮パッケージ 含まれているファイルは次のとおりです:
/memcached-1.2.1-win32/memcached.exe
/php_memcache/php_memcache.dll
2. コマンド プロンプトを開き、memcached が保存されているパスを指定します。 .exe が見つかったので、memcached.exe -d start を実行します。
3. php_memcache.dll ファイルを PHP の動的ファイル ライブラリのフォルダーにコピーします。
4. php.ini ファイルに extension=php_memcache.dll という行を追加します。
5. Apache を再起動し、phpinfo を確認します。memcache がある場合は、インストールが成功したことを意味します。
例、コードは次のとおりです:
<?php //包含 memcached 类文件 require_once('memcached-client.php'); //选项设置 $options = array( 'servers' => array('www.jb51.net:11211'),//memcached 服务的地址、端口 'debug' => true,//是否打开debug 'compress_threshold' => 10240,//超过多少字节的数据时进行压缩 'persistant' => false//是否使用持久连接 ); //实例化memcached对象 $memcached = new memcached($options); $sql = 'SELECT * FROM table1'; $key = md5($sql); //如果在memcached中没有缓存数据,把缓存数据写入memcached if(!($datas = $memcached->get($key))) { $conn = mysql_connect('localhost', 'hxsd', '123456'); mysql_select_db('hxsd'); $result = mysql_query($sql); while($row = mysql_fetch_object($result)) { $datas[] = $row; } //将数据库中获取到的结果集数据保存到 memcached 中,以供下次访问时使用。 $memcached->add($key, $datas); } else { //直接使用memcached中的缓存数据$datas } ?>
APC、正式名称はAlternative PHP Cacheと呼ばれます「オプションのPHPキャッシュ」、ホームページはhttp://pecl.php.net/package/apc、PHPヘルプマニュアルページ:http://cn.php.net/apc
APCはオプティマイザです。インストールした日からバックグラウンドで静かに実行されます。PHP アプリケーションはすべて、php オペコードを対象としてキャッシュされます。
さらに、APC は特定のメモリ キャッシュ機能を提供します。 APC が頻繁に使用されると、キャッシュの書き込み関数が予期せぬエラーにつながるという報告があります。この関数を使用したい場合は、apc_fetch、apc_store、および APC キャッシュに関連するその他の関数を確認してください。 、コードは次のとおりです:
# pecl install APC
Configuration: /etc/ php.inc、コードは次のとおりです:
extension=apc.so
[apc]
apc.enabled = 1 apc.shm_segments = 1 apc.shm_size = 30 apc.optimization = 0 apc.ttl = 7200 apc.user_ttl = 7200 apc.num_files_hint = 1000 apc.mmap_file_mask = /tmp/apc.XXXXXX
PHP memcache アプリケーションの例プラットフォーム
以上がPHP がメモリをキャッシュとして使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。