(57)【要約】【課題】ＡＣＴ系サーバに障害が生じた場合でも、より安全、高速、確実に切り替え処理ができるようにする。【解決手段】本発明の冗長システムは、ＡＣＴ系サーバにおいて提供されるサービスの実行に必要なデータが変更されたときに、変更されたデータをＳＢＹ系サーバに与えて同期させる冗長システムにおいて、ＡＣＴ系サーバが、同期対象データを複数に分割した分割領域毎で管理する同期対象データ管理手段と、同期対象データが変更したとき、変更した各分割領域に対する同期要求情報を同期対象データ管理手段に設定する同期要求情報設定手段と、同期対象データ管理手段に設定されている同期要求情報に基づいて、同期対象である分割領域をＳＢＹ系サーバに送信する送信手段とを備え、同期対象データ管理手段がＡＣＴ系サーバの共有メモリ上に配置されることを特徴とする。【選択図】      図１
2006285448.tif 000002
【特許請求の範囲】
【請求項１】
ＡＣＴ系サーバにおいて提供されるサービスの実行に必要なデータが変更されたときに、上記変更されたデータをＳＢＹ系サーバに与えて同期させる冗長システムにおいて、
ＡＣＴ系サーバが、
同期対象データを複数に分割した分割領域毎で管理する同期対象データ管理手段と、
上記同期対象データが変更したとき、変更した上記各分割領域に対する同期要求情報を上記同期対象データ管理手段に設定する同期要求情報設定手段と、
上記同期対象データ管理手段に設定されている上記同期要求情報に基づいて、同期対象である上記分割領域をＳＢＹ系サーバに送信する送信手段と
を備え、
上記同期対象データ管理手段がＡＣＴ系サーバの共有メモリ上に配置されることを特徴とする冗長システム。
【請求項２】
上記同期対象データ管理手段が、
上記同期対象データを上記分割領域毎に記憶する同期対象メモリエリアと、
上記同期対象メモリエリアの上記各分割領域に対する同期要求の有無を管理する同期要求管理部と、
上記同期要求情報設定手段により設定された上記同期要求情報を保持する同期要求情報保持部と
を有することを特徴とする請求項１に記載の冗長システム。
【請求項３】
上記送信手段は、上記同期要求情報保持部を所定タイミングで監視し、保持されている同期要求情報に基づいて、上記同期対象メモリエリア上の同期対象の上記分割領域を割り出して送信することを特徴とする請求項２に記載の冗長システム。
【請求項４】
上記同期要求管理部及び上記同期要求情報保持部は、上記送信手段の起動後、上記送信手段が参照する上記分割領域に対する、上記同期要求情報による同期要求情報の設定を受け付けないことを特徴とする請求項２又は３に記載の冗長システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、冗長システムに関し、例えば、データ・音声統合サービス提供装置におけるものであって、ホスト間で同期対象データをリアルタイムに的確に同期化することができる冗長システムに適用し得る。
【背景技術】
【０００２】
例えば、既存のデータ・音声統合サービス提供装置は、システムの信頼性を保持するために、ＡＣＴ系サーバとＳＢＹ系サーバとを有し、ＡＣＴ系サーバに障害が生じた場合に、提供中のサービスをＳＢＹ系サーバが引き継ぐ冗長構成を備える。
【０００３】
ＡＣＫ系サーバの障害時にＳＢＹ系サーバが同一サービスを提供するためには、ＳＢＹ系サーバがＡＣＴ系サーバが有しているデータと同値のデータを利用できることが必要となる。
【０００４】
特許文献１には、複数のコールエージェント（ＣＡ）間に搭載される呼制御データを一致させると共にそれを一元管理する技術が開示されている。具体的には、オリジナルデータを有する情報サーバを備え、例えば、データ変更事象等が生じた場合に、複数のコールエージェントが情報サーバのオリジナルデータを複製し、各コールエージェントが複製データを実装する技術が開示されている。これにより、各コールエージェントは、それぞれ一致する呼制御データを実装し、利用できる。
【特許文献１】特開２００１−３４５８５０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、ＡＣＴ系サーバに障害が生じた場合、提供中のサービスを中断することなく安全、高速、確実な切り替え処理が必要になる。特に、例えば音声通信等のようにリアルタイム性が要求されるサービスを提供する場合には、より高速、確実な切り替え処理が望まれている。
【０００６】
そのため、ＡＣＴ系サーバに障害が生じた場合でも、より安全、高速、確実に切り替え処理ができるように、メモリ内にあるデータをリアルタイムに同期化するために、トランザクションの転送処理を行なうコンテキストの割り付けができる冗長システムが求められている。
【課題を解決するための手段】
【０００７】
かかる課題を解決するためには、本発明の冗長システムは、ＡＣＴ系サーバにおいて提供されるサービスの実行に必要なデータが変更されたときに、変更されたデータをＳＢＹ系サーバに与えて同期させる冗長システムにおいて、ＡＣＴ系サーバが、同期対象データを複数に分割した分割領域毎で管理する同期対象データ管理手段と、同期対象データが変更したとき、変更した各分割領域に対する同期要求情報を同期対象データ管理手段に設定する同期要求情報設定手段と、同期対象データ管理手段に設定されている同期要求情報に基づいて、同期対象である分割領域をＳＢＹ系サーバに送信する送信手段とを備え、同期対象データ管理手段がＡＣＴ系サーバの共有メモリ上に配置されることを特徴とする。
【発明の効果】
【０００８】
本発明の冗長システムによれば、ＡＣＴ系サーバに障害が生じた場合でも、より安全、高速、確実に切り替え処理ができるように、メモリ内にあるデータをリアルタイムに同期化するために、トランザクションの転送処理を行なうコンテキストの割り付けができる。
【発明を実施するための最良の形態】
【０００９】
（Ａ）実施形態
以下、本発明の冗長システムの実施形態について図面を参照して説明する。
【００１０】
本実施形態は、データ・音声統合サービス装置における複数のホストコンピュータを用いたデータ２重化システムに、本発明の冗長システムを適用した場合である。
【００１１】
（Ａ−１）実施形態の構成
図２は、本実施形態に係るサーバの概略的なハードウェア構成を示すブロック図である。図２に示すように、本実施形態に係るサーバ１００は、ＣＰＵ１１０、メモリ１２０、外部記憶装置１３０、通信部１４０を少なくとも備える。
【００１２】
本実施形態のサーバ１００は、ＣＰＵ１１０がメモリ１２０に格納されているデータ用いて処理プログラムを実行することにより、処理プログラムに係る機能を実現することができる。本実施形態では、処理プログラムはオブジェクト指向言語（例えば、Ｃ＋＋言語等）により構築されたプログラムとする。
【００１３】
図３は、本実施形態のデータ２重化システムの概略的な機能を説明するための機能図である。
【００１４】
図３において、本実施形態のデータ２重化システムの機能は、ＡＣＴ系サーバ１ＡとＳＢＹ系サーバ１Ｂとを有して実現される。ＡＣＴ系サーバ１Ａはメインで利用される装置であり、ＳＢＹ系サーバ１ＢはＡＣＴ系サーバ１Ａに障害等が生じた場合に利用される装置である。
【００１５】
ＡＣＴ系サーバ１ＡとＳＢＹ系サーバ１Ｂとはそれぞれ対応する機能を備え得るが、ＡＣＴ系若しくはＳＢＹ系としての機能を明確に説明するため、図３ではそれぞれのサーバがそれぞれ異なる機能を有するものとして示す。
【００１６】
図３に示すように、ＡＣＴ系サーバ１Ａは、共有メモリ１０Ａ、ユーザプログラム２０Ａ、データ２重化クライアントライブラリ３０Ａ、データ２重化制御部４０Ａ、系構成管理部５０Ａ、２重化開始・停止通知受付ライブラリ６０Ａ、を少なくとも有する。
【００１７】
一方、ＳＢＹ系サーバ１Ｂも、共有メモリ１０Ｂ、ユーザプログラム２０Ｂ、データ２重化クライアントライブラリ３０Ｂ、データ２重化制御部４０Ｂ、傾向性管理部５０Ｂ、２重化開始・停止通知受付ライブラリ６０Ｂ、を少なくとも有する。
【００１８】
共有メモリ１０Ａ及び１０Ｂは、ユーザプログラムの実行に必要なデータやインスタンスを記憶する領域である。また、ＡＣＴ系の共有メモリ１０Ａは、管理ｂｉｔｍａｐテーブル１１Ａ、同期要求キュー１２Ａ、同期対象メモリエリア１３Ａを少なくとも有する。
【００１９】
同期対象メモリエリア１３Ａは、機能実行中に同期が必要なデータやインスタンスを記憶する領域である。ここで、同期とは、ＡＣＴ系とＳＴＢ系との間でデータを同値にすることをいう。従って、ＳＢＹ系１Ｂの共有メモリ１０Ｂにも同期対象メモリエリア１３Ｂがあり、この同期対象メモリエリア１３Ａ及び１３Ｂ間のデータ群は同期している。これにより、ＡＣＴ系からＳＢＹ系に処理が切り替わった後も、ＳＢＹ系において同一データを引き続き利用することができる。
【００２０】
管理ｂｉｔｍａｐテーブル１１Ａは、同期対象メモリエリア１３Ａに生じる、それぞれサイズが異なる複数の仮想的なセグメントへの同期要求の有無を管理するものである。管理ｂｉｔｍａｐテーブル１１Ａは、システム起動時に構築されるものであり、後述するサービスアプリケーションプロセス２１Ａ毎の同期対象メモリエリア１３Ａに生じた各セグメントを管理するものである。また、管理ｂｉｔｍａｐテーブル１１Ａは、同期対象メモリエリア１３Ａのセグメントに対して同期要求があった場合、同期要求があったセグメントについてフラグを立て、同期要求があること示す。
【００２１】
同期要求キュー１２Ａは、サービス開始後、同期対象メモリエリア１３Ａに生じた各セグメントのメモリ変更のトランザクションが発生すると、同期要求されたセグメントの先頭アドレス及びサイズをキューイングするものである。また、同期要求キュー１２Ａは、キューイングした同期要求されたセグメントの先頭アドレス及びサイズを、後述する送信プロセス２２Ａにより先入れ先出しで刈り取られる。
【００２２】
ユーザプログラム２０Ａ及び２０Ｂは、ある一定の機能を実行するためのプログラム群の領域である。また、ユーザプログラム２０Ａ及び２０Ｂは、機能実行に必要なデータ若しくはインスタンスを共通メモリ１０Ａに生成したり、書き込みをしたりするものである。さらに、ユーザプログラム２０Ａ及び２０Ｂは、共通メモリ１０Ａに生じるセグメントＩＤ管理を行なうものである。
【００２３】
本実施形態において、ＡＣＴ系のユーザプログラム２０Ａは、ＡＣＴ系サーバが提供するサービスを実行するためのサービスアプリケーションプロセス２１Ａと、データの更新がされたときに他系（ＳＢＹ系）サーバに対して同期要求を送信する送信プロセス２２Ａとを少なくとも有する。
【００２４】
サービスアプリケーションプロセス２１Ａは、あるサービスを提供するために必要なユーザプロセスであり、ＡＣＴ系サーバ１Ａが提供するサービスに応じた複数のアプリケーションプロセスがユーザプログラム２０Ａに存在しうる。
【００２５】
また、各サービスアプリケーションプロセス２１Ａは、複数のセグメントが生じた同期対象メモリエリア１３Ａを共有メモリ１０Ａ上に保持する。また、各サービスアプリケーションプロセス２１Ａは、同期対象メモリエリア１３Ａの同期データを更新すると、データ更新に係るセグメントについて、共有メモリ１０Ａ上の管理ｂｉｔｍａｐテーブル１１Ａへの同期要求の書き込み処理を行なうものである。
【００２６】
送信プロセス２２Ａは、同期要求キュー１２Ａにキューイングされている同期要求がされたセグメントの先頭アドレス及びサイズを先入れ先出しで刈り取り、その刈り取ったセグメントの先頭アドレス及びサイズに基づいて、同期すべきセグメントを他系サーバに送出するものである。
【００２７】
ここで、送信プロセス２２Ａによる同期要求キュー１２Ａからの刈り取り送信処理を行なうタイミングは、例えば、同期要求キュー１２Ａにキューイングされている同期対象セグメントのサイズの合計が閾値を超えたときや、又は所定時間を経過したときなどを適用できる。
【００２８】
また、送信プロセス２２Ａによる同期対象エリアの送信方法は、同期対象メモリエリア１３Ａが共通メモリ１０Ａにあるため、送信プロセス２２Ａは、サービスアプリケーションプロセス２１Ａと同様に同期対象メモリエリア１３Ａを同一エリアに保持することができ、同期要求キュー１２Ａからの先頭アドレス及びサイズを認識し、同期対象メモリエリア１３Ａの同期対象エリアを他系サーバに送出するようにする。
【００２９】
また、送信プロセス２２Ａは、同期対象エリアを他系サーバに送信すると、管理ｂｉｔｍａｐテーブル１１Ａにおける当該送信したセグメントのフラグをとる。
【００３０】
ＡＣＴ系及びＳＢＹ系のデータ２重化クライアントライブラリ３０Ａ及び３０Ｂは、例えばＴＣＰコネクションでの相互接続機能を有しており、送信プロセス２２Ａから与えられた同期対象エリアを受け取り、同期更新時に同期データの転送又は受信の実行をするものである。また、データ２重化クライアントライブラリ３０Ａ及び３０Ｂは、ユーザプログラム２０ＡへのＡＰＩ提供機能を有する。
【００３１】
ＡＣＴ系のデータ２重化クライアントライブラリ３０Ａは、ＡＣＴ系のユーザプログラム２０Ａから同期ＩＤ及び同期データを受信処理と、ＳＢＹ系サーバ１への転送処理とを非同期で行なうものである。そのため、ＡＣＴ系データ２重化クライアントライブラリ３０Ａは、キュー（ＴＣＰキュー）と送信スレッドを１つずつ保持する。一方、ＳＢＹ系データ２重化クライアントライブラリ３０Ｂは、他系からの同期データ受信処理とＳＢＹ系ユーザプログラム２０Ａへの通知処理とを同期して行なう。
【００３２】
このようにしたのは、ユーザプログラム２０Ａからの本処理の呼び出しに係る処理遅延を少なくするためである。
【００３３】
データ２重化クライアントライブラリ３０Ａ及び３０Ｂは、同期データ管理テーブルを有する。この同期データ管理テーブルは、同期データを識別するための同期ＩＤ、同期データの先頭アドレス、サイズ、ユーザ受信関数、単位データサイズ等を管理項目として構成される。
【００３４】
これにより、ＡＣＴ系データ２重化クライアントライブラリ３０Ａは、ＡＣＴ系ユーザプログラム２０Ａから同期ＩＤと同期データとを受信すると、同期ＩＤに対応する同期データをＳＢＹ系データ２重化クライアントライブラリ３０Ｂに転送する。また、ＳＢＹ系データ２重化クライアントライブラリ３０Ｂは、ＡＣＴ系クライアントライブラリ３０Ａから同期ＩＤ及び同期データを受け取ると、同期ＩＤに基づいて同期データ管理テーブルに登録する。
【００３５】
データ２重化制御部４０Ａ及び４０Ｂは、ＡＣＴ系とＳＢＹ系との間のデータ２重化を制御するものであり、例えば、データ２重化クライアントライブラリ３０Ａ及び３０Ｂのポート番号管理や、後述する系構成管理部５０Ａ及び５０Ｂから２重化開始・停止の通知を受けると、データ２重化クライアントライブラリ３０Ａにデータ２重化の開始・停止を指示するものである。
【００３６】
系構成管理部５０Ａ及び５０Ｂは、２重化開始・停止通知受付ライブラリ６０Ａ及び６０Ｂを有し、データ２重化の開始・停止を通知するものである。
【００３７】
（Ａ−２）実施形態の動作
以下では、ＡＣＴ系サーバ１Ａにおいて、サービスアプリケーションプロセス２１Ａにより、同期対象データについてデータ更新がなされたときに、そのデータの同期化を図るため、同期対象エリア（セグメント）を他系サーバに送出するまでの動作について説明する。
【００３８】
（Ａ−２−１）同期要求の書き込み処理
図１は、サービス開始後、サービスアプリケーションプロセス２１Ａに係る同期要求の書き込み処理を説明する説明図である。
【００３９】
まず、同期対象メモリエリア１３Ａにおいて、それぞれサイズが異なる複数の仮想的なセグメントが発生する。そして、複数の仮想的なセグメントが発生し、システムが起動すると、同期対象メモリエリア１３Ａの各セグメントは、管理ｂｉｔｍａｐテーブル１１Ａによりセグメント毎で管理される。
【００４０】
ここで、同期対象メモリエリア１３Ａは、共有メモリ１０Ａ上に配置されており、サービスアプリケーションプロセス２１Ａは共通メモリ１０Ａ上の同期対象メモリエリア１３Ａを保持することができる。
【００４１】
そして、サービスアプリケーションプロセス２１Ａが実行され、サービスが開始されると、同期対象メモリエリア１３Ａのセグメント毎にメモリ変更のトランザクションが発生する。
【００４２】
例えば、図１において、同期対象メモリエリア１３Ａのセグメント＃２が変更すると、データの同期要求が発生したものとする。
【００４３】
同期要求が発生すると、管理ｂｉｔｍａｐテーブル１１Ａにおけるメモリ変更されたセグメントに対応する管理部分にフラグが立てられ、同期転送中状態であることが示される。また、同時に同期要求されたセグメントの先頭アドレス及びサイズに関する情報が同期要求キュー１２Ａにキューイングされる。管理ｂｉｔｍａｐテーブル１１Ａにおいて同期転送中状態になると、同一セグメントに対する同期要求を受け付けることはできない。
【００４４】
例えば、図１では、セグメント＃２が変更されると、管理ｂｉｔｉｍａｐテーブル１１Ａにおいて、セグメント＃２について「０」を「１」にしてフラグを立てる。また、サービスアプリケーションプロセス２１Ａが管理する同期対象メモリエリア１３Ａ上のセグメント＃２の先頭アドレス及びサイズが同期要求キュー１２Ａにキューイングされる。
【００４５】
同期対象メモリエリア１３Ａ、管理ｂｉｔｍａｐテーブル１１Ａ及び同期要求キュー１２Ａが共有メモリ１０Ａ上にあることから、ＡＣＴ系における別のプロセスが生成している場合でも、これらの情報を共通に認識させることが可能となる。
【００４６】
（Ａ−２−２）他系サーバへの同期要求の送信処理
次に、ＡＣＴ系のユーザプログラム２０Ａにおいて、他系サーバに同期要求を送信する送信プロセス２２Ａが生成される。
【００４７】
図４は、送信プロセス２２Ａによる同期要求の送信処理を説明する説明図である。
【００４８】
送信プロセス２２Ａが生成すると、送信プロセス２２Ａは、所定のタイミングで同期要求キュー１２Ａにキューイングされている同期要求を先入れ先出しで刈り取る。この同期要求キュー１２Ａから同期要求を刈り取るタイミングは、上述したように、同期要求キュー１２Ａにキューイングされている同期対象セグメントのサイズの合計が閾値を超えたときや、又は所定時間を経過したときなどを適用できる。
【００４９】
また、送信プロセス２２Ａが同期要求を同期要求キュー１２Ａから刈り取ると、刈り取ったセグメントの先頭アドレス及びサイズに基づいて、同期対象メモリエリア１３Ａの同期対象エリアを認識し、同期対象エリアを他系サーバに送信する。
【００５０】
ここで、同期対象メモリエリア１３Ａは共有メモリ１０Ａ上にあるので、送信プロセス２２Ａは、サービスアプリケーションプロセス２１Ａと同様に、同期対象メモリエリア１３Ａを同一エリアに保持することができる。よって、送信プロセス２２Ａは、同期要求キュー１２Ａから刈り取った同期すべきセグメントの先頭アドレスに基づいて同期対象メモリエリア１３Ａ中のセグメントを確認し、また同期要求キュー１２Ａからのセグメントサイズにより当該セグメントのサイズを確認することができる。
【００５１】
例えば、図４では、同期要求キュー１２Ａが同期対象としてセグメント＃２の同期要求をキューイングしている。送信プロセス２２Ａは、同期要求キュー１２Ａからセグメント＃２の同期要求を刈り取ると、刈り取った先頭アドレスに基づいて同期対象メモリエリア１３Ａのセグメント＃２を確認し、セグメント＃２のサイズを確認する。
【００５２】
送信プロセス２２Ａにより同期対象エリアの確認がなされると、その同期対象エリアがデータ２重化クライアントライブラリ３０ＡのＴＣＰキューに与えられ、他系サーバに送出される。
【００５３】
同期対象エリアが他系サーバに送出されると、送信プロセス２２Ａは、管理ｂｉｔｍａｐテーブル１１Ａにおけるセグメント＃２のフラグを「１」から「０」に変更する。これにより、同期要求受付可能状態になり、同一セグメントについてサービスアプリケーションプロセス２１Ａによる同期要求書き込み処理の受付を可能とする。
【００５４】
なお、送信プロセス２２Ａによる同期要求キュー１２Ａからの同期要求送信処理が起動されると、管理ｂｉｔｍａｐテーブル１１Ａ及び同期要求キュー１２Ａの内容が変更される。
【００５５】
図３に示すように、管理ｂｉｔｍａｐテーブル１１Ａ及び同期要求キュー１２Ａは共有メモリ１０Ａ上に各サービスアプリケーションプロセス２１Ａに応じて複数面保持され、送信プロセス２２Ａが起動すると、管理ｂｉｔｍａｐテーブル１１Ａ及び同期要求キュー１２Ａが切り替わる。
【００５６】
このように、管理ｂｉｔｍａｐテーブル１１Ａ及び同期要求キュー１２Ａが切り替わることで、サービスアプリケーションプロセス２１Ａは、同期対象エリアの転送中に、送信プロセス２２Ａが参照している当該同期対象エリアと異なるメモリエリアに対する同期要求を書き込むことができる。
【００５７】
これにより、管理ｂｉｔｍａｐテーブル１１Ａを備え、同期対象メモリエリア１３Ａについてセグメント毎の同期要求を管理することにより、同一セグメントに対する、送信プロセス２２Ａによる同期要求送信処理と、サービスアプリケーションプロセス２１Ａによる同期要求書き込み処理とのコンテキスト競合が発生することがなくなるので、提供しているサービスに支障を与えない。
【００５８】
続いて、ＡＣＴ系のサービスアプリケーションプロセス２１Ａ内のメモリフォルトなどのソフトウェア障害が発生した場合の同期要求の引き継ぎについて図面を参照して説明する。
【００５９】
図５は、サービスアプリケーションプロセス２１Ａに障害が生じた場合の送信プロセス２２Ａによる同期要求送信処理について説明する説明図である。
【００６０】
図５に示すように、サービスアプリケーション２１Ａ内にメモリフォルトなどのソフトウェア障害が発生したとする。この場合も、送信プロセス２２Ａは、上述した場合と同様に、所定タイミングで同期要求キュー１２Ａから同期要求を刈り取り、同期対象エリアを送出する。
【００６１】
このとき、同期対象メモリエリア１３Ａ、管理ｂｉｔｍａｐテーブル１１Ａ及び同期要求キュー１２Ａが、共有メモリ１０Ａに配置されているものであるから、サービスアクセスポイントプロセス２１Ａに障害が発生したとしても、その障害が生じるまでにサービスアプリケーションプロセス２１Ａが書き込んだ同期要求を引き継いで他系サーバに送出することができる。
【００６２】
つまり、同期要求キュー１２Ａが共有メモリ１０Ａ上にあるから、送信プロセス２２Ａは、サービスアプリケーションプロセス２１Ａのソフトウェア障害が生じても、共有メモリ１０Ａ上の同期要求キュー１２Ａから同期要求を刈り取ることができる。
【００６３】
また、同期対象メモリエリア１３Ａも共有メモリ１０Ａ上にあるから、送信プロセス２２Ａは、サービスアプリケーションプロセス２１Ａのソフトウェア障害が生じても、共有メモリ１０Ａ上の同期対象メモリエリア１３Ａの同期対象エリアを認識することができる。
【００６４】
さらに、管理ｂｉｔｍａｐテーブル１１Ａも共有メモリ１０Ａ上にあるから、送信プロセス２２Ａは、サービスアプリケーションプロセス２１Ａのソフトウェア障害が生じても、同期要求送信後、共有メモリ１０Ａ上の管理ｂｉｔｍａｐテーブル１１Ａの内容を変更することができる。
【００６５】
これにより、ミッションクリティカルなサービスを実施していたメモリエリアを的確に他系サーバと同期させることができる。
【００６６】
（Ａ−３）実施形態の効果
以上、本実施形態によれば、同期対象メモリエリア１３Ａ、管理ｂｉｔｍａｐテーブル１１Ａ及び同期要求キュー１２Ａを共有メモリ１０Ａに備えることにより、同期データを更新した際に、同期要求情報を共有メモリ１０Ａ上で管理させることができるので、サービスアプリケーションプロセス内で障害が生じても、障害直前までの同期要求情報に基づいて引き続き同期要求を他系サーバに送出し、他系サーバにおけるデータの高速、確実な同期化を図ることができる。
【００６７】
（Ｂ）他の実施形態
（Ｂ−１）上述した実施形態では、ＳＢＹ系サーバを１台のサーバとした場合を例にして説明したが、ＳＢＹ系サーバの設置台数は３台以上であってもよい。
【００６８】
（Ｂ−２）上述した実施形態において、ユーザプログラム２０Ａ及び２０Ｂ、データ２重化制御部データ２重化クライアントライブラリ３０Ａ及び３０Ｂ、データ２重化制御部４０Ａ及び４０Ｂ、系構成管理部５０Ａ及び５０Ｂ、２重化開始・停止通知受付ライブラリ６０Ａ及び６０Ｂは、それぞれのサーバにおけるＯＳ（オペレーティングシステム）により管理されるソフトウェアとして実現可能なものである。
【図面の簡単な説明】
【００６９】
【図１】実施形態のサービスアプリケーションプロセスによる同期要求の書き込み処理を説明する説明図である。
【図２】実施形態のサーバの概略的なハードウェア構成を示すブロック図である。
【図３】実施形態のデータ２重化システムの概略的な機能を示す機能ブロック図である。
【図４】実施形態の送信プロセスによる同期要求の送信処理を説明する説明図である。
【図５】本実施形態のサービスアプリケーションプロセスが障害を生じたときの同期要求の送信処理を説明する説明図である。
【符号の説明】
【００７０】
１Ａ…ＡＣＴ系サーバ、１Ｂ…ＳＢＹ系サーバ、１０Ａ及び１０Ｂ…共有メモリ、１１Ａ…同期要求キュー、１２Ａ…管理ｂｉｔｍａｐテーブル、１３Ａ…同期対象メモリエリア、２０Ａ及び２０Ｂ…、ユーザプログラム、２１Ａ…サービスアプリケーションプロセス、２２Ａ…送信プロセス。
【図１】
2006285448.tif 000003
【図２】
2006285448.tif 000004
【図３】
2006285448.tif 000005
【図４】
2006285448.tif 000006
【図５】
2006285448.tif 000007