松尾です。

# 皆さん年度末はお忙しくありませんか? 僕は引越しでダンボールに物詰めな
# がら。

From: Shugo Maeda <shugo / netlab.co.jp>

> mod_rubyではすべてのスクリプトが同一プロセスで動くので、グローバル変
> 数などは共有されます。
> したがって、初期化のみを行うスクリプト(meeting2000_init.rb)を用意して、
> 
> # meeting2000.rb
> require 'meeting2000_init'
> 
> ...
> 
> などとすれば、meeting2000.rbでは純粋にクライアントの要求を処理するだ
> けでよくなります。
> 
> meeting2000_init.rbで定期的にファイルを保存するスレッドを生成するこ
> ともできます。
> # 試してないですけど、たぶん(^_^;

そうですね、やりたいことはそういうことです。mod_rubyでは相応に可能、と
いうことは理解しました。ありがとうございました。

--

From: "NAKAMURA, Hiroshi" <nakahiro / sarion.co.jp>

> 美しくありませんか...いえ,
> 「美しい」と主張するつもりはないんですけど,
> ではどうあると美しいかなと...

うん。皆さんの話をお伺いしていると、現状で特に不満を感じておられないよ
うなんですね。なので、その何処が美しくないんだ? って事になるんでしょう。
とするとなかなか説明が難しいですね。

まぁ書ける事は確かなのでそれでよいといえばよいと思います。

--

話を無理矢理一般化させてしまいますが、何かのアプリケーションを作る場合

1. 用意されたアーキテクチャ上でアプリケーションを書く
2. 上記アーキテクチャに相当する物も含めてアプリケーションを書く

という選択肢があるわけです。で、殆どの場合1が便利です。自分で書かなく
てすむ、検証され堅牢である、等など。

でも2にも捨て難い魅力があります。全部自分の好きなようにやれる、ってこ
とです。 用意されたアークテクチャに不満がある場合、ぇぇぃ自分で作っちゃ
おうか、と思ったことのある人は多いはずです。

しかし流石にそれはなかなか選択しづらい。1のメリットが2ではそのままデメ
リットですから。アーキテクチャを作る? そんな大変なこと…

と考えてふと思うわけです。俺って考えたり作ることって案外好きじゃん。不
満なら好きなように作っちゃえ。1で用意された機能全部実装しないといけな
いわけじゃなく、自分の欲しいところだけ用意するだけなら、出来るんじゃな
い? うん、出来るかもしれない。

--

話を元に戻します。

CGIなアプリケーションを書くのに、既に用意されたアーキテクチャに不満が
ない方はそのままそれを使っていけばいい、と思います。でも何か物足りない
と思ったのなら、自分でサーバ書くという選択肢もありますよ、と提案します。

幸いHTTPサーバとして実装しなければならない機能はそんなにありません。
Meeting2000で言うならリクエストを受け付けてページを返す、って所だけで
す。そう、作りたいアプリケーションに必要な機能だけ、好きなアーキテクチャ
で作ればいいんです。

# 幸い我々にはRubyがありますし。