2016-07-03 10 views
1

私はVibe.Dの実装がFibersに基づいていることを知っています。 しかし、負荷の高いシナリオがVibe.Dによってどのように処理されるか分かりません。それはVibe.Dのスケジューラで、複数のスレッドにファイバを割り当てるか、すべてのファイバに対して1つのスレッドだけを割り当てるかです。同時リクエストを処理するVibe.Dはマルチスレッドですか?

Fibersの高効率でも多くのCPU時間が浪費されても、1つのスレッドしかすべての着信要求に出席しないため、この考慮事項は非常に重要です。

答えて

5

彼らのフロントページには、イエスの言葉:

http://vibed.org/

このページは詳細着信接続の処理

HTTPサーバー(および分散

http://vibed.org/features#multi-threading

を持っています他のTCPベースのサーバと同じように)メインスレッドではなく、スレッドプールのワーカースレッドを介して着信接続を処理するように指示することができます。プロセス内の異なる接続間で状態を共有する必要がないアプリケーションでは、システムのコア数に応じて1秒あたりの最大要求数が直線的に増加します。この機能は、HTTPServerOption.distributeまたはTCPListenOptions.distribute設定を使用して有効になります。

関連する問題