2009-09-14 4 views
0

Java NIO Socket Frameworkは、ノンブロッキングIOの汚れの詳細を開発者から隠蔽し、1つのスレッドのみを使用して10000を超える受信ソケットと送信ソケットを処理できるスケーラビリティの高いアプリケーションを構築できます。サーバーサイドのJavaでは、非ブロッキングI/Oが依然として問題となっていますか?

  • はまだJavaの2 SE/EEの典型的なバージョンと痛み非ブロッキングIOのはありますか?

  • このフレームワークはまだ必要かつ有用ですか?

お時間をいただきありがとうございます。

+0

どちらもNIOに使用されていますが、NIOは複雑さを増しています。ソケットサーバーで何をしたいですか? –

答えて

3

さて、NIOは詳細のいくつかを抽象化しています。ノンブロッキングのIOは、あなたの頭を(少なくとも、私はそれがわかる)痛みですが、少なくとも実現可能です。 (個人的に私は、非同期IOの.NETスタイルを好むが、それは別の問題です。)

私は通常IOをブロック使用は:ほとんどのタスクのために、これは私が必要とするすべてであると私は非使用することによって大幅に得られないでしょうIOをブロックする。いくつかのケース(あなたが言及したようなもの)では、あなたのスレッドを抑えたい場合、ノンブロッキングIOが実際には唯一の方法です。

実習で使用するかどうかを判断するために、それについて学び、試してみることをおすすめします。私はそれを使用することをお勧めしませんどこでも ...

1

はい、NIOは非常に便利です。 NIOはやはりやりにくいです。 ニーズに応じて、grizzlyまたはminaのように、NIOをラップするフレームワークの使用を検討できます。 Grizzlyはglassfish appserverのネットワーキングの一部で、 sunからOracleです。

MinaはApache.orgのネットワークアプリケーションフレームワークです。

個人的に私はグリズリーが好きですが、それは私です。

関連する問題