マルチスケジューラ機能を使用すると,スケジューラが原因となるおそれのある問題を解決できます。ここでは,マルチスケジューラ機能を使用したシステム構成について説明します。
スケジューラデーモンに接続するクライアントUAPを分散することで,1スケジューラデーモンが利用するソケットディスクリプタ数を少なくできます。
ソケットディスクリプタの不足を解決するシステム構成例を次の図に示します。
図C-8 ソケットディスクリプタの不足を解決するシステム構成例
スケジューラデーモンに接続するクライアントUAPを分散することによって,listenシステムコールの待ちキューとして保留されるコネクション確立要求数を少なくできます。
connectシステムコールのエラーを解決するシステム構成例を次の図に示します。
図C-9 connectシステムコールのエラーを解決するシステム構成例
回線速度が速いネットワークのクライアントUAPを処理するスケジューラデーモンと,回線速度が遅いネットワークのクライアントUAPを処理するスケジューラデーモンを分けることで,回線速度が速いネットワークを有効に利用できます。
回線速度が速いネットワークを有効利用できるシステム例を次の図に示します。
図C-10 回線速度が速いネットワークを有効利用できるシステム例
マルチスケジューラ機能を用いて,メッセージ受信処理が滞るスケジューラデーモンを局所化すると,ほかのサービス要求メッセージを滞らせることなくスケジューリングできます。
サービス要求メッセージが途切れないシステム例を次の図に示します。
図C-11 サービス要求メッセージが途切れないシステム例
マルチスケジューラ機能を用いて,同時に実行できる処理スレッドの数を増やすことができます。これによって,処理スレッド不足による一時的な通信障害やタイムアウトを回避できます。
同時実行可能な処理スレッド数を増やしたシステム例を次の図に示します。
図C-12 同時実行可能な処理スレッド数を増やしたシステム例