ESI

satonaoki2005-01-31

http://d.hatena.ne.jp/satonaoki/20050124/p1 で紹介した事例ではおそらく、http://www.almaden.ibm.com/u/mohan/Caching_VLDB2001.pdf で言うところの "fragment-level caching" は使用しておらず、ページ全体をキャッシュする構成です。

ですが、OracleAS Web Cache 10gは、"fragment-level caching" もサポートしています ("partial-page caching" と呼ぶことが多いのですが)。これは、キャッシュの単位をページ全体レベルではなくページのサブセット (フラグメント) にすることで、キャッシュ可能なコンテンツを増やしたり、キャッシュ・ヒット率を向上させたりして、キャッシュ・サーバの更なる効率化を図るものです。

OracleAS Web Cache 10gでpartial-page cachingを使うには、どのフラグメントでキャッシュするか、などの情報を指定するために、Edge Side Includes (ESI) というマークアップ言語をHTMLマークアップに追加します。

ESIはOracleAkamaiが中心となって仕様を定義したものですが、多くの企業が賛同しています。他社製品では、WebSphere Application ServerがESIをサポートしているようです。