December 08, 2004

Class::DBI::Cacheable

[ Perl ]
Class::DBI::Cacheable transparently acts as a cacheing wrapper around Class::DBI, storing retrieved and created data in a local object cache, and returning data out of the cache wherever possible.

これはなかなかグレイトなクラス。Class::DBI::CacheableClass::DBI のラッパクラスとして動作、Class::DBI により生成したオブジェクトをローカルにキャッシュしてパフォーマンスを向上させることができます。

実際のオブジェクトキャッシュは Class::DBI::Cacheable ディストリビューションに含まれる Class::DBI::ObjectCache が担当、その中のインプリには Cache::Cache をインタフェースとして用いています。Class::DBI::ObjectCache をそのまま使うとファイルベースのキャッシュである Cache::FileCache を使いますが、CACHE() メソッドをオーバーライドしたサブクラスを用意することで、Cache::Cache インタフェースの他の実装クラス、共有メモリでのキャッシュや DB でのキャッシュを利用することも可能とのこと。

はてなフレームワークでも Class::DBI と同じような、独自の仕組みでデータベースをオブジェクトにより抽象化してますが、その中にキャッシングの仕組みを導入するにあたっての設計・実装の参考になりそう。メモメモ。

Posted by naoya at December 8, 2004 11:32 AM | トラックバック (2)  b_entry.gif
トラックバック [2件]
TrackBack URL: http://mt.bloghackers.net/mt/suck-tbspams.cgi/1365
Class::DBI::Cacheable
Excerpt: Class::DBI::Cacheable : NDO::Weblog これはなかなかグレイトなクラス。 Class::DBI::Cacheable は Cl...
Weblog: Epic->yoshimax->ゴッゴル
Tracked: December 9, 2004 02:14 AM
RelatedLink
Excerpt: 参考になりそうなURL † ↑フレームワーク † ↑TT † Template::Plu...
Weblog: PukiWiki/TrackBack 0.2
Tracked: May 27, 2005 06:38 PM
コメント [0件]
コメントする









名前、アドレスを登録しますか?