Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 プログラム作成の手引


付録C.3 マルチスケジューラ機能を使用したシステム構成例

マルチスケジューラ機能を使用すると,スケジューラが原因となるおそれのある問題を解決できます。ここでは,マルチスケジューラ機能を使用したシステム構成について説明します。

〈この項の構成〉

(1) ソケットディスクリプタの不足を解決するシステム構成

スケジューラデーモンに接続するクライアントUAPを分散することで,1スケジューラデーモンが利用するソケットディスクリプタ数を少なくできます。

ソケットディスクリプタの不足を解決するシステム構成例を次の図に示します。

図C‒8 ソケットディスクリプタの不足を解決するシステム構成例

[図データ]

(2) connectシステムコールのエラーを解決するシステム構成

スケジューラデーモンに接続するクライアントUAPを分散することによって,listenシステムコールの待ちキューとして保留されるコネクション確立要求数を少なくできます。

connectシステムコールのエラーを解決するシステム構成例を次の図に示します。

図C‒9 connectシステムコールのエラーを解決するシステム構成例

[図データ]

(3) 回線速度が速いネットワークを有効利用できるシステム(回線速度が異なるネットワークを混在して利用している場合)

回線速度が速いネットワークのクライアントUAPを処理するスケジューラデーモンと,回線速度が遅いネットワークのクライアントUAPを処理するスケジューラデーモンを分けることで,回線速度が速いネットワークを有効に利用できます。

回線速度が速いネットワークを有効利用できるシステム例を次の図に示します。

図C‒10 回線速度が速いネットワークを有効利用できるシステム例

[図データ]

(4) サービス要求メッセージが途切れないシステム

マルチスケジューラ機能を用いて,メッセージ受信処理が滞るスケジューラデーモンを局所化すると,ほかのサービス要求メッセージを滞らせることなくスケジューリングできます。

サービス要求メッセージが途切れないシステム例を次の図に示します。

図C‒11 サービス要求メッセージが途切れないシステム例

[図データ]

(5) 同時実行可能な処理スレッド数を増やしたシステム

マルチスケジューラ機能を用いて,同時に実行できる処理スレッドの数を増やすことができます。これによって,処理スレッド不足による一時的な通信障害やタイムアウトを回避できます。

同時実行可能な処理スレッド数を増やしたシステム例を次の図に示します。

図C‒12 同時実行可能な処理スレッド数を増やしたシステム例

[図データ]