「だからKUSANAGIが必要なんだ!と言わせたい」~速度編~ 第07回 17年06月 / 最終更新:2017.06.28

いらっしゃいませ、こんにちは!
プライム・ストラテジーで超高速WordPress仮想マシン
「KUSANAGI」のエバンジェリストを初めて半年が経ちます、岡田あすみと申します。

実は私はエバンジェリストとして活動してますが、実は食べ物関係でタレントをしていることもあり、食には興味があります。
ITエンジニアの方は不摂生をしている人も多く、個人的にデブナイトという、ITエンジニアの方の職を考えるイベントの運営に参加しています。
そこで、このコラムでも毎回最初は食について触れていきたいと思います。

 

写真はカスティージョ・デ・カネナの早摘みオリーブオイルです。
口の中でしぼりたてのオリーブの香りが広がります。オリーブオイルは健康にいいですよね。
しかも料理に少し入れるだけで風味も変わります。美味しくなって健康になれるなんてすばらしいです。
自炊されている皆様、キッチンにお好みのオリーブオイルがあると食生活が変わりますよ!

さて本題です!これまでで全部で5回にわたってコラムを書かせて頂きました。

今回からはより「KUSANAGI」にフォーカスして、「KUSANAGI」が「なぜ」、「誰にとって」必要なものなのか速度編・セキュリティ編・手軽編に分けてお届けしてまいります。

まずは、速度編です。
対象の方としては、
「KUSANAGIってなんだろう?」
「WordPressって名前だけ知っているけど具体的に何ができるのかわからない」
「HTML、CSSなど存在は知っているけど触ったことがない」

上記に該当する方に向けて、まずは「KUSANAGI」というソリューションの捉え方を、物語風に説明してみたいと思います。

―――――――――――――――――――――――――――――――――――――――

皆さま。こちらに、徒歩のみの郵便配達員がいます。
あなたはこの人に任せて、思い出の写真を友人のA子ちゃんに見せるために、郵便配達員に届けて欲しいと思っています。

でも、思い出の写真はたくさんありすぎて、相当な量です。
しまいには重たくて郵便配達員は運ぶことができなくなってしまいました。

途方にくれた郵便配達員にあなたはバイクを使うことを提案します。
(今時、徒歩のみの郵便配達員っているのかわかりませんが笑)

バイクのおかげで、速度が速くなった郵便配達員は、友人のA子ちゃんのもとにすぐに思い出の手紙を届けることができ、A子ちゃんはサクサクとスムーズに思い出の写真を閲覧することができました。

めでたしめでたし!!!

―――――――――――――――――――――――――――――――――――――――

・・・じつは、上記のショートストーリーは、文中の比喩してる単語をある言葉に置き換えると、「KUSANAGI」の説明になるのです。
それが以下です。
○あなた    →サイト管理者
○郵便配達員  →WordPress
○思い出の手紙 →データベースに保存するテキストやデータ
○バイク    →KUSANAGI
○A子ちゃん  →ユーザー、閲覧者

郵便配達員は、徒歩ではユーザーのA子ちゃんが見たい情報を瞬時に届けることはできません。しかし、バイクを使えばより早く情報を届けることができます。
「KUSANAGI」はバイクのように、ユーザーに届けたい大量の情報を高速に届けるお手伝いをする、縁の下の力持ち的なものと思って頂ければと思います。

なんとなくわかっていただけましたでしょうか(笑)
あくまでもイメージするための例え話でございます。
「KUSANAGI」を使い込まれているエンジニア様。上記のストーリーへの細かい突っ込みは、ユーザー会にてお聞かせいただければ幸いです(笑)

それでは続きまして、WordPressが重たくなる原因について解説していきます。

■なぜWordPressでできたサイトは重たくなるのだろうか?

WordPressは動的なCMS(コンテンツマネジメントシステム)です。

CMSでは、HTMLを編集するスキルが無くてもホームページを更新することができます。

静的なCMSと比較すると動作が重たくなることで知られています。
それは、ブラウザからサーバーにデータを取りに行く形式の違いに由来します。

