LicenseRailsに限った話ではないが、Webアプリケーションのパフォーマンスにおいてキャッシュを用いることは多々ある。最近ではmemcachedを利用することが多いが、キャッシュしずらいデータもある。それはログイン後のデータなどユーザごとに異なる情報を表示するケースだ。]ユーザごとに情報が異なる場合、キャッシュを活用するのは難しい。それを解決してくれるのがESIと呼ばれる仕組みだ。今回紹介するオープンソース・ソフトウェアはMongrel-ESI、Mongrelを使ったESI実装だ。Mongrel-ESIは通常のキャッシングと異なり、動的なページに対しても有効なキャッシングを提供する。SSIのようにページに特定のタグを埋め込む形でWebサーバの出力を最後に変換して表示することができる。アクションを指定して、Rails側でアクションを実行後に値を埋め込むことができる。その後はキャッシュされる。:partialの指定としてESIを利用できる。ESIのデータはTCPを使ってやり取りされるものなので、ESI側は拡張しやすく、スケールメリットが出やすい。バックエンドにはメモリの他、memcachedを利用することもできる。成熟していないが、大規模なキャッシュシステムを構築する際に試してみたいソフトウェアだ。LicenseMOONGIFTの関連記事${article.post_title}{{/each}}もっと見るコメントプレミアムでしか読めない記事が732あります。blockworks。