ホームページ >バックエンド開発 >PHPチュートリアル >PHPとデータベースキャッシュの統合
インターネットの発展とデータ量と訪問数の急速な増加に伴い、効果的なキャッシュは Web サイトのパフォーマンスを向上させる重要な方法となっています。 Web アプリケーションでは、データベースは不可欠なコンポーネントです。データベースの負荷を軽減し、Web サイトのパフォーマンスを向上させるには、キャッシュ テクノロジをデータベースと統合して、データ アクセス速度と応答時間を改善する必要があります。
MySQL の世界には、データベース クエリを高速化し、データベース サーバーの負荷を軽減できる、非常に強力なコンポーネント Memcached があります。 PHP とデータベース キャッシュを相互接続するには、memcached 拡張機能を使用できます。
まず、Memcached 拡張機能をインストールする必要があります。次のコマンドを使用できます:
sudo apt-get install php-memcached
Memcached サーバーとの接続を確立するには、memcached_connect
を使用する必要があります。 PHPのメソッド。このメソッドは、Memcached サーバーの IP アドレスとポート番号という 2 つのパラメーターを受け入れます。以下は、ローカル サーバーに接続するためのサンプル コードです:
$memcached = new Memcached(); $memcached->addServer('127.0.0.1', 11211);
接続が確立された後、Memcached インスタンスで他のメソッドを使用できます。
PHP では、Memcached を使用したデータのキャッシュも非常に簡単です。 Memcached インスタンスで set
メソッドを使用し、キャッシュするデータとその他の関連パラメーターを指定するだけです。
次は、Memcached サーバーにデータをキャッシュする例です:
$memcached->set('key', 'value', 3600);
上の例では、データは Memcached サーバーにキャッシュされ、3600 秒後に期限切れになります。もう一度調べる必要があります。
Memcached からキャッシュ データを取得する必要がある場合は、get
メソッドを使用できます。
以下は Memcached からデータを取得する例です:
$data = $memcached->get('key');
上記のコードでは、キー値「key」を持つデータを取得し、結果は ## に保存されます。 #$data 変数。
delete メソッドを使用できます。
$memcached->delete('key');上記のコードでは、キー値「key」を持つキャッシュされたデータを削除します。
$key = 'query_' . md5($sql); $data = $memcached->get($key); if (!$data) { // 如果缓存数据不存在,则查询MySQL $result = $mysqli->query($sql); $data = $result->fetch_all(MYSQLI_ASSOC); // 将结果缓存到Memcached中 $memcached->set($key, $data, 3600); } // 处理结果 foreach ($data as $item) { // ... }上記のコードでは、まず SQL クエリ ステートメントをハッシュし、それをキー値として使用します。
$key が Memcached に存在するかどうかを確認し、存在する場合はキャッシュからデータを直接取得します。存在しない場合は MySQL にクエリを実行し、結果を Memcached にキャッシュします。その後、キャッシュされたデータを直接使用して結果を処理できます。
以上がPHPとデータベースキャッシュの統合の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。