キャッシュテクノロジーに関する前回の記事では、RedisをキャッシュおよびセッションハンドラーとしてYii2と統合する方法について説明しました。このブログでは、Yii2でMemcachedを使用する方法を紹介します。
Memcachedは、フリーでオープンソースの分散メモリキャッシングシステムです。これは主に、データをキャッシュして実行時間とアクセス時間を短縮することにより、動的なデータベース駆動型Webサイトを高速化するために使用されます。 Cloudwaysは、ユーザーのサーバーにプリインストールされてアクティブ化されたMemcachedで提供されます。このチュートリアルでは、これを使用します。
Yii2は、MemcacheとMemcachedの両方で機能する独自のMemcacheクラスを提供します。このクラスを始めましょう。
関連:Composerを使用してCloudwaysでYii2フレームワークをホストする方法
Yii2にMemcacheクラスを追加する
構成に移動します Yii2のメインフォルダ内のフォルダを開き、web.phpを開きます。 コンポーネントの下 この行を追加します:
'cache' => [ 'class' => 'yii\caching\MemCache', 'useMemcached' => true, ],
useMemcachedを設定する true、 Yii2は、私がYii2Memcachedを使用していることを認識します。
Yii2でのMemcachedの使用
すでにYii2Memcacheクラスを追加しているので、Memcachedにデータを追加して保存するときが来ました。 コントローラーに移動します Yii2のフォルダに新しいファイルを作成し、MemController.phpという名前を付けます。 次のコードを貼り付けます。
namespace app\controllers; use Yii; use yii\web\Controller; class MemController extends Controller { public function actionIndex() { $cache = Yii::$app->cache; $key = 'Mem'; $data = $cache->get($key); if ($data === false) { $key = 'Mem'; $data = 'My First Memcached Data'; $cache->set($key, $data); } echo $data; } }
ファイルを保存した後、ブラウザを起動し、?r =mem / index を追加して、このコントローラのインデックスをポイントします。 。結果は次のようになります:
これで、データがMemcachedに保存されます。
ページをもう一度更新して、データがMemcachedからのものであり、他のソースからのものではないことを確認できるようにします。
次に、データを確認し、Memcachedがアクセスされているかどうかを確認します。
コアWebバイタルアップデートの準備をする
トラフィックを失い始める前にウェブサイトをスピードアップするための電子ブック。
ありがとうございます
あなたのリストはあなたの受信箱への道にあります。
Memcached内のデータの確認
データがMemcachedに保存されていることを確認する方法は2つあります
1。コンソールの使用:
コンソールを開き、次のコマンドを入力してMemcachedサーバーに接続します。
telnet localhost 11211
接続すると、次の画面が表示されます。
これで、Memcachedサーバーに接続されました。次のように入力して、キーが存在するかどうかを確認します。
Get Mem
次の画面が表示された場合は、値がMemCachedに正常に追加されています。
次に、Memcachedのヒットを確認します。次のコマンドを入力します:
統計
次に、変数 get_hitsを探します 。 Memcachedが受信したヒット数と返されたデータが表示されます。
2。 Cloudwaysパネル上
Cloudwaysでは、サーバーに移動し、サイドバーから[監視]を選択することで、Memcachedのヒット率を簡単に調べることができます。
監視ウィンドウで、サーバーを選択します タブをクリックし、ドロップダウンから MemcachedHitRateを選択します。 MemCachedが受信したヒットのグラフが開きます。
ヒット率が表示されない場合は、更新をクリックして更新してみてください。 ボタン。
最終的な考え
このチュートリアルでは、サイトのデフォルトキャッシュとしてYii2でMemcachedを使用する方法について説明しました。質問がある場合、またはディスカッションに貢献したい場合は、以下にコメントを残してください。