うまくいけば、2つの簡単な質問:サーバアーキテクチャサーバ・アプリケーションの作成に関連する
- 開くことができる同時ソケットの数に実用的/理論上の制限はありますか?一度データが到着すると、そのデータを処理するために必要なリソースは無視されます。その妥当性の私は、.NET Framework
- をターゲットにしていた場合は行われ、各接続が永続的に割り当てられている別のスレッドで実行する必要があり、またはスレッドプールを使用する必要がありますか?専用スレッドのアプローチは簡単ですが、100以上のスレッドを1回実行するのは奇妙に思えます。これは容認できる習慣ですか?
は何かアドバイスは私の記憶が正しけれとしてそれらを実装するための非常に最良の方法は、非同期コールバックを使用してReceiveAsync(.NET 3.5)/ BeginReceiveメソッドである(前ソケットに長い時間がなかった)Venatu
あなたは複数の人が、あなたは、接続ごとに少なくとも1つのスレッドが必要になります、一度に接続できるようにしたいと仮定。 – Jordan
着信要求を受け入れる専用のスレッドで、限られた数のスレッドで順番にソケットを循環させることはできませんか? – Venatu
これは可能ですが、長時間接続をしている場合は非常に長いキューを持つリスクがあります。私が「スレッド」と言うとき、私は実際には「非同期的にデータを送受信する方法」を意味するので、ThreadPoolingまたは非同期ソケットも機能します。 – Jordan