CHIのMultilevel driverで多段cache
MemoryになければMemcachedからcache取得、のようなコードを以下のように書けるというのがCHIの肝で、ここがData::ObjectDriverととても似ているんですね。
subcachesのところに、driverを複数書くと、書いた順にcacheを探しにいきます。
#!/usr/bin/env perl use strict; use warnings; use CHI; my $cache = CHI->new( driver => 'Multilevel', subcaches => [ { driver => 'Memory' }, { driver => 'MemcachedFast', servers => ["127.0.0.1:11211"] } ], ); $cache->set( 'hoge', 'hige' ); print $cache->get('hoge');
# 後もう一つの肝は、get_multiを使える事。