Ruby製サーバ"Thin"
Mongrel + EventMachine + Rack
RubyInsideでThinというものが紹介されていたらしいです。俺ははてブ経由で知ったのですが。公式サイトを見る限りではMongrelのパーサーを使って、EventMachineというネットワーク I/O ライブラリを使って、Rack対応らしいです。Mongrelのパーサーを使っているから高速で安全、EventMachine使っているから安定していてスケーラビリティ、とのことでした。
EventMachine
ネットワークプログラミング用のライブラリらしいです。コアはC++で書かれているらしいですが、Rubyで書かれているものもあるようです。
RubyForge: Ruby/EventMachine: Project Info
Young risk taker.: Ruby/EventMachineでネットワークプログラミング
Rack
Webサーバー毎の差を処理してくれるライブラリみたいです。ハンドラーはCGI,FastCGI,WEBrick,Mongrelがあって、Rackを通せば同じコードがどのサーバーでも動くというものみたい。
Rack: a Ruby Webserver Interface
ウノウラボ Unoh Labs: RackでWebアプリのWebサーバー依存を無くす
インストールから動かすまで
Mongrelみたいにscript/serverで立ち上がるようにできるのかもしれませんが、ちょっとそこまでは調べきれていません。とりあえずインストールから起動までをまとめてみた。
動かしてみた感じ
動かしたといっても簡単なテストアプリを走らせただけなんで、Mongrelとかとの速度の違いは全然分かりませんでした。もっと作り込んだら分かるんでしょうけども・・・・・・。