(57)【要約】【課題】  オンラインシステムの負荷の偏りを回復させることが可能な技術を提供する。【解決手段】  コネクション型通信を用いて相手システムからの要求を複数のオンラインシステムに分散してトランザクション処理を行なうトランザクション負荷分散処理システムにおけるトランザクション負荷分散処理方法において、通信制御装置が障害回復後に複数のオンラインシステムから負荷情報をネットワーク接続装置により受信して記憶装置へ格納し、前記記憶装置へ格納した負荷情報が高い負荷を示しているオンラインシステムについて、通信制御装置が当該オンラインシステムのコネクションの状態情報を記憶装置から読み出してそのコネクションの切断可否を判断し、通信制御装置が負荷の高いオンラインシステムのコネクションを負荷の低いオンラインシステムへネットワーク接続装置により切り替えるものである。【選択図】図１
2009003825.tif 000002
【特許請求の範囲】
【請求項１】
コネクション型通信を用いて相手システムからの要求を複数のオンラインシステムに分散してトランザクション処理を行なうトランザクション負荷分散処理システムにおけるトランザクション負荷分散処理方法において、
通信制御装置が障害回復後に複数のオンラインシステムから負荷情報を受信して記憶装置へ格納し、前記記憶装置へ格納した負荷情報が高い負荷を示しているオンラインシステムについて、通信制御装置が当該オンラインシステムのコネクションの状態情報を記憶装置から読み出してそのコネクションの切断可否を判断し、通信制御装置が負荷の高いオンラインシステムのコネクションを負荷の低いオンラインシステムへネットワーク接続装置により切り替えることを特徴とするトランザクション負荷分散処理方法。
【請求項２】
障害となったオンラインシステムが回復した際に各オンラインシステムが負荷情報をネットワーク接続装置により通信制御装置へ送信することを特徴とする請求項１に記載されたトランザクション負荷分散処理方法。
【請求項３】
前記通信制御装置が、相手システムと通信制御装置との間のコネクションとは別に確立した前記オンラインシステムと通信制御装置との間のコネクションについて前記コネクションの切り替えを行うことを特徴とする請求項１または請求項２のいずれかに記載されたトランザクション負荷分散処理方法。
【請求項４】
コネクション型通信を用いて相手システムからの要求を複数のオンラインシステムに分散してトランザクション処理を行なうトランザクション負荷分散処理システムにおいて、
通信制御装置が障害回復後に複数のオンラインシステムから負荷情報をネットワーク接続装置により受信して記憶装置へ格納する負荷情報取得処理部と、前記記憶装置へ格納した負荷情報が高い負荷を示しているオンラインシステムについて、通信制御装置が当該オンラインシステムのコネクションの状態情報を記憶装置から読み出してそのコネクションの切断可否を判断するプロトコル制御処理部と、通信制御装置が負荷の高いオンラインシステムのコネクションを負荷の低いオンラインシステムへネットワーク接続装置により切り替えるコネクション制御処理部とを備えることを特徴とするトランザクション負荷分散処理システム。
【請求項５】
コネクション型通信を用いて相手システムからの要求を複数のオンラインシステムに分散してトランザクション処理を行なうトランザクション負荷分散処理システムにおけるトランザクション負荷分散処理方法をコンピュータに実行させる為のプログラムにおいて、
通信制御装置が障害回復後に複数のオンラインシステムから負荷情報をネットワーク接続装置により受信して記憶装置へ格納し、前記記憶装置へ格納した負荷情報が高い負荷を示しているオンラインシステムについて、通信制御装置が当該オンラインシステムのコネクションの状態情報を記憶装置から読み出してそのコネクションの切断可否を判断し、通信制御装置が負荷の高いオンラインシステムのコネクションを負荷の低いオンラインシステムへネットワーク接続装置により切り替えるトランザクション負荷分散処理方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコネクション型通信を用いて相手システムからの要求を複数のオンラインシステムに分散してトランザクション処理を行なうシステムで、障害発生時に負荷を分散させるトランザクション負荷分散処理技術に関するものである。
【背景技術】
【０００２】
従来のトランザクション負荷分散処理システムとしては、通信によってデータを複数の処理装置で分散処理させるシステムにおいて、処理装置に障害が発生した際、処理装置毎に再処理を実行できる技術がある（例えば特許文献１を参照）。
【０００３】
【特許文献１】特開２００６−２８５５７６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記背景技術では以下に掲げる問題点があった。これらのトランザクション負荷分散処理システムは、障害発生時に切り替えたコネクションに対して、障害回復後のオンラインシステムへ再接続させるという考慮がされておらず、障害発生以降負荷の偏りが生じてしまうものであった。その為、障害が発生したオンラインシステムを再開始した際に、相手システムとのコネクションの切断等の作業をオペレータにより介入させる必要があるという問題点があった。
【０００５】
本発明の目的は上記問題を解決し、オンラインシステムの負荷の偏りを回復させることが可能な技術を提供することにある。本発明の他の目的はコネクションの切り替えを相手システムに意識させることなく行うことが可能な技術を提供することにある。
【課題を解決するための手段】
【０００６】
本発明は、コネクション型通信を用いて相手システムからの要求を複数のオンラインシステムに分散してトランザクション処理を行なうトランザクション負荷分散処理システムにおいて、障害回復後に負荷の高いオンラインシステムのコネクションを負荷の低いオンラインシステムへ切り替えるものである。
【０００７】
本発明では、上記目的を達成する為に、トランザクション負荷分散処理システムにおいて、障害が回復したことを通信制御装置に通知する手段、及び各オンラインシステムに対し、負荷情報の送信要求を通知する手段、及び各オンラインシステムのプロトコルを制御する手段、及び前記情報からコネクションの切り替えを行なう手段を備えることで上記課題を解決した。
【発明の効果】
【０００８】
従来のトランザクション負荷分散処理システムにおいて、オンラインシステムに障害が発生した場合、他オンラインシステムに対して処理を切り替えることから負荷が増大するが、本発明によるトランザクション負荷分散処理システムでは、障害回復後にコネクションの切り替えを実施することによりオンラインシステムの負荷を均等にする事が可能となる為、システムの稼働率を高めることが出来る。本発明の更に他の態様では、トランザクション負荷分散処理システムの障害発生時において、相手システムに対しコネクションの切り替えを意識させることなくオンラインシステムの負荷を均等に出来るという利点がある。更に前記の態様では、オペレータの操作を介在させることなくオンラインシステムの負荷を均等に出来ることから、システム運用の簡易化が図れるという利点がある。
【発明を実施するための最良の形態】
【０００９】
以下にコネクション型通信を用いて相手システムからの要求を複数のオンラインシステムに分散してトランザクション処理を行なう一実施形態のトランザクション負荷分散処理システムについて説明する。
【００１０】
図１は本実施形態のトランザクション負荷分散処理システムの全体構成を示す図である。本実施の形態は、相手システム１５０からの処理要求を受ける通信制御装置１００とネットワーク１４０で接続されたオンライン処理を行うオンラインシステム１（１１０）、オンラインシステム２（１２０）、オンラインシステム３（１３０）から構成される。
【００１１】
通信制御装置１００の構成は、ネットワーク接続装置１０１、メモリ１０２、ＣＰＵ１０３、記憶装置１０４から構成される。記憶装置１０４は、コネクション管理テーブル２１０、負荷情報管理テーブル２２０から構成される。前記コネクション管理テーブル２１０は、複数のオンラインシステムと通信制御装置との間におけるコネクション情報から構成されている。また、前記負荷情報管理テーブル２２０は、複数のオンラインシステムにおける負荷情報から構成されている。メモリ１０２には、各オンラインシステムの負荷情報を取得する負荷情報取得処理３００、各コネクション毎のプロトコル制御を行なうプロトコル制御処理４００、オンラインシステムと相手システム１５０とのコネクション制御を行なうコネクション制御処理５００を実行する処理部を備えている。
【００１２】
なお、オンラインシステム１（１１０）オンラインシステム２（１２０）オンラインシステム３（１３０）の構成は全て同じものとする。また、本実施形態のトランザクション負荷分散処理システムの全体構成を示す図１では、３台のオンラインシステムでトランザクション処理を行う例を表しているが、更に複数のオンラインシステムが存在しても良い。本実施形態のオンラインシステムは、ネットワーク接続装置１１１、メモリ１１２、ＣＰＵ１１３から構成される。メモリ１１２には、相手システム１５０からの処理要求を実行する業務処理１１４、障害発生時に障害の回復処理を実行する障害回復処理１１５、通信制御装置１００の負荷情報要求に対して自オンラインシステムの負荷情報を通知する負荷情報通知処理１１６を行う処理部を備えている。
【００１３】
また本実施形態において、前記処理を行う処理部としてコンピュータを機能させる為のプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はＣＤ−ＲＯＭ以外の他の記録媒体でも良い。また前記プログラムを当該記録媒体からコンピュータにインストールして使用しても良いし、ネットワークを通じて当該記録媒体にアクセスして前記プログラムを使用するものとしても良い。
【００１４】
図２は本実施形態のコネクション管理テーブル２１０のデータ構成を示す図である。図２ではコネクション管理テーブル２１０の情報例を表している。
【００１５】
コネクション管理テーブル２１０は、コネクションの通番を示すコネクションＩＤ２１１、相手システム１５０からの処理要求を中継するオンラインシステム名称を示す中継先オンラインシステム名称２１２、及び現在のコネクション型通信におけるプロトコルの状態を示すプロトコルステータス２１３から構成される。
【００１６】
通信制御装置１００は、このコネクション管理テーブル２１０の中継先オンラインシステム名称２１２に従い、相手システム１５０から受けた処理要求をどのオンラインシステムへ振り分けるかを判断し処理要求の転送を実施する。また、オンラインシステムの障害回復後にコネクションの切り替え処理を実行する際、どのコネクションが切り替え可能であるかをプロトコルステータス２１３から判断する。プロトコルステータス２１３の「アイドル」というステータスは、業務プロトコル処理が完結しておりコネクションの切断が可能である事を示している。一方、「業務通信中」というステータスは、業務プロトコル処理中を示しておりコネクションを切断することが不可能である事を示している。以上示した様に、プロトコルステータス２１３はオンライン回復後にコネクションの切り替えを実施する際に参照される情報である。
【００１７】
図３は本実施形態の負荷情報管理テーブル２２０のデータ構成を示す図である。図３では負荷情報管理テーブル２２０の情報例を表している。
【００１８】
負荷情報管理テーブル２２０は、接続先オンラインシステムの通番を示す接続先オンラインＩＤ２２１、オンラインシステム内で相手システム１５０と接続しているコネクション数を示す接続コネクション数２２２、オンラインシステムの負荷情報を示す負荷情報２２３から構成される。
【００１９】
障害回復の通知を受けた通信制御装置１００は、各オンラインシステムからの負荷情報を集め負荷情報管理テーブル２２０を作成する。この負荷情報管理テーブル２２０の負荷情報２２３に従い、負荷の高いオンラインシステムのコネクションを切断し、負荷の低いオンラインシステムへのコネクション接続をすることで、オンラインシステムの負荷を均等にすることが可能となる。
【００２０】
図４は本実施形態の図２のコネクション管理テーブル２１０の情報例、図３の負荷情報管理テーブル２２０の情報例における全体構成のコネクション状態を示す図である。本構成図では、オンラインシステムが３つ存在し相手システム１５０とのコネクションが６つ確立している状態を示している。このうちオンラインシステム１で障害が発生したケースを想定しており、オンラインシステム１は障害が回復した直後でコネクションが１つも確立していない状態を示している。またオンラインシステム１の障害発生によりオンラインシステム１で確立していたコネクションがオンラインシステム２で処理されている事から、オンラインシステム２の負荷が増大しているという例を示している。
【００２１】
コネクションを示す線において、実線は業務通信中のプロトコルステータスを示しており、破線はアイドル中のプロトコルステータスを示している。オンラインシステム２は４つのコネクションが確立しており、そのうち１つのコネクションがアイドル状態であり、残り３つのコネクションが業務通信中であることを示している。また、オンラインシステム３は２つのコネクションが確立しており、そのうち１つのコネクションがアイドル状態であり、残り１つのコネクションが業務通信中であることを示している。
【００２２】
なお、本実施形態の通信制御装置１００は、オンラインシステム１〜３と通信制御装置１００との間のコネクションを、相手システム１５０と通信制御装置１００との間のコネクションとは別に確立しており、オンラインシステム１〜３と通信制御装置１００との間でコネクションの切り替えを行う際に、相手システム１５０とのコネクションとは独立して処理を行うことにより、コネクションの切り替えを相手システム１５０に意識させることなく行うことが可能である。
【００２３】
図５は本実施形態の障害発生から負荷情報が均等になるまでのシーケンスを示す図である。図５に示す様に本実施形態のトランザクション負荷分散処理システムでは、オンラインシステム１に障害が発生した場合（３０１）、オンライン再立ち上げが実行され（３０２）オンラインシステム１が障害から回復する。
【００２４】
障害回復後、オンラインシステム１は通信制御装置１００に障害が回復したことを通知するために回復情報の送信を実行する（３０３）。回復情報を受信した通信制御装置１００は（３０４）、接続されている全オンラインシステムの負荷情報を取得する為に、全オンラインシステムに対して負荷情報通知要求の送信を実行する（３０５）。負荷情報通知要求を受信した各オンラインシステムは、自オンラインシステムにおける負荷情報の送信を実行する（３０６）。
【００２５】
全オンラインシステムから負荷情報の受信を実行した通信制御装置１００は（３０７）、取得した負荷情報からオンラインシステム２が高負荷となっていることを判断し、オンラインシステム２で確立されているコネクションのうちプロトコルステータスからアイドル中となっている切断可能なコネクションを切断する（３０８）。オンラインシステム２のコネクション切断が実行されたことを確認後（３０９）、取得した負荷情報からオンラインシステム１が低負荷となっていることを判断し、コネクションの接続が実行される（３１０）。オンラインシステム１のコネクション接続（３１１）が実行されたことを確認し、一つのコネクションの切り替え処理が完了となる。以上の流れを繰り返すことにより負荷の均等化を実現することが出来る。
【００２６】
図６は本実施形態の負荷情報取得処理３００の流れを示す図である。図６に示す様に、まず負荷情報取得処理３００は、通信制御装置１００に接続されているオンラインシステムの接続先オンラインＩＤを、コネクション管理テーブル２１０のコネクションＩＤ２１１に対応する中継先オンラインシステム名称２１２を参照することで取得する（４０１）。なお、ここではオンラインシステム名称の番号が接続先オンラインＩＤを示しているものとする。
【００２７】
その後、各接続先オンラインＩＤで識別されるオンラインシステムに対して負荷情報要求を送信する（４０２）。その後、負荷情報要求送信先のオンラインシステムからの負荷情報の受信待ちを行う（４０３）。一方、負荷情報要求を受信した（４１０）オンラインシステムの負荷情報通知処理１１６は、自オンラインシステムの負荷情報を通信制御装置１００へ送信する（４１１）。
【００２８】
通信制御装置１００にて負荷情報を受信した後、全接続先のオンラインシステムから負荷情報を受信したかを判別し（４０４）、全てのオンラインシステムから負荷情報を受信するまで繰り返し負荷情報要求の送信処理を行なう。以上の処理により、各オンラインシステムの負荷を均等にする為に必要となる全接続先オンラインシステムの負荷情報を取得して負荷情報管理テーブル２２０へ格納する。
【００２９】
図７は本実施形態のプロトコル制御処理４００の流れを示す図である。図７に示す様にプロトコル制御処理４００は、負荷情報取得処理３００で取得した接続先オンラインシステムの負荷情報が格納されている負荷情報管理テーブル２２０の負荷情報２２３を比較する（５０１）。比較した結果、接続先オンラインシステムの負荷情報に偏りが生じているかどうかを判定する（５０２）。
【００３０】
接続先オンラインシステムの負荷情報に偏りが生じている場合、負荷情報の高いオンラインシステムにおいて接続されている全コネクションについて、以下のループ処理を実行して（５０３）、コネクション管理テーブル２１０の情報からプロトコルステータス２１３の情報をチェックし（５０４）、アイドル状態となっている切断可能なコネクションがないかを判定する（５０５）。すなわち、図２及び３の例の場合では、負荷情報管理テーブル２２０の負荷情報２２３が「高」であるレコードの接続先オンラインＩＤ２２１の「２」を読み出した後、接続先オンラインＩＤが「２」のオンラインシステムの名称である「オンライン２」に該当するプロトコルステータス２１３をコネクション管理テーブル２１０から読み出して、そのプロトコルステータス２１３が「アイドル」であるかを判定する。
【００３１】
当該コネクションのプロトコルステータス２１３がアイドル状態であり切断可能であった場合は、コネクション制御処理５００へ処理を移してコネクションの切り替え処理を実施する。当該コネクションのプロトコルステータス２１３が業務処理中であり切断不可能であった場合は、次のコネクションに対して同様の判定を繰り返し実行する。これらの処理を繰り返すことにより負荷情報が均一になった時点で処理を終了する。以上の処理により、全オンラインシステムの負荷情報の均一化が実施される。
【００３２】
図８は本実施形態のコネクション制御処理５００の流れを示す図である。図８に示す様に、プロトコル制御処理４００から処理の依頼を受けたコネクション制御処理５００は、プロトコル制御処理４００にて切断可能と判断されたコネクションに対して切断要求を送信する（６０１）。その後、切断要求送信先のオンラインシステムからの切断完了の受信待ちを行う（６０２）。一方、切断要求を受信した（６１０）オンラインシステム２（１２０）はコネクションの切断完了を送信する（６１１）。
【００３３】
コネクション制御処理５００では、切断要求送信先のオンラインシステムから切断完了を受信した後、低負荷のオンラインシステム１（１１０）に対して接続要求を送信する（６０３）。すなわち、図３の例の場合では、負荷情報管理テーブル２２０の負荷情報２２３が「低」であるレコードの接続先オンラインＩＤ２２１の「１」を読み出した後、接続先オンラインＩＤが「１」であるオンラインシステム１（１１０）に対して接続要求を送信する。その後、接続要求送信先のオンラインシステム１からの接続完了の受信待ちを行う（６０４）。一方、接続要求を受信した（６１２）オンラインシステム１は、コネクションの接続完了を送信する（６１３）。
【００３４】
コネクション制御処理５００では、接続要求送信先のオンラインシステムから接続完了を受信後、相手システム１５０とのコネクション情報を管理するコネクション管理テーブル２１０の更新をする（６０５）。また負荷情報管理テーブル２２０の接続コネクション数２２２の内容も更新する。以上の処理により、負荷の高いオンラインシステムから負荷の低いオンラインシステムへのコネクションの切り替え処理が実施される。
【００３５】
以上説明した様に、本実施形態のトランザクション負荷分散処理システムによれば、オンラインシステムに障害が発生した際にも各オンラインシステムの負荷が均等になる様に必要な情報を通知し合い、オペレータによる作業の介入を必要とせず負荷の偏りを無くし効率的にトランザクションを処理する事が可能である。
【図面の簡単な説明】
【００３６】
【図１】本実施形態のトランザクション負荷分散処理システムの全体構成を示す図である。
【図２】本実施形態のコネクション管理テーブル２１０のデータ構成を示す図である。
【図３】本実施形態の負荷情報管理テーブル２２０のデータ構成を示す図である。
【図４】本実施形態の図２のコネクション管理テーブル２１０の情報例、図３の負荷情報管理テーブル２２０の情報例における全体構成のコネクション状態を示す図である。
【図５】本実施形態の障害発生から負荷情報が均等になるまでのシーケンスを示す図である。
【図６】本実施形態の負荷情報取得処理３００の流れを示す図である。
【図７】本実施形態のプロトコル制御処理４００の流れを示す図である。
【図８】本実施形態のコネクション制御処理５００の流れを示す図である。
【符号の説明】
【００３７】
１００…通信制御装置、１０１…ネットワーク接続装置、１０２…メモリ、１０３…ＣＰＵ、１０４…記憶装置、１１０…オンラインシステム、１１１…ネットワーク接続装置、１１２…メモリ、１１３…ＣＰＵ、１１４…業務処理、１１５…障害回復処理、１１６…負荷情報通知処理、１２０…オンラインシステム、１３０…オンラインシステム、１４０…ネットワーク、１５０…相手システム、２１０…コネクション管理テーブル、２２０…負荷情報管理テーブル、３００…負荷情報取得処理、４００…プロトコル制御処理、５００…コネクション制御処理、２１１…コネクションＩＤ、２１２…中継先オンラインシステム名称、２１３…プロトコルステータス、２２１…接続先オンラインＩＤ、２２２…接続コネクション数、２２３…負荷情報。
【図１】
2009003825.tif 000003
【図２】
2009003825.tif 000004
【図３】
2009003825.tif 000005
【図４】
2009003825.tif 000006
【図５】
2009003825.tif 000007
【図６】
2009003825.tif 000008
【図７】
2009003825.tif 000009
【図８】
2009003825.tif 000010