最新のアプリケーションの急速な成長に伴い、キャッシュは多くの開発者にとって重要な部分となっています。キャッシュにより、アプリケーションのパフォーマンスが大幅に向上し、サーバーの負荷が軽減されます。 CakePHP では、キャッシュを実装する 1 つの方法は Memcached を使用することです。
Memcached は、メモリベースの分散キャッシュ システムです。データをメモリに保存し、データの読み取りと書き込みを迅速に行うことができます。マルチサーバー環境では、Memcached は分散方式でデータを保存し、ネットワーク上で共有できます。 Memcached は開発環境だけでなく本番環境でも使用できます。この記事では、CakePHP で Memcached を使用する方法を学びます。
まず、Memcached 拡張機能をインストールする必要があります。 Ubuntu または Debian を使用している場合は、次のコマンドを使用します。
sudo apt-get install php-memcached
他のオペレーティング システムでは、Memcached 拡張機能をソースからインストールできます。
CakePHP では、キャッシュは Cache クラスを通じて実装されます。 app/Config/bootstrap.php ファイルを開き、ファイルの最後に次のコードを追加します:
Cache::config('default', array(
'engine' => 'Memcached', 'prefix' => 'cake_', 'servers' => array( '127.0.0.1:11211' // 服务器地址和端口 )
));
これにより、デフォルトのキャッシュ エンジンが Memcached になるように構成されます。プレフィックス オプションは、各キャッシュ キーの前にプレフィックスを追加するために使用されます。これにより、他のアプリケーションのキャッシュ キーとの競合を防ぐことができます。サーバー オプションは、Memcached サーバーのアドレスとポートです。
これで、アプリケーションで Cache クラスを使用してデータをキャッシュできるようになります。以下は例です:
// キャッシュ データ
Cache::write('my_data_key', $data, 'default');
// キャッシュ データの読み取り
$data = Cache::read('my_data_key', 'default');
この例では、Cache::write() メソッドを使用して Memcached にデータをキャッシュし、Cache::read ( ) メソッドはキャッシュから読み取ります。最初のパラメータはキャッシュ キー、2 番目のパラメータはキャッシュ エンジン名です。ここでは「デフォルト」です。
ビューのキャッシュは、Memcached を使用してキャッシュできるもう 1 つの側面です。 CakePHP では、ビュー キャッシュは名前付きビュー セグメントを通じて実装されます。 app/Config/core.php ファイルを開き、次の行を見つけます:
Configure::write('Cache.check', true);
これを次のように変更します:
Configure::write('Cache.check', false);
これにより、ビュー キャッシュ チェックがオフになります。次に、キャッシュする必要があるビュー ファイルを開き、次のコードをレイアウト ファイルに追加します。
// キャッシュの開始
$this->start('cache-key');
//コンテンツの表示
echo $content;
//キャッシュの終了
$this->end();
上記のコードは、ビューのコンテンツをキャッシュします。指定されたキャッシュキーに。キャッシュをクリアする必要がある場合は、次のコードを使用できます:
// キャッシュをクリア
Cache::delete('cache-key', 'default');
CakePHP では、Model クラスの find() メソッドを使用してデータをクエリできます。 Memcached を使用してクエリ結果をキャッシュし、パフォーマンスを向上させることができます。以下は例です:
//データとキャッシュのクエリ
$data = Cache::read('my_query_key', 'default');
if (!$data) {
$data = $this->find('all'); Cache::write('my_query_key', $data, 'default');
}
上記のコードでは、まず Memcached からデータを読み取ろうとします。キャッシュにデータがない場合は、Model::find() メソッドを使用してデータベースからデータを取得し、そのデータを Memcached にキャッシュします。
上記は、CakePHP でのキャッシュに Memcached を使用する簡単な手順です。キャッシュを使用すると、アプリケーションの速度と信頼性が向上し、サーバーの負荷が軽減されます。これで、アプリケーションで Memcached の使用を開始できるようになりました。
以上がCakePHP で Memcached を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。