データベースクエリの結果セットは、通常、memcached に保存されます (なぜここでキャッシュが使用されるかについては、自分でキーワード「キャッシュ」を検索できます)
次回アクセスしたときに memcached から直接取得します。
データベースは不要ですクエリ操作
これにより、データベースへの負担が大幅に軽減されます。
*************************
* 簡単なデモ1 *
******************* ***** *
$m = new Memcache();
$m->connect('172.16.0.3', 8888);//Duoduo テスト キャッシュ
$data = 'content';キャッシュされる
$m->add('mykey', $data);
echo $m->get('mykey'); // 出力内容
$m->replace('mykey', ' data'); //内容は dataecho $m->get('mykey');//出力データ
$m->delete('mykey') //削除 echo $m->get ('mykey'); // 削除されているため false を出力します。
************************
* 簡単なデモ 2 *
** ********* *************
注: 通常、SQL ステートメント md5() の後の値は、一意の識別子のキーとして使用されます。
//memcache に接続します
$m = new Memcache();
$m->connect('localhost', 11211) //ローカルのデフォルト接続ポート番号は 11211 です
//接続しますデータベースへの書き込みは行われません。
$sql = 'SELECT * FROM users';
$key = md5($sql); //md5 SQL コマンドが memcache の一意の識別子として使用されます
$rows = $m-> get($key) ; //最初にmemcacheを再実行してデータを取得します
if (!$rows) {
//$rowsがfalseの場合は、データが存在しないので、データを書き込みます
$res = mysql_query($ SQL);
$rows = array ();
while ($row = mysql_fetch_array($res)) {
$rows[] = $row;
$m->add($key, $rows);
// ここに重いデータベースを書き込みます。 で取得されたデータの場合、データベースは一度読み取られ、プログラムが再度アクセスされると、memcache から直接取得されます。
著作権ステートメント: この記事は、ブロガーによるオリジナルの記事であり、ブロガーの許可なしに転載することはできません。
以上、memcache のメモを内容も含めて紹介しましたが、PHP チュートリアルに興味のある友人の参考になれば幸いです。