ヤマムギ

growing hard days.

*

WordPress W3 Total Cache のDatabaseCacheをAmazon ElastiCacheのmemcachedに格納する

      2020/01/05

このブログのアーキテクチャは現在こちらです。

データベースは、Amazon Aurora Serverlessを使用しています。
アイドル状態が5分続けば停止するようにしています。
開発検証用の機能かもしれませんが、CloudFrontやElastiCacheを使うことで、コスト効率の向上につながらないか試してみます。

Memcached 用 Amazon ElastiCache を使用して WordPress を高速化するに習って、Database CacheをAmazon ElastiCacheのmemcachedに格納してみます。

セキュリティグループの作成

ElastiCace用のセキュリティグループをあらかじめ作成しました。
11211番ポートに対して、webサーバーからのトラフィックのみ許可するように、ソースはEC2が使用しているセキュリティグループIDを指定しました。

Amazon ElastiCacheの作成

サブネットグループの作成

ElastiCacheダッシュボードでサブネットグループを選択して作成します。
VPCとAZ、サブネットを選択します。
インターネットから直接アクセスする必要はないので、プライベートサブネットを選択しました。

Memcachedの作成

ElastiCacheダッシュボードで[作成]ボタンをクリックしました。

任意の名前を入力して、ノードのタイプを選択しました。
私は一番低いt3.microにしました。

詳細設定であらかじめ作成しておいた、サブネットグループとセキュリティグループを設定しました。

W3 Total Cacheの設定

WordPress管理画面にログインして、設定メニューから、W3 Total Cacheの設定をします。
W3 Total Cacheがすでにインストール済みの環境で設定しました。

[General Setting]で[Database Cache]を有効にして、[Satabase Cache Method]で[Memcached]を選択しました。

この時点ではデフォルト設定のローカルにMemcachedサーバがないので警告が表示されます。

左のメニューペインで、[Database Cache]を選択して、[Memcached hostname:port]にElastiCacheのエンドポイントとポート番号を入力して保存します。

私はなるべくデータベースコネクションを減らしたかったので、キャッシュ保持期間を1日にしてみました。
保存しました。

Memcachedの確認

確認用のEC2インスタンスを別途起動して、webサーバー用のセキュリティグループ、IAMロール(SystemsManagerなどの権限)を設定しました。
ターミナル操作は、セッションマネージャから実行して確認しました。

memcached-tool を使いたかったので、memcachedをインストールしました。
あとは、telnetでも確認したかったのでtelnetをインストールしてます。

キャッシュされている情報が確認できました。

telnet接続後は、 stats や stats itemsでキャッシュされていることが確認できました。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , , ,

ad

ad

  関連記事

S3 過去のオブジェクトバージョンをコピーしてロールバックしました

バージョニングを有効にしているS3バケットで、オブジェクトを以前のバージョンに戻 …

AWS Code Commitをプライベートリポジトリとして使う

GitHubでもいいんですが、アクセスキーとかパスワードとかコンフィグ系で書いて …

EC2ハードウェア専有インスタンス(Dedicated Instances)を起動して請求書を確認してみました

EC2ハードウェア専有インスタンスのサイトには、次の料金と表記されています。 * …

AWS CDKでクロススタックリファレンスをする

CloudFormationで複数のスタックで参照することがあります。 それをC …

「JAWS-UG in AWS Cloud Roadshow 2017 大阪」で運営をしました

AWS Cloud Roadshow 2017 大阪のナイトイベントで、「JAW …

Amazon Elasticsearch ServiceにMySQLのデータを投入してkibanaで可視化してみる

MySQLのデータの可視化にAmazon Elasticsearch Servi …

Feedlyのフィードを自動でSlackへ投稿する(AWS Lambda , Amazon DynamoDB)

やりたいこと Feedlyで共有したいフィードに特定のタグを付けます。 特定のタ …

EC2 Auto Scalingグループでインスタンスの更新を実行

このブログのAMI、起動テンプレートを更新して、EC2 Auto Scaling …

このブログをAWS大阪リージョンへ移行しました

大阪リージョン爆誕!! 朝起きて寝ぼけながらリージョンを見てると。 「大阪リージ …

AWS OrganizatonsのRCP(リソースコントロールポリシー)を設定しました

2024/11月に発表されましたリソースコントロールポリシーを管理している組織に …