Hatena::Groupangelos

Angelos in Action RSSフィード

Fork me on GitHub
 | 

2009-09-23

WebアプリでのI/O多重化の使い道

06:55 | WebアプリでのI/O多重化の使い道 - Angelos in Action を含むブックマーク はてなブックマーク - WebアプリでのI/O多重化の使い道 - Angelos in Action WebアプリでのI/O多重化の使い道 - Angelos in Action のブックマークコメント

クローラI/O比率が高いから明白なメリットがあるからわかるんですが、その他Webアプリでこれからどんな場面で使われていくのかは、いまいち想像しきれないなぁと思っていたので、どんなところに需要があるのかなぁと思って少し考えてみました。

1プロセス複数リクエストでのストーリー

リアルタイムWeb系ではc10k問題があるから、WebSocket関係で非同期サーバーの実装がいろいろでるのかもなぁ。そうすると、1プロセスで複数リクエストうけて、その中で継続+I/O多重化でスケーラビリティを保ちながらシンプルにかけるような実装が重要になるというストーリーはあるのかなぁと。

ただ、こうしたときに、perlライブラリではそもそもそんなの意識して書かれていないので、結局ライブラリの実装いちいち追わなくちゃいけなそうでだるそうだなぁという気はしたり。そこらはフルスクラッチ実装なのかなぁという気もしなくはない。若干perlを言語として使う事のメリットが失われる気もしつつ、これは時間が解決する問題なのかなぁとも思った。

前にmalaさんに、FastCGIのメリット・デメリットの話を書いたときに、1プロセスで複数リクエストうけるっていう使い方があるねというコメントをもらったのだけれど、ここに話の一部は繋がるの だろうなぁと。

1プロセス1リクエストでのストーリー

mod_perl + αで使う場面だと、1回のリクエストで多量のI/O多重化をしたいというケースなのかなぁと

とかなのかなぁと。

こっちのほうは、いかにもI/O多重化のメリットを活かしきれないので、あんまメリットはないかなぁという気はしますね。

その他のストーリー

もう少し過激なストーリーとしては、「非同期サーバーが当たり前の時代になって、全てのWebアプリI/O多重化と継続でかくことがWAFレベルでサポートされるようになって、利用者は気にしないレベルでかけるようになる」なんていうストーリーも少しはあるのかなぁと。そうなりだすと、上で書いた全てのストーリーは実現されるのが当たり前になっていると。

# 面白い分野だとは思うので、どんな使い道とストーリーがありえそうなのかをもう少し知りたいところですね。

 |