StoryEdit 開発日誌

ウェブアプリ StoryEditを作ってましたが延期。普通のブログ。

混沌としてきた。

4月から仕事はじまりまして。まったくコードかけなかった。笑

いろいろ投げ捨てて、とりあえず、javaの並列を知りたいと言う事で、
web serverを書くことに。

現在のウェブサーバの潮流は二つあるらしい。一つは、マルチスレッドで受付を待つもの。そして、もう一つは、イベント通知のもの。

イベント通知は、昔でいう、poll/selectなんだけど、現在はC10K問題で、epollがカーネル内部に実装される(bsdだとkqueue)ことになり、実際、かなり昔にepollサーバを書いた事がある。
(epollは、ここがヒットした。http://alpha.mixi.co.jp/2007/10631/

しかし、これでもマルチコアの恩恵は行かせないと言う事で、さらにHaskellでハンドリングをすることで、並列ライブラリの恩恵を活かすウェブサーバがあるとか、ないとか。

あえてjavaでやるのは、epollなんかが、どうやってラップされるのか知らないってこと。C言語はほんとにカーネルと密接に絡めるから、できないことはないと言っても過言ではないが、Javaはどうなんだろう?ってのが興味。(もちろん、JNI使う必要があれば、使う事になるが)


マルチスレッド型+epoll利用をあえてjavaで書く意味があるのかわからないが、とりあえず挑戦中。