MovableTypeなどの静的CMSの場合、ユーザーから来たリクエストに対して作成済みのHTMLファイルを返すだけの処理になりますので、サーバーへの負荷はほぼありません。

一方で、動的CMSのWordPressの場合、ユーザーからのアクセスの度にHTMLコードを構成するところから始めてウェブぺージを表示させています。

このため、取り扱う記事の量が増えると、その都度一からHTMLコードを構成する必要があるため、結果としてデータベースから目的物を探す時間が長くなり、結果を出力するまでの表示速度が遅くなってしまうのです。

■重たくなると何がいけないのか?

結論から言うと、PV数やサイト内回遊率が下がります。
遅いサイトはユーザーが見る気を無くし、離脱してしまうからです。

ECサイトなど閲覧者数がダイレクトに売上に関わるようなサイトでは、表示速度が1秒遅れるとショップの売り上げは10%失うとも言われているようです。
実際に、「サイト 遅い 売上 失う」などで検索すると、関連するデータが出てきますので参考にされてみてはいかがでしょうか。

さて、「速度」のサイト運用における重要性について、おわかり頂けたでしょうか。

「KUSANAGI」は、WordPressのような動的CMSのパフォーマンスを上げるためにチューニングされた状態で提供している仮想マシンです。無料で使えるオープンソースソフトウェアとして、「S-Port」クラウドを含む18のプラットフォームに対応しているので既にご契約済みのクラウドに「KUSANAGI」を入れることも可能です。

では、「KUSANAGI」はWordPressの性能を上げるためにどのようなチューニングをしているのでしょうか?

お次は技術のお話です。
実際に導入されている“キャッシュ”をご紹介しましょう。

■「KUSANAGI」の速さの秘訣に迫る!使われている三つの“キャッシュ”とは?

キャッシュとは、一回目に行った結果を記録しておき、二回目は一回目の結果を再利用すること(その仕組み)です。
データベース、PHP、WordPress本体、ミドルウェアなどでキャッシュを組み込むことができます。
キャッシュを有効活用すると、動的CMSの特徴である「ユーザーからの要求ごとに発生するHTMLコード作成」の一連の流れにかかる時間が短くなり、結果としてWebページの表示速度を上げることができます。

KUSANAGIには、大きく分けて以下の3つのキャッシュが使われています。
①PHPで導入している“apcuキャッシュ”
 →人間が読める文字を機械が読める文字へ変換し、一連の作業時間を短くする
②DBで導入している“Innodb_buffer_pool_sizeキャッシュ”
 →記事作成において必要なデータ(写真、タイトル、テキストデータなど)をデータベースから探し出す作業時間を短くする
③Nginxで導入している“fcache(Fast CGI cache)”
→HTMLそのものを記憶し、ユーザーからのリクエストに対するレスポンス速度を上げる
他にも様々な高速化の仕掛けがありますが、これらのチューニングの細かいやり方については、連載の中でおいおい解説していきます。

今回は「速度編」と致しまして、
・「KUSANAGI」がどういうことをしているものなのか、その概要
・そもそもなぜWordPressサイトは動作が重たくなるのか
・重たくなると何がいけないのか
・「KUSANAGI」で使われている三つのキャッシュ
これらについてお伝えしてきました。

文中にも少しございましたが、「KUSANAGI」は耐障害性・可用性に優れたクラウド、「S-Port」クラウドに対応している無料で使えるオープンソースソフトウェアです。
弊社の方でも「KUSANAGI for S-Port」を導入した実績のあるお客様は多くいらっしゃいます。
導入事例はこちらからご覧ください→https://kusanagi.tokyo/jirei/
企業サイトの運用には、安定した信頼性のあるクラウド事業者に大切なデータを預けたいですよね。
全国の、クラウド業者の選定に迷われているWeb担当者の皆様。
日本に大規模なデータセンターを構え、手厚いサービスをしてくれることで定評のある鈴与シンワートの「S-Port」クラウドを導入し、「KUSANAGI」上で高速なWebサイトを動かしてみてはいかがでしょうか!

次回は「KUSANAGI」のセキュリティについてお伝えします!