私は高性能の tcp サーバーを開発するプロジェクトに取り組んでおり、epoll とマルチスレッドを使用することにしました。しかし、私はサーバーの設計が難しいと感じており、今ではこの 2 つの設計に非常に戸惑っています。
1 つのディスパッチャー、いくつかのワーカー、ディスパッチャーは epoll を使用してすべての接続をリッスンし、着信データをワーカーにディスパッチします。ワーカーは IO イベントを処理しません。
1つのリスナーは、リスニングイベントのみを処理し、新しい接続が来ると、それを受け入れてワーカーにディスパッチします.すべてのワーカーはepoll fdを持ち、この新しいソケットをリッスンします.
魔女の方が良いですか、それともより良いデザインですか?
ありがとう!</p>