ホームページ >バックエンド開発 >PHPチュートリアル >Memcache キャッシュ テクノロジを使用して PHP でのデータ読み取りパフォーマンスを向上させる方法

Memcache キャッシュ テクノロジを使用して PHP でのデータ読み取りパフォーマンスを向上させる方法

WBOY
WBOYオリジナル
2023-05-15 20:11:071394ブラウズ

インターネット技術の発展とアクセス数の爆発的な増加に伴い、Web サイトのパフォーマンスをいかに向上させるかが喫緊の課題となっています。キャッシュ テクノロジーは、Web サイトのパフォーマンスを向上させるために最も一般的に使用されるソリューションの 1 つです。非常に人気のあるバックエンド開発言語として、PHP は多くのキャッシュ テクノロジも提供しており、その中で最も一般的に使用されているのは Memcache キャッシュ テクノロジです。

Memcache は、高性能の分散メモリ オブジェクト キャッシュ システムであり、データ アクセス速度を向上させ、データベースの負荷を軽減するためによく使用されます。この記事では、PHP で Memcache キャッシュ テクノロジを使用してデータ読み取りパフォーマンスを向上させる方法を紹介します。

1. Memcache のインストールと構成

  1. Memcache 拡張機能のダウンロード

Memcache 拡張機能は PECL で入手できます。次のコマンドを使用して、Memcache 拡張機能をダウンロードしてインストールします。

$ pecl install memcache

  1. php.ini の構成

次の行を php.ini ファイルに追加して、Memcache 拡張機能を有効にします。

extension=memcache.so

  1. Memcached サービスの開始

Linux サーバーで、次のコマンドを使用して Memcached サービスを開始します。

$ memcached -d -m 64 -u root -l 127.0.0.1 -p 11211

  1. Memcache が利用可能かどうかをテストする

次を使用できます。次のコード スニペットは、Memcache が利用可能かどうかをテストします。

$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could not connect");

2. Memcache を使用してキャッシュするデータ

  1. キャッシュ データの保存

Memcache へのデータの保存は非常に簡単で、次のコードを使用してデータのキーと値のペアをキャッシュに保存します。

$memcache = 新しい Memcache;
$memcache->connect('localhost', 11211) or die ("接続できませんでした");
$memcache->set('key ', 'value', 0, 3600);

上記のコードは、「キー」と「値」を Memcache に保存し、キャッシュ時間は 3600 秒です。

  1. キャッシュ データの読み取り

Memcache キャッシュ内のデータを取得する必要がある場合は、次のコードを使用できます。

$memcache = 新しい Memcache;
$memcache->connect('localhost', 11211) or die ("接続できませんでした");
$data = $memcache->get ('key');

上記のコードは、Memcache からキー「key」の値を取得します。

  1. キャッシュされたデータの削除

Memcache にキャッシュされたデータを削除する必要がある場合は、次のコード スニペットを使用できます。

$memcache = 新しい Memcache;
$memcache->connect('localhost', 11211) or die ("接続できませんでした");
$memcache->delete('key ');

上記のコードは、キー「key」を持つデータを Memcache から削除します。

3. Memcache を使用してデータベース アクセスを高速化する

Memcache を使用してデータ読み取りパフォーマンスを向上させる場合、最も一般的なアプリケーション シナリオは、データをデータベースにキャッシュすることです。 Web サイトの特定のデータがデータベースから頻繁に読み取られる場合、Memcache を使用してこのデータをキャッシュすると、データベース サーバーの負荷が軽減され、Web サイトのパフォーマンスが向上します。

Memcache を使用してデータベース アクセスを高速化する手順は次のとおりです。

  1. データの取得

初めてデータをリクエストするときは、データベースからデータを取得し、Memcache に保存します。

$memcache = 新しい Memcache;
$memcache->connect('localhost', 11211) or die ("接続できませんでした");

$data = $memcache- >get('key');
if (!$data) { //Memcache にデータが存在しません

$db = new mysqli('localhost', 'user', 'password', 'database');
$result = $db->query('SELECT * FROM table');
$data = $result->fetch_all(MYSQLI_ASSOC);
$db->close();
$memcache->set('key', $data, 0, 3600);

}

  1. Read data

後続のリクエストでは、データベース クエリを回避するために Memcache キャッシュ データを呼び出します。

$memcache = 新しい Memcache;
$memcache->connect('localhost', 11211) or die ("接続できませんでした");

$data = $memcache- >get('key');
if ($data === false) { //データは Memcache に存在しないため、データベースから読み取る必要があります

$db = new mysqli('localhost', 'user', 'password', 'database');
$result = $db->query('SELECT * FROM table');
$data = $result->fetch_all(MYSQLI_ASSOC);
$db->close();
$memcache->set('key', $data, 0, 3600);

}

上記のコードを使用すると、データベースからデータを読み取ることができ、Memcache を介してキャッシュした後、後続のリクエストでキャッシュにアクセスしてデータを取得できるため、データ読み取りパフォーマンスが向上します。

4. 概要

この記事では、PHP で Memcache キャッシュ テクノロジを使用してデータ読み取りパフォーマンスを向上させる方法を紹介します。データをメモリにキャッシュし、データベースへの頻繁なアクセスを回避することで、データベースの負荷を軽減し、Webサイトのパフォーマンスを向上させることができます。もちろん、Memcache キャッシュ テクノロジは完璧ではありませんが、実際のアプリケーションでは、Memcache は依然として効率的で信頼性の高いキャッシュ ソリューションです。

以上がMemcache キャッシュ テクノロジを使用して PHP でのデータ読み取りパフォーマンスを向上させる方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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