俺のブログサーバー性能改善。MariaDB(mysql)のクエリキャッシュはそれなりに効く。

Linux

さて、まだまだ続けています。性能改善。一応の集大成として、MariaDBのcache設定してみました。ちょっと速くなった。

参照にさせて頂いたのは、こちらのスライドです。KUSANAGI。

超高速WordPress ~ PHP7 vs HHVM vs PHP5.6

確かに、このサイト、速いですね。HHVMもちょっと気にはなったんですが、RHL系ディストリビューションで動かすのが大変そうなのと、PHPの互換性に不安もあったので、そこは流石にやってません。

そこで、そういえば有効にしていなかったMariaDBのクエリキャッシュを有効化してみました。

設定は簡単です。my.cnfのmysqldセクションに以下を追記するだけです。MariaDBであれば、/etc/my.cnf.d/server.cfかな。

query_cache_limit=1M
query_cache_min_res_unit=4k
query_cache_size=24M
query_cache_type=1

ヒット率等は、Newrelicで見えますので、そちらで確認します。

で、このクエリキャッシュ、ヒット率低いよね、という話は当然あるんですが(実際、30%程度です)、それでもトップページ等、定形のクエリが飛ぶようなシーンでは当たる可能性が高いので、入れておく分には邪魔はしないかな、と。それこそストレージが速ければ、邪魔なだけ、って声もあるようですが。

ちなみに上記スライドでは、翻訳キャッシュもオススメされていましたが、これは一度入れてやめました。一部管理画面が英語になってしまったためです。なんか使い方が悪いのか、あるいはWordpress/PHPのバージョンの問題なのかは分かりません。

ついでに、この機会なので、いろいろ再整備しました。

  • ホストOSアップデート。yum update&再起動実施。かれこれ125日くらい動いていたようですので、リフレッシュの意味も込めて再起動実施。
  • memcachedをディストリビューション標準から、最新版を個別にコンパイルしたものに差し替え。速くなるかな、と。
  • ブログ村Widget削除。スコアダウンの一因なので。

そしたらWordpressがとても遅くなりました・・・。この遅さは過去に経験があって、要するにDNSが引けないパターンだな、と一発で見当が付きました。オチとしては、お名前VPSのDNSサーバーが切り替わっていた、という。resolv.confは書き換えていたのですが、ifcfg側に書いてあったDNS1変数で再起動したとき戻ったという失態。Wordpressが遅い時は、外部サイトへの接続(api.wordpress.org等)がうまく行っていないケースが意外に多いです。

と、いろいろやった結果として、Pagespeed insightsスコアアップしました。

mobile 68 / PC 81

80台になった。モバイルの68っていう数字も重要で、「65を超えると表示が赤く無くなる」んですよね(笑)。

GTmetrixも確認してみました。

スクリーンショット 2016-02-22 1.07.09

悪くない。スコア下げてるのは・・・楽天アフィ(苦笑)。消そうかな。

そんな感じで、この週末の性能改善で、かなりイケてるWebサイトになってきた感じ。中身は別として、ですがね。最終的にはやっぱりSSL化かなぁ・・・と思いつつ。

コメント

タイトルとURLをコピーしました