[HOME] [github] [twitter] [blog] [fml4] [fml8] [北海道] Powered by NetBSD and [nuinui.net] .

次世代 fml への道

fml8 プロジェクトは fml4 を「1 から書き直す次世代 fml プロジェクト」です。 fml4 と fml8 の関係は sendmail と postfix のような関係というアナロジーが適切です。

fml8 は fml4 までにいたる約 10 年の経験ふまえ、 現代的観点から fml4 の”機能”を再構想/再実装する試みです。

(1)「作者自身」が (2)「同じもの(もしくは非常に互換性の高いもの)を一から書き直す」 試みは初めてなのではないかと思います。 条件(1)(2)の片方だけであれば、今までもいろいろとありました。 とくに(2)の一番すぐれた事例が Postfix でしょう。

fml8 には、 デザインを一から考え直すことに加え、 fml4 の機能や変数群の整理整頓といった要素もあります。

たとえば fml4 を使っていて気になる点の一つは 「特定のホストで、ディスクの上にメンバーファイルを書く」 というデザインです。 これは fml4 の最初から継承されてきている基本構造です。 [1]

しかしながら、RDBMS との連携や冗長化構成を考えると問題があります。 「NFS の時はどうする?」 「トラブルチケットシステムと連動したい場合は?」 「SQL サーバとも連動したいですね?」 などなど…

また、構造論ではなく単に自分で欲しい機能があります。 fml 自体が簡易版 bug tracking system を提供して欲しいし、 bug tracking system も検索もできるだけメールと連動していろいろして欲しい。 cvs ログとも連動して欲しい。 SPAM は隔離しろ。

最初にするべきことは 4.0 の機能とそのデザインについての再検討です。 たとえば、次のような項目が考えられます。

これらについての意見を募集したいと思いますが、 ばくぜんと議論してもしょうがないので、 議論の叩き台として動くものを作って動かしています。 それが fml8 です。

http://www.fml.org/software/fml8/

ftp://ftp.fml.org/pub/fml8/

Notes

[1]

fml4 設計当時のターゲットマシンは 4.3 BSD (SONY NeWS)で、 CPU は MIPS3000 が最先端だった時代でした。

IBM 互換 PC (i386 〜 i486)が普及してきたのは、もう少し後です。 初代の ftp.fml.org (当時は phys.titech.ac.jp ドメイン)が i486 でした。

ワークステーションが 200 万円、IBM PCが 40 万円くらいした時代の話です。

もちろん当時もホームディレクトリで NFS は使っていましたが、 「MLサーバを動かすならデータの保存対象はローカルディスクのみ」 という判断をしました。 まして LDAP や RDBMS なんて必要がなかったし、 分散して動かすほどマシンが手元にありません(苦笑)。

ただ、初期段階で想定外のものに対して拡張対応をするのは、 やはり、いろいろな無理があるものです (← ここは 20 年の含蓄を含んだセリフです)。

[HOME] [github] [twitter] [blog] [fml4] [fml8] [北海道] Powered by NetBSD and [nuinui.net] .
Copyright (C) 1993-2022 Ken'ichi Fukamachi mail:< fukachan at fml.org >