(57)【要約】【課題】周期転送の系間同期を効率化すること。【解決手段】共有メモリ更新頻度管理部１３が、共有メモリ１２に記憶された更新データの更新頻度を管理し、転送周期決定部１４が、その更新頻度に応じて更新データの転送周期を決定し、周期転送実行制御部１６が、その決定された転送周期で更新データを転送する。【選択図】図１
2013250591.tif 000002
【特許請求の範囲】
【請求項１】
ＡＣＴ系サーバとＳＢＹ系サーバを有する二重化制御システムにおいて、
前記ＡＣＴ系サーバは、
更新データを記憶する記憶手段と、
前記更新データの更新頻度を管理する管理手段と、
前記更新頻度に応じて前記更新データの転送周期を決定する決定手段と、
前記記憶手段から更新データを読み出して、決定された転送周期で前記更新データを転送する周期転送手段と、
を有することを特徴とする二重化制御システム。
【請求項２】
前記周期転送手段は、
データを短周期で転送する短周期転送手段と、長周期で転送する長周期転送手段と、を有し、
前記決定手段は、
前記更新データの更新頻度が高いか低いかを判定し、更新頻度が高い場合に当該更新データの転送処理を前記長周期転送手段に割り付けることを特徴とする請求項１記載の二重化制御システム。
【請求項３】
ＡＣＴ系サーバとＳＢＹ系サーバで行う二重化制御方法において、
前記ＡＣＴ系サーバは、
更新データを記憶手段に記憶する記憶ステップと、
前記更新データの更新頻度を管理する管理ステップと、
前記更新頻度に応じて前記更新データの転送周期を決定する決定ステップと、
前記記憶手段から更新データを読み出して、決定された転送周期で前記更新データを転送する周期転送ステップと、
を有することを特徴とする二重化制御方法。
【請求項４】
データを短周期で転送する短周期転送手段と、長周期で転送する長周期転送手段と、を有し、
前記決定ステップは、
前記更新データの更新頻度が高いか低いかを判定し、更新頻度が高い場合に当該更新データの転送処理を前記長周期転送手段に割り付けることを特徴とする請求項３記載の二重化制御方法。
【請求項５】
請求項３又は４記載の二重化制御方法をコンピュータに実行させることを特徴とする二重化制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、二重化制御システムでデータを系間同期する技術に関する。
【背景技術】
【０００２】
通信サービス等を提供する制御システムでは、故障が発生してもそのサービスを継続して提供するために二重化されることがある。このような二重化制御システムは、そのサービスを実行するＡＣＴ系と、その実行を待機するＳＢＹ系から構成される。ＳＢＹ系において、ＡＣＴ系の故障時にフェールオーバして迅速にサービスを継続可能とするための処理を行うことから、ＡＣＴ系では、そのサービスの継続に必要なデータを同期対象データとして共有メモリに書き込み、ＳＢＹ系に対して周期転送処理が実行される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２８６９５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＡＣＴ系でのデータ更新により同期対象データが発生すると一定周期で転送処理が実行されるが、データの更新頻度はまちまちであることから、更新頻度の高いデータはその頻度が低いデータよりも頻繁に転送されることになる。
【０００５】
そして、同期対象データが増加すると転送可能域の最大値を超えてしまうため、それを超過したデータ分は次周期扱いとなり、同期処理が停滞してしまう。
【０００６】
すなわち、障害発生時において、フェールオーバするまでに更新データをＡＣＴ系からＳＢＹ系に転送できればよいが、全ての同期対象データが同じ周期で転送されるため、頻繁に更新されるデータが多い場合には、他の同期対象データを転送できなくなるという課題があった。
【０００７】
このような課題に対し、特許文献１によれば、ＣＰＵ使用率が低い時に同期対象データを転送する技術が開示されているが、同期転送に係るデータ量は何ら削減等されないことから、転送データ量が増加した場合には対応できなかった。
【０００８】
本発明は、上記を鑑みてなされたものであり、その課題とするところは、周期転送の系間同期を効率化することにある。
【課題を解決するための手段】
【０００９】
請求項１記載の二重化制御システムは、ＡＣＴ系サーバとＳＢＹ系サーバを有する二重化制御システムにおいて、前記ＡＣＴ系サーバは、更新データを記憶する記憶手段と、前記更新データの更新頻度を管理する管理手段と、前記更新頻度に応じて前記更新データの転送周期を決定する決定手段と、前記記憶手段から更新データを読み出して、決定された転送周期で前記更新データを転送する周期転送手段と、を有することを特徴とする。
【００１０】
本発明によれば、更新頻度に応じて更新データの転送周期を決定するため、周期転送の系間同期を効率化することができる。
【００１１】
請求項２記載の二重化制御システムは、請求項１記載の二重化制御システムにおいて、前記周期転送手段は、データを短周期で転送する短周期転送手段と、長周期で転送する長周期転送手段と、を有し、前記決定手段は、前記更新データの更新頻度が高いか低いかを判定し、更新頻度が高い場合に当該更新データの転送処理を前記長周期転送手段に割り付けることを特徴とする。
【００１２】
本発明によれば、更新頻度が高い場合に更新データの転送処理を長周期転送手段に割り付けるため、短周期転送時（通常周期転送時）の転送データ量が低減し、より多くのアドレスの更新データを転送することが可能となる。
【００１３】
請求項３記載の二重化制御方法は、ＡＣＴ系サーバとＳＢＹ系サーバで行う二重化制御方法において、前記ＡＣＴ系サーバは、更新データを記憶手段に記憶する記憶ステップと、前記更新データの更新頻度を管理する管理ステップと、前記更新頻度に応じて前記更新データの転送周期を決定する決定ステップと、前記記憶手段から更新データを読み出して、決定された転送周期で前記更新データを転送する周期転送ステップと、を有することを特徴とする。
【００１４】
本発明によれば、更新頻度に応じて更新データの転送周期を決定するため、周期転送の系間同期を効率化することができる。
【００１５】
請求項４記載の二重化制御方法は、請求項３記載の二重化制御方法において、データを短周期で転送する短周期転送手段と、長周期で転送する長周期転送手段と、を有し、前記決定ステップは、前記更新データの更新頻度が高いか低いかを判定し、更新頻度が高い場合に当該更新データの転送処理を前記長周期転送手段に割り付けることを特徴とする。
【００１６】
本発明によれば、更新頻度が高い場合に更新データの転送処理を長周期転送手段に割り付けるため、短周期転送時（通常周期転送時）の転送データ量が低減し、より多くのアドレスの更新データを転送することが可能となる。
【００１７】
請求項５記載の二重化制御プログラムは、請求項３又は４記載の二重化制御方法をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１８】
本発明によれば、周期転送の系間同期を効率化することができる。
【図面の簡単な説明】
【００１９】
【図１】二重化制御システムの機能ブロック構成を示す図である。
【図２】ＡＣＴ系サーバの処理フローを示す図である。
【図３】周期転送更新テーブルを示す図である。
【発明を実施するための形態】
【００２０】
以下、本発明を実施する一実施の形態について図面を用いて説明する。但し、本発明は多くの異なる様態で実施することが可能であり、本実施の形態の記載内容に限定して解釈すべきではない。
【００２１】
図１は、本実施の形態に係る二重化制御システム１の機能ブロック構成を示す図である。本二重化制御システム１は、提供サービスを実行しているＡＣＴ系サーバ１００と、その実行を待機しているＳＢＹ系サーバ３００とで主に構成される。
【００２２】
これら二重化された２つのサーバ１００，３００は、系間ネットワーク５００を介して相互通信可能に接続され、ＡＣＴ系が故障した場合でもその提供サービスを継続するため、ＡＣＴ系からＳＢＹ系に処理元が移行し、ＡＣＴ系とＳＢＹ系を相互に入れ替えることができる（フェールオーバ機能）。以下、各サーバ１００，３００の機能を説明する。
【００２３】
ＡＣＴ系サーバ１００は、提供サービス用のプロセスを実行するユーザプロセス実行部１１と、ユーザプロセス実行部１１によって更新されたデータを記憶する共有メモリ１２と、その更新データの更新頻度を管理する共有メモリ更新頻度管理部１３と、その更新頻度に応じて更新データの転送周期を決定する転送周期決定部１４と、決定された更新データの転送周期を保存する周期転送更新テーブル１５と、共有メモリ１２から更新データを読み出して、周期転送更新テーブル１５に基づき、転送周期決定部１４によって決定された転送周期で更新データをＳＢＹ系サーバ３００に転送する周期転送実行制御部１６と、で主に構成される。
【００２４】
尚、周期転送実行制御部１６は、異なる周期でデータを転送する複数の周期転送手段を持つ。本実施の形態では、Ｔ１秒周期で周期転送を行う通常周期転送実行制御部と、Ｔ２（Ｔ２＞Ｔ１）秒周期で周期転送を行う長周期転送実行制御部とを備える。Ｔ１はＴ２よりも小さい値であるため、通常周期転送実行制御部は長周期転送実行制御部よりも短い周期でデータを転送する。
【００２５】
ＳＢＹ系サーバ３００は、系間ネットワーク５００を介してＡＣＴ系サーバ１００から転送された更新データを受信して共有メモリ３２に書き込む周期転送実行制御部３１と、書き込まれた更新データを記憶する共有メモリ３２と、共有メモリ３２の更新データを用いてＡＣＴ系サーバ１００と同じ提供サービス用のプロセスを実行するユーザプロセス実行部３３と、で主に構成される。
【００２６】
尚、このようなＡＣＴ系サーバ１００とＳＢＹ系サーバ３００は、メモリ等の記憶手段、ＣＰＵ等の計算・制御手段、モニタ等の画面表示手段を具備するコンピュータで実現できる。また、それら各サーバ１００，３００を構成する上記各機能部の処理は、プログラムによって実行される。
【００２７】
次に、ＡＣＴ系サーバ１００の動作を説明する。図２は、ＡＣＴ系サーバ１００の処理フローを示す図である。
【００２８】
最初に、共有メモリ更新頻度管理部１３により、ユーザプロセス実行部１１によって更新された共有メモリ１２の更新時刻が検出され、更新時間間隔値Ｂが更新される（ステップＳ１）。
【００２９】
例えば、提供サービス実行中にあるデータが更新された場合、ユーザプロセス実行部１１によってそのデータを記憶している共有メモリ１２内のメモリデータＭが更新される。その際、そのメモリデータＭの更新時刻を検出し、前回の更新時刻からの経過時間を用いて更新時間間隔値Ｂを更新する。
【００３０】
尚、メモリデータＭの更新毎に本処理が実行されることから、更新時間間隔値Ｂは、例えば、データ更新毎に測定された経過時間と更新回数を用いて平均値が計算される。
【００３１】
次に、転送周期決定部１４により、更新された共有メモリ１２の更新時間間隔値Ｂが上限閾値Ｂｍａｘよりも小さいか否かがが判定され（ステップＳ２）、上限閾値Ｂｍａｘよりも小さい場合には長周期転送更新フラグＦ２が割り付けられ（ステップＳ３）、それ以外の場合には通常周期転送更新フラグＦ１が割り付けられる（ステップＳ４）。
【００３２】
例えば、共有メモリ１２内の２つの同期対象メモリデータＭのうち、１つ目の同期対象メモリデータＭ１の更新時間間隔値Ｂ１と上限閾値Ｂｍａｘとを比較し、Ｂ１≧Ｂｍａｘの場合には更新頻度が低いことから、通常周期転送更新フラグＦ１を割り付ける。次に、２つ目の同期対象メモリデータＭ２の更新時間間隔値Ｂ２と上限閾値Ｂｍａｘとを比較し、Ｂ２＜Ｂｍａｘの場合には更新頻度が高いことから、長周期転送更新フラグＦ２を割り付ける。
【００３３】
ここで割り付けられた周期転送更新フラグＦは、メモリデータＭと更新時間間隔値Ｂとに対応付けて周期転送更新テーブル１５に保存される（図３参照）。
【００３４】
次に、周期転送実行制御部１６により、周期転送更新テーブル１５の周期転送更新フラグＦに基づいて、共有メモリ１２の同期対象データがＳＢＹ系サーバ３００に転送される（ステップＳ５）。
【００３５】
すなわち、共有メモリ１２に記憶された複数の同期対象データのうち、周期転送更新フラグＦがＦ１のデータ（メモリデータＭ１）については、通常周期転送実行制御部がＴ１秒周期で転送し、Ｆ２のデータ（メモリデータＭ２）については、長周期転送実行制御部がＴ１よりも長いＴ２秒周期で転送する。
【００３６】
以上がＡＣＴ系サーバ１００の動作である。ＳＢＹ系サーバ３００では、周期転送実行制御部３１がＡＣＴ系サーバ１００から転送された同期対象データを共有メモリ３２に書き込むことにより、二重化制御システム１内の系間同期処理が完了する。
【００３７】
尚、短周期，中周期，長周期等の３種類以上の周期転送手段を用意し、それら各周期に対応する判定用範囲を設け、同期対象データの更新時間間隔値がいずれの範囲に該当するかに応じて各周期転送手段に割り付けてもよい。また、更新時間間隔値を逐次更新するのに代えて、予め用意した固定値を用いて、どの周期転送手段に割り付けるかを決定するようにしてもよい。
【００３８】
本実施の形態によれば、データの更新頻度に応じて更新データの転送周期を決定するため、周期転送の系間同期を効率化することができる。また、更新頻度が高い場合に更新データの転送処理を長周期転送実行制御部に割り付けるため、その更新データは通常周期よりも長い周期で転送されることから、通常周期転送時の転送データ量が低減し、より多くのアドレスの更新データを転送することが可能となる。
【符号の説明】
【００３９】
１…二重化制御システム
１００…ＡＣＴ系サーバ
１１…ユーザプロセス実行部
１２…共有メモリ（記憶手段）
１３…共有メモリ更新頻度管理部（管理手段）
１４…転送周期決定部（決定手段）
１５…周期転送更新テーブル
１６…周期転送実行制御部（周期転送手段）
３００…ＳＢＹ系サーバ
３１…周期転送実行制御部
３２…共有メモリ
３３…ユーザプロセス実行部
５００…系間ネットワーク
Ｓ１〜Ｓ５…ステップ
【図１】
2013250591.tif 000003
【図２】
2013250591.tif 000004
【図３】
2013250591.tif 000005