問題タブ [nio]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Java nio を使用して完全なサーバー クライアント通信を作成する方法
私はJava NIOが初めてです。Java NIO を使用して単純なサーバー クライアント通信プログラムを作成する必要があります。
サンプル プログラムやリンクはありますか?
java - ファイル制限を増やすことなく、Javaで20000クライアントを開くにはどうすればよいですか?
ソケットチャネルを開くときはいつでも。クライアントが受け入れる場合、1つのファイル記述子が内部で作成されるため、Linuxで最大1024のクライアントを作成できます。
しかし、Linuxでファイル記述子の制限を増やすことなく(ulimit -n 20000)、より多くのクライアントを作成したいのですが、Javaでより多くのソケットを作成するにはどうすればよいですか?
java - Java NIO での非同期チャネルのクローズ
単純な nio ベースの Java サーバーがあるとします。例(簡略化されたコード):
したがって、これは単純なシングル スレッドのノンブロッキング サーバーです。
問題は次のコードにあります。
同じスレッド(接続と読み取りデータを受け入れるスレッド)でチャネルを閉じると、すべて正常に動作します。しかし、別のスレッドで接続が閉じられたときに問題が発生しました。例えば
このシナリオでは、ソケットがサーバーで TIME_WAIT 状態、クライアントで ESTABLISHED 状態になりました。そのため、接続が正常に閉じられません。何が問題なのですか?私が逃したものは何ですか?
java - SSL とソケットチャネル
理想的には、単純なSSLSocketChannel
.
通常のメッセージを読み書きするコンポーネントを既に持っていますがSocketChannel
、これらの接続の一部では、ネットワーク上で SSL を使用する必要があります。ただし、これらの接続に対する操作は同じです。
SSLSocketChannel
無料の実装(適切なセレクターを使用)または同様のものを知っている人はいますか?私はこれを見つけましたが、ベンダーが SUN ではないため、セレクターはそれを受け入れません。
単純なオブジェクトを介したネットワーク データの挿入と取得から read_from/writing_to ネット ロジックを切り離して、腹を立てSSLEngine
ずに a を使用するようにしていますが、それを正しく実装するのは本当に難しいです。 SSLプロトコルの内部...
java - ファイルの読み取りが完了したことを SocketChannel はどのように認識しますか?
クライアントからデータを読み取るために、ソケットチャネルと NIO の概念を使用しています。
ファイルの読み取りが完了したことをソケット チャネルはどのように認識しますか?
データが小さい場合は一度にデータを読み取っていますが、データが大きい場合は、データを断片的に読み取って最終的に同じデータを取得します。チャネルがデータの終わりをどのように理解しているかを知りたいです。
ファイルの読み込みがいつ完了したかを知る方法はありますか?
java - ソケットチャネルにデータを書き込む方法
javanioを使用してクライアントからデータを送受信するための小さな作業プログラムはありますか。
実際、ソケットチャネルに書き込むことはできませんが、受信データを読み取ることはできます。ソケットチャネルにデータを書き込む方法
ありがとうDeepak
java - Java で SocketChannel を使用して \n 送信してから読み取る方法
SocketChannel
クライアント/サーバー アプリケーションに Java クラスを使用しています。データを送受信できます。しかし、データに含まれている場合'\n'
、正しいデータを読み取れません。例えば
US-ASCII デコードを使用しています。この種の問題をどのように克服できますか?
ありがとう、ディーパック
java - Java nio ソケットチャネルを使用して大きなデータを書き込む際の問題
java nio を使用して小さなデータを送信できます。
しかし、非常に大きなデータを送信したい場合、ソケット チャネルは正常に機能しませんでした。
すべてのデータが送信されます。
サーバーからデータを読み取りたいので、BufferedInputStreaReader.readLine(); を使用しています。この場合、エラーは発生せず、送信したデータを取得できません
ありがとうディーパック
java - ソケットで巨大なデータを読み取り、socketchannel にも書き込む方法
ソケットの DataInputStream を使用して非常に大きなデータを読み取る方法 データが String 形式で、長さが 1,00,000 文字を超える場合。
また、JavaでSocketChannelを使用してそのビッグデータを書き込む方法は?
java - NIOでのスレッド実装に必要なヘルプ
1つのスレッドを使用してクライアントからデータを読み取り、別のスレッドを使用してクライアントにデータを書き込むNIOServerを作成したいと思います。また、クライアント接続の受け入れは他のスレッドで行われます。
オンラインヘルプはありますか
ありがとうDeepak