私のアプリケーションでは、接続ごとに約 10 kb/s を送信する必要があります。すべてのパケットは に入れられますstd::deque
。1 つのスレッドが両端キューを反復処理し、 を介してパケット データを送信しますasio::async_write
。
私の質問は、1 つのスレッドで同時に処理できる接続の数です。20 Mbytes/s で送信できますか?
私のアプリケーションでは、接続ごとに約 10 kb/s を送信する必要があります。すべてのパケットは に入れられますstd::deque
。1 つのスレッドが両端キューを反復処理し、 を介してパケット データを送信しますasio::async_write
。
私の質問は、1 つのスレッドで同時に処理できる接続の数です。20 Mbytes/s で送信できますか?
Boost.Asioの作者であるKohlhoffのWebサイトには、パフォーマンスページがあります。Linux-perf-11のグラフを見ると、彼は単一のCPUで1000接続で最大300 Mb /秒のスループットを取得しています。これは、接続あたり10kb/秒の目標をはるかに上回っています。