Smart Communication Design Company
ホーム > ナレッジ > Blog > CMS Blog > 2009年12月 > ハイパフォーマンスなeZ Publishへ(ESIサポートにおける効率的なキャッシュ)

ハイパフォーマンスなeZ Publishへ(ESIサポートにおける効率的なキャッシュ)

2009年12月3日
システムエンジニア 野沢

今日のWebページはハードコーディングで生成されるのではなくWebアプリケーションによって動的に生成されるケースが多くなってきています。このような動的ページの負荷軽減方法として、キャッシュサーバにおけるコンテンツのキャッシュは広く知られています。しかし、ユーザのログインページなど固有の情報が出力されるページについてはキャッシュさせることが難しいことや、ページ内の表示要素によりキャッシュできる時間が限定される現状がありました。

このたびeZ publishの最新バージョン4.2が2009年10月にリリースされ、このようなページのキャッシュにおける難しい点を解決しさらなるパフォーマンスアップを実現できる技術サポートのリリースが含まれています。それはEdge Side Include (ESI)のサポートです。

ESIとはWebページのマークアップ言語の1つでWebページを構成するパーツ単位で生成することができる機能であり、パーツ単位で生成することによって今までキャッシュが難しかったページや特に処理に負荷がかかる部分、更新の少ない部分などページを細分化したキャッシュが可能となります。
つまりESIは効率的にキャッシュファイルを作成しWebページの表示要素を組み立てることができます。eZ PublishはESIのサポートをeZSIというエクステンションで提供しています。

eZ PublishはWebブラウザからの要求に対して要求毎にページを生成して応答する動的CMSに分類されます。要求毎にページを生成するため、データベースから多くのコンテンツを取り出すことが必要なページではページ生成に時間がかかってしまうという課題がありました。この課題は動的CMSであれば避けては通れないものです。
この課題の解決方法は多種多様に考えられますがESIを利用する事でより効率的にこの課題をクリアすることができます。eZSIを有効にしたeZ PublishであればWebブラウザからの要求毎にページを生成することなく事前にページに必要なHTMLを作り置き(キャッシュ)してくれます。またサイト訪問者の条件によってキャッシュを有効にするか、無効にするかを切り替えることができます。コーポレイトサイトだけではなくコミュニティサイトでの利用も視野に入れることが可能です。eZSIによりeZ Publishは動的CMSでありながらサイト訪問者に対して快適なWebブラウジングを提供できるハイパフォーマンスなCMSへと変貌を遂げました。

弊社では現在、このeZSIの評価~検証をすすめています。ESIを読み込むソフトウェアにはオープンソースのリバースプロキシソフト(Varnish)を採用し検証を行っています。近日中にこのブログにて検証結果の報告をさせて頂きます。

Varnishについてはこちらの記事を参照ください。