2010-11-20 10 views
3

誰でもJava用のnode.jsスタイルのWebサーバーフレームワークを知っていますか? Webリクエストを処理している間にノンブロッキングコールバック動作を実行すると、Webサーバーレベルで深いサポートが必要になることに気づきました。私はnode.jsに興味がありますが、データの永続化を行うWebサーバーがある場合、Javaが提供する静的型システムを利用したいと思います。しかし、私はnon-blocking ioのスケーラビリティが必要です。ノンブロッキングio webserver/java for framework

答えて

2

Grizzlyあなたが探しているものかもしれません。あなたもasynchronous support since 3.0を提供していますサーブレットAPIを使用することに興味があるなら

また、それはそのまともなservletcontainersを知って良いかもしれApache Tomcat 7Oracle Glassfish 3のように(ちょうどカバーの下にグリズリーを利用することにより、多くの場合)だけでなくNIOをサポートしています。

1

多分あなたはまったくそれを望まないでしょう。 「スケーラブルなNIO」は膨大な数のクライアントまで実際にその利益をもたらさないという証拠がたくさん出ています。 select()とfriendは、計算単位がスレッドではなくプロセスであったときに設計されたことを忘れないでください。 1日目から数十万回の接続が発生しない限り、まずjava.netを構築してから評価します。

+0

あなたはnode.jsについて考えるノンブロッキングioのメリットは後で表示されないと言っていますか?それとも、NIOにコメントしていますか? – SeekingNonblockingIo

+0

私はNIOにコメントしています。 – EJP

1

Deft

特長

  • 専門と同時接続数千人のために最適化されました。 (C10k)(C500k)
  • ピュアJava NIOを使用した(java.nioの&いるjava.nio.channels)
  • 非同期(非ブロッキングI/O)
0

が、私は自分自身に同じ質問をして、代わりにJava EEコンテナにサーブレットとejbをデプロイする方法と同様に、ソフトウェアコンポーネントをnioサーバーにデプロイするためのフレームワークを作成する方法を見てきました。私はhttp://blog.maxant.co.uk/pebble/2011/05/22/1306092969466.htmlでブログを書いています。

1

私のこれを取るのはプレイです!フレームワーク(http://www.playframework.com/を参照)。 JavaおよびScalaでの開発をサポートします。 PlayはNettyの上に構築されています(http://netty.io/参照)。それ自体がNIO(Non-Blocking IO)クライアント/サーバーフレームワークです。 Future(将来のある時点で発生する可能性のあるものへの非同期操作/読み取りハンドルの結果)およびこの問題を解決するための約束(書込み可能Future)(http://en.wikipedia.org/wiki/Futures_and_promisesを参照してください)

関連する問題