web-dev-qa-db-ja.com

Wordpressのパフォーマンス - W3 Total Cacheとmemcached/APCu

Wordpress、Nginx with PHP-FPM、W3 Total Cache(プラグイン)、memcached、APCuをPHP 5.5にインストールしました。

私は、Apache Bench(ab)を使用して、上記のAWSサーバーに対してローカルMacでベンチマークを実行します。test.comが一貫して240リクエスト/秒(RPS)でこのサーバーに毒したり、1日あたり約4000万ヒットを達成します。 blitz.io。これはデフォルトのWordpressテーマのものです。

このパフォーマンスは素晴らしく、パフォーマンスに関してはほとんどすべてのブログ投稿(すべてではありません)よりも優れています。私はこの点に至るまでに多くの時間と研究を費やしました、しかし今私はAPCuとMemcachedに関して2、3の​​質問をします。

別の重いテーマ(いくつか試してみました)に進むと、パフォーマンスが低下し、memcachedが機能しているかどうかもわかりません。

  1. MemcachedとAPCuの両方が必要ですか?
  2. データベースのパフォーマンスに問題があります。 memcachedがどの程度うまく機能しているか(ヒット率とミス率などでキャッシュがパージされる割合)
1
user69633

APCu> 1つのサーバーでのみキャッシュを実行しているときはMemecachedd。 Memcachedを使用してマルチサーバー環境でオブジェクトキャッシングを行う一方で、単一サーバー上での使用に伴う通信とタスク切り替えのオーバーヘッドは、APCuが採用している複雑でない直接メモリアプローチと比較しても意味がありません。

キャッシュされたエントリの有効期限に関しては、これは物事のワードプレス側に設定されているものです。 W3TCには設定オプションがあり、あなたがワードプレスキャッシングAPIを使用するなら、あなたは自分で有効期限を設定することができます。もちろん、有効期限を設定しても、キャッシュ機能が実際にそれを長く保持するわけではなく、説明からタイムアウトまでにエントリが消去されているように見えます。これは、キャッシュに十分なメモリがない、またはキャッシュキーを計算するための一貫した方法はありません。

どちらのキャッシュユーティリティにも独自の監視ユーティリティがありますが、複雑ではありませんし、優れた洞察を提供することはできませんが、そのレベルで検査する必要がある場合は、おそらく十分なキャッシュメモリを使用しないでください。

APCu/memcachedやDBにはほとんどヒットしないはずなので、W3TCが適切に動作していれば、オブジェクトキャッシング全体に関する議論は無意味です。

1
Mark Kaplun