PHPのCache_Lite で lifeTime を場所によって変える時の注意点

PEAR の CacheLite を、短期キャッシュと長期キャッシュに分けて運用する場合、普通に automaticCleaningFactor を使っていると、思った通りに動作しなくなります。
 
automaticCleaningFactor は、現在設定されているlifeTimeを基準に、cache_dirの中の全ての古いファイルを掃除してしまいます。
 
save() で指定した group_id の古いファイル限定で掃除してくれれば融通がき くのですが、そもそも clean() の実装がそうはなっていない様子。
 
PEAR Bugにもこの問題が報告されていますが、現在のAPIを変えずに実装するのは困難として対応打ち切りになっています。
その代わり、解決案としてキャッシュの寿命別にフォルダ分けをする方法が紹介されていました。
 

Best practice then would appear to be that you create directories for each of your caches if you want to be using this autocleanfactor.
ここでの最良の習慣は、autocleanfactorを使う場合には(用途,寿命の違う)それぞれのキャッシュごとにディレクトリを分けて作る事です。

 
参考:
non-specific automaticCleaningFactor(PEAR Bug)
Cache_Lite(PEARマニュアル)