永続的なデータの保持

永続的にデータを保持する方法はいくつかあります。いい加減なものから大真 面目なものまでいろいろです。大真面目に考えると、LRU などの機能を持った モジュールを利用して作るのかもしれませんが、やや大げさで、いまひとつしっ くりこない気がします。つまり、そこまで真面目に virtual memory のような 実装をしなくてもよいのでは?という気がします。それに、もし切実に必要な ら、なんらかの DBMS [1] を使うべきでしょう。

そういったわけで fml8 では、expire の仕方に応じて2つのデータ保持ク ラスを用意しています。それは「サイズを気にせず、時間を区切って expire するのか?」もしくは「使用する領域のサイズをある程度気にするか?」の2 種類です。

Warning

現在では Tie::JournaledFile クラス を利用した Tie::JournaledDir クラス もあるので、 将来 Tie::JournaledDir もしくは File::CacheDir かのいづれかは 不必要になるかも知れません。 また、インターフェイスの違いから適宜使い分けるのかもしれません。

2002/08: File::CacheDir は改名し、なくす方向で考えています。 そもそも File::CacheDir は FML/Process/Kernel.pm と FML/Filter/TrafficMonitor.pm でしか使ってません。 しかも、 TrafficMonitor.pm は事実上未完成なので、まだ変更が可能です。 実際 FML::Process::Kernel の var/mail/ でしか使っていないので、 File::CacheDir を使わないようにすることが可能でしょう。

Notes

[1]

DBMS = DataBase Management System

fml 8.0 (fml-devel) project homepage is www.fml.org/software/fml-devel/.
fml 4.0 project homepage is www.fml.org/fml/menu.ja.html.
about one floppy bsd routers, see www.bsdrouter.org/.
other free softwares are found at www.fml.org/software/.

author's homepage is www.fml.org/home/fukachan/.
Also, visit nuinui's world :) at www.nuinui.net.

For questions about FML, e-mail <fml-bugs@fml.org>.