(57)【要約】【課題】  高信頼メッセージング方式の負荷分散に負荷分散装置を適用し、処理要求が転送された受信側情報処理装置が互いに資源競合を起こすことなく再送を含む要求メッセージを処理することが可能な技術を提供する。【解決手段】  要求メッセージの識別情報に再送フラグのフィールドを設け、メッセージ再送時に再送フラグをＯＮに設定した要求メッセージを通信装置により送信し、受信した要求メッセージの識別情報に再送でないことを示す再送情報が設定されている場合に、当該要求メッセージの識別情報をその受信側情報処理装置のメッセージ受信状態テーブルへ記憶装置により格納し、受信した要求メッセージの識別情報に再送であることを示す再送情報が設定されている場合に、全受信側情報処理装置のメッセージ受信状態テーブルを記憶装置により参照し、その要求メッセージの識別情報がメッセージ受信状態テーブルに既に格納されているかに応じて当該要求メッセージが有効であるかを判定するものである。【選択図】図１
2007334575.tif 000002
【特許請求の範囲】
【請求項１】
メッセージを送受信する際に負荷分散を実現するメッセージ通信方法において、
要求メッセージの識別情報に再送か否かを示す再送情報を含み、メッセージ再送時に再送を示す再送情報を含む要求メッセージを通信装置により送信し、
受信した要求メッセージの識別情報に再送でないことを示す再送情報が設定されている場合に、当該要求メッセージの識別情報をその受信側情報処理装置のメッセージ受信状態テーブルへ記憶装置により格納し、
受信した要求メッセージの識別情報に再送であることを示す再送情報が設定されている場合に、受信側情報処理装置のメッセージ受信状態テーブルを記憶装置により参照し、その要求メッセージの識別情報がメッセージ受信状態テーブルに既に格納されているかに応じて当該要求メッセージが有効であるかを判定することを特徴とするメッセージ通信方法。
【請求項２】
受信した要求メッセージの識別情報に再送であることを示す再送情報が設定されている場合に全受信側情報処理装置のメッセージ受信状態テーブルを記憶装置により参照した結果、その要求メッセージの識別情報が全受信側情報処理装置のどのメッセージ受信状態テーブルにも格納されていない場合に、当該要求メッセージの識別情報をその受信を行った受信側情報処理装置のメッセージ受信状態テーブルへ記憶装置により格納することを特徴とする請求項１に記載されたメッセージ通信方法。
【請求項３】
受信した要求メッセージの識別情報に再送であることを示す再送情報が設定されている場合に全受信側情報処理装置のメッセージ受信状態テーブルを記憶装置により参照した結果、その要求メッセージの識別情報が全受信側情報処理装置のいずれかのメッセージ受信状態テーブルに格納されている場合に、当該要求メッセージの識別情報のメッセージ受信状態テーブルへの格納を行うことなくその要求メッセージに対する応答メッセージを通信装置により送信することを特徴とする請求項１または請求項２のいずれかに記載されたメッセージ通信方法。
【請求項４】
メッセージを送受信する際に負荷分散を実現するメッセージ通信システムにおいて、
要求メッセージの識別情報に再送か否かを示す再送情報を含み、メッセージ再送時に再送を示す再送情報を含む要求メッセージを通信装置により送信する送信側通信処理部と、
受信した要求メッセージの識別情報に再送でないことを示す再送情報が設定されている場合に、当該要求メッセージの識別情報をその受信側情報処理装置のメッセージ受信状態テーブルへ記憶装置により格納し、受信した要求メッセージの識別情報に再送であることを示す再送情報が設定されている場合に、受信側情報処理装置のメッセージ受信状態テーブルを記憶装置により参照し、その要求メッセージの識別情報がメッセージ受信状態テーブルに既に格納されているかに応じて当該要求メッセージが有効であるかを判定する受信側通信処理部とを備えることを特徴とするメッセージ通信システム。
【請求項５】
メッセージを送受信する際に負荷分散を実現するメッセージ通信方法をコンピュータに実行させる為のプログラムにおいて、
要求メッセージの識別情報に再送か否かを示す再送情報を含み、メッセージ再送時に再送を示す再送情報を含む要求メッセージを通信装置により送信し、
受信した要求メッセージの識別情報に再送でないことを示す再送情報が設定されている場合に、当該要求メッセージの識別情報をその受信側情報処理装置のメッセージ受信状態テーブルへ記憶装置により格納し、
受信した要求メッセージの識別情報に再送であることを示す再送情報が設定されている場合に、受信側情報処理装置のメッセージ受信状態テーブルを記憶装置により参照し、その要求メッセージの識別情報がメッセージ受信状態テーブルに既に格納されているかに応じて当該要求メッセージが有効であるかを判定する処理をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はメッセージ通信における負荷分散を実現するメッセージ通信技術に関するものである。
【背景技術】
【０００２】
一般に、ある業務システムを実現する為にはネットワーク上に配置されている複数の業務が連携する必要があり、業務間でメッセージの送受信が発生する。ここで、要求メッセージを送信して処理を依頼するプログラムをクライアントプログラム、要求メッセージを受信して業務処理を実行するプログラムをサーバプログラムと呼ぶ。また、クライアントプログラムとサーバプログラムの間に位置し、ネットワークを介してメッセージ通信を実現するプログラムを通信プログラムと呼ぶ。
【０００３】
メッセージの送受信形態には同期型通信と非同期型通信の２種類ある。同期型通信は、クライアントプログラムとサーバプログラムが同時に稼動している状態でメッセージを送受信する方式であり、クライアントプログラムとサーバプログラムは同期して動作する。即ち、クライアントプログラムは、サーバプログラムにメッセージが到達しサーバプログラムから応答メッセージを受信した段階で処理を終了する。ここで実際にネットワークを介してメッセージの送受信を行なうのは通信プログラムである。一方、非同期型通信はクライアントプログラムとサーバプログラムが互いに相手の稼動状態を意識しないでメッセージを送受信する方式であり、クライアントプログラムとサーバプログラムは非同期に動作する。即ち、通信プログラムがメッセージの受け渡しを仲介し、クライアントプログラムは受信側を指定してメッセージの送信を通信プログラムに依頼した段階で処理を終了する。サーバプログラムは、任意のタイミングで通信プログラムからメッセージを受け取る。この時のネットワークを介したメッセージ伝達は、送信側の通信プログラムが受信側の通信プログラムにメッセージを送信し、受信側通信プログラムから応答メッセージを受信することで完了する。
【０００４】
これらのメッセージ通信は、ネットワーク障害、サーバプログラムのダウン等の様々な障害により失敗する可能性がある。メッセージ通信に失敗すると、同期型通信、非同期型通信のどちらの通信形態においても、メッセージの欠落、メッセージの２重送信が発生する可能性が出てくる。
【０００５】
近年、インターネットの普及に伴い、銀行口座への入出金処理等「確実に１回限りのメッセージ送信を保証する」ことが求められるサービスが利用され始めている。そのため、メッセージ通信に高い信頼性が求められておりメッセージ通信規約の標準化が進められている。
【０００６】
この様な標準化の例として標準化団体ＯＡＳＩＳ（Organization for the Advancement of Structured Information Standards）で標準化されたWebサービスのSOAP(Simple Object Access Protocol)通信の高信頼化を実現するメッセージング規約WS-Reliabilityがある。「確実に１回限りのメッセージ送信を保証する」為に、（ｉ）配送保証、（ii）重複防止、の方法が定められている。送信側の通信プログラムは受信側の通信プログラムから確認応答を受信するまでメッセージを再送することで（ｉ）を保証する。受信側の通信プログラムはメッセージに付与された識別子を判定し、以前に受信していない識別子の場合は受信メッセージをサーバプログラムに渡し確認応答を送信側の通信プログラムに送信し、以前に受信した識別子の場合は受信メッセージを破棄した後に確認応答を送信側の通信プログラムに送信することで（ii）を保証する。この高信頼化を実現するメッセージング方式を高信頼メッセージングと呼ぶことにする。特許文献１にも高信頼メッセージングの方式が記述されている。
【０００７】
ところで、多数のクライアントプログラムからの処理要求が多量に発生するシステムでは、クライアントプログラムが動作する装置とサーバプログラムが動作する装置との間に負荷分散装置を設置し、サーバプログラムが動作する処理装置を複数配置することで、処理要求の負荷を複数装置に分散させる構成をとるのが一般的である。負荷分散装置はクライアントプログラムが動作する装置からのコネクションを負荷分散装置で終端し、サーバプログラムが動作する装置の負荷状況等に基づき適切な装置を選択して処理を割り当てることでサーバ側装置の負荷を分散する。負荷分散装置は、クライアント側装置のコネクションとサーバ側装置のコネクションを個別に対応付け、そのデータを保持している。負荷分散装置は、クライアント側装置から処理要求を受信するとコネクションが対応づけられているサーバ側装置にその処理要求を転送し、サーバ側装置から応答を受信すると対応するクライアント側装置にその応答を転送する。負荷分散装置を使用すると、クライアント側装置はサーバ側装置のアドレスを意識することはなく、負荷分散装置のアドレスのみを意識する。クライアント側装置からの処理要求はどのサーバ装置に転送されるかは不定である。
【０００８】
ここで、高信頼メッセージング方式を使用した通信の負荷分散は、負荷分散装置を利用して実現することができない。なぜなら、（ii）重複防止を実現する為に、受信側の通信プログラムは以前に受信したメッセージの識別子を記憶しておき、送信側の通信プログラムから同一メッセージが送信されてきた時はこの識別子で重複受信かどうかを判定しているためである。送信側の通信プログラムから再送されたメッセージが負荷分散装置を経由することで、別のサーバ側装置に転送されると、転送された装置の受信側の通信プログラムでは以前受信したことがないメッセージであるためサーバプログラムにメッセージを渡してしまい重複処理が発生してしまうからである。そのため、特許文献２に示す様に高信頼化を実現するメッセージング方式では独自の負荷分散方式を使用している。
【０００９】
【特許文献１】特開２００５−５６２６０号公報
【特許文献２】特開２００５−２５４８１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
前記の様に従来技術において「確実に１回限りのメッセージ送信を保証する」高信頼メッセージング方式を利用した通信の負荷分散では独自の方式を使用することになる。独自の方式では、クライアント側の通信プログラムにサーバ側の負荷情報を転送する必要がありネットワーク負荷がかかるという問題がある。また、システム内に負荷分散装置を利用した高信頼化を必要としない通信方式が存在する場合は、２つの負荷分散機構を運用することとなり運用負荷が増大する。
【００１１】
また、（ii）重複防止の実現の為にサーバ側の通信プログラムが以前に受信したメッセージの識別子を記憶しておく箇所を複数のサーバ側通信プログラムで共有すれば、高信頼化を実現するメッセージング方式において負荷分散装置を利用できる。しかし、共用データを複数のサーバ装置から更新するため資源のアクセス競合が発生し、サーバ装置を複数台で分散して処理する効果が薄れるとう問題がある。
【００１２】
本発明の目的は上記問題を解決し、メッセージ方式の負荷分散に負荷分散装置を適用し、処理要求が転送された受信側情報処理装置が互いに資源競合を起こすことの少ないメッセージ処理が可能な技術を提供することにある。
【課題を解決するための手段】
【００１３】
本発明は、メッセージを送受信する際に負荷分散を実現するメッセージ通信システムにおいて、要求メッセージの再送フラグがＯＮである場合に全受信側情報処理装置のメッセージ受信状態テーブルを参照して当該要求メッセージが有効であるかを判定するものである。
【００１４】
本発明の高信頼メッセージング方式のメッセージ通信システムにおいて、クライアントノード（送信側情報処理装置）の送信側通信プログラムは、要求メッセージの識別情報に再送フラグのフィールドを設け、メッセージ再送時に再送フラグをＯＮに設定した要求メッセージを負荷分散装置を介してサーバノード（受信側情報処理装置）へ送信する。
【００１５】
サーバノードの受信側通信プログラムは、メッセージ重複受信を判定する為の受信メッセージ状態を記録するメッセージ受信状態テーブルを複数サーバノード共通の格納域に格納し、各受信側通信プログラムに対応するメッセージ受信状態テーブルの位置を示すポインタ情報を格納したメッセージ受信状態管理部をその格納域に設けておく。
【００１６】
そしてサーバノードの受信側通信プログラムは、クライアントノードの送信側通信プログラムから負荷分散装置を介して受信した要求メッセージの識別情報の再送フラグがＯＮに設定されているかを調べ、再送フラグがＯＮに設定されている場合に、その要求メッセージを受信した受信側通信プログラムに対応するメッセージ受信状態テーブル以外に他の受信側通信プログラムに対応するメッセージ受信状態テーブルも参照してどの受信側通信プログラムも該当要求メッセージを受信していない場合にのみ、その受信した要求メッセージを有効とする。これにより、高信頼メッセージングでの前記（ii）重複防止を実現しつつ送信側通信プログラムからの要求を負荷分散装置で負荷分散することができる。
【００１７】
前記の様に本発明では、高信頼化を実現するメッセージング方式の負荷分散を、負荷分散装置の機能を利用して実現できる。高信頼化を実現するメッセージング方式の独自の負荷分散方式を使用する必要がないため、サーバ側負荷情報転送によるネットワークトラフィックの増大がない。また、高信頼化の要求が低い通信方式で使用される負荷分散装置と同じ装置を使用することができるため、負荷分散の運用が共通化できる。
【発明の効果】
【００１８】
本発明によれば、負荷分散に負荷分散装置を適用し、処理要求が転送された受信側情報処理装置が互いに資源競合を起こすことが少ない再送を含む要求メッセージを処理することが可能である。
【発明を実施するための最良の形態】
【００１９】
以下に高信頼メッセージングによりメッセージを送受信する際に負荷分散を実現する一実施形態のメッセージ通信システムについて説明する。
【００２０】
図１は本実施形態のメッセージ通信システムの構成を示す図である。図１に示す様に本実施形態のメッセージ通信システムは、処理要求を発行する複数のクライアントノード１０、処理要求を処理するサーバノード１３、処理要求を複数のサーバノード１３に振り分ける負荷分散装置１２０で構成され、全ての構成要素はネットワーク或いはＬＡＮを経由して接続される。
【００２１】
クライアントノード１０にはＣＰＵ１２とメモリ１１が、メモリ１１にはクライアントプログラム１０１と高信頼メッセージング通信を行なう送信側通信プログラム１０２が配置され、送信側通信プログラム１０２はクライアントプログラム１０１からの処理要求を受け付けると、要求メッセージ１５０を通信装置（図示せず）により負荷分散装置１２０に転送する（１２１）。
【００２２】
送信側通信プログラム１０２は要求メッセージ１５０を転送する時、要求メッセージ１５０に対応する応答メッセージ１５３を受信するまで（１２４）、要求メッセージ１５０を転送キュー１０５に一時的に格納し、要求メッセージ１５０を一意に識別する情報である送信ログ１０４を送信ログ格納部１０３に格納する。要求メッセージ１５０は、クライアントプログラム１０１が指定した処理要求１５２と要求メッセージ１５０を一意に識別する識別情報１５１から構成される。
【００２３】
負荷分散装置１２０は、受け取った要求メッセージ１５０を選択したサーバノード１３に配置されている受信側通信プログラム１３２に転送する（１２２）。
【００２４】
サーバノード１３にはＣＰＵ１３５とメモリ１３４が、メモリ１３４には受信側通信プログラム１３２とサーバプログラム１３１が配置されている。受信側通信プログラム１３２は受信した要求メッセージ１５０の識別情報１５１から宛先キュー１３３を決定し要求メッセージ１５０の構成要素である処理要求１５２を格納すると共に、要求メッセージ１５０の構成要素である識別情報１５１をメッセージ受信状態テーブル１４２に記憶した後に応答メッセージ１５３を通信装置（図示せず）により負荷分散装置１２０に送信する（１２３）。サーバプログラム１３１は転送された処理要求１５２を受信側通信プログラム１３２から受け取る。
【００２５】
全てのサーバノード１３に対応するメッセージ受信状態テーブル１４２はメッセージ受信状態格納部１４に格納され、メッセージ受信状態管理部１４１からポイントされる。メッセージ受信状態格納部１４は全サーバノード１３から参照することができる。
【００２６】
本実施形態において、クライアントノード１０やサーバノード１３を送信側通信処理部や受信側通信処理部として機能させる為の送信側通信プログラム１０２や受信側通信プログラム１３２は、ＣＤ−ＲＯＭ等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はＣＤ−ＲＯＭ以外の他の記録媒体でも良い。また前記プログラムを当該記録媒体から情報処理装置にインストールして使用しても良いし、ネットワークを通じて当該記録媒体にアクセスして前記プログラムを使用するものとしても良い。
【００２７】
図２は本実施形態の送信ログ１０４、識別情報１５１、メッセージ受信状態管理部１４１、メッセージ受信状態テーブル１４２の構成を示す図である。本実施形態の送信ログ１０４は、要求メッセージ１５０に対応する応答メッセージ１５３が返却されない場合や否定応答が返却された場合に、同一の要求メッセージ１５０を再送する際に以前送信した要求メッセージ１５０と同じメッセージであることを示す為に要求メッセージ１５０に付与する情報を記憶しておくものである。
【００２８】
送信ログ１０４は、要求メッセージ１５０の宛先を示す宛先キュー２１１、要求メッセージ１５０を一意に識別するメッセージ識別通番２１２、処理要求１５２の内容であるメッセージ本体をポイントするメッセージポインタ２１３のエリアから構成される。送信ログ１０４には要求メッセージ１５０を送信し対応する応答メッセージ１５３の受信を待っているメッセージ単位にレコード２１０１及び２１０２が存在し、各レコードのメッセージポインタ２１３からメッセージ本体２１０３及び２１０４がポイントされる。
【００２９】
識別情報１５１は要求メッセージ１５０を一意に識別する情報であり、送信元の送信側通信プログラム１０２を識別するクライアント識別情報２２１、要求メッセージ１５０の最終宛先を示す宛先キュー２２２、メッセージ識別通番２２３、再送されたメッセージかどうかを示す再送フラグ２２４で構成される。
【００３０】
メッセージ受信状態管理部１４１は各サーバノード１３に対応するメッセージ受信状態テーブル１４２の格納位置を示すものであり、サーバノード１３を識別するサーバ識別情報２３１、メッセージ受信状態テーブル１４２の位置をポイントするメッセージ受信状態テーブルポインタ２３２のエリアにより構成される。各メッセージ受信状態テーブル１４２対応にレコード２３０１及び２３０２が存在する。
【００３１】
メッセージ受信状態テーブル１４２は、要求メッセージ１５０の最終宛先を示す宛先キュー２２２、送信元の送信側通信プログラム１０２を識別するクライアント識別情報２２１、メッセージ識別通番２２３のエリアで構成される。受信した要求メッセージ１５０単位に各レコード２４０１〜２４０４が存在する。通常、これらのレコードは「指定時間の経過」、「同一宛先キュー１３３に同一クライアントノード１０から次の要求メッセージ１５０を受信するまで」等のシステムで定められた契機に削除される。受信側通信プログラム１３２は受信した要求メッセージ１５０の識別情報１５１をメッセージ受信状態テーブル１４２に記憶しておくことで、同一の要求メッセージ１５０が再送された場合に再送されたことを判定することができる。
【００３２】
図３は本実施形態の送信側通信プログラム１０２における要求メッセージ１５０送信処理の処理手順を示すフローチャートである。図３では送信側通信プログラム１０２における要求メッセージ１５０の送信処理の流れを説明する。
【００３３】
クライアントノード１０の送信側通信プログラム１０２は、クライアントプログラム１０１からメッセージ送信処理要求を受け付けると（ステップ３０）、メッセージを一意に識別するメッセージ識別通番の付与を行い（ステップ３１）、送信ログ１０４を作成した後、処理要求メッセージを転送キューに格納し（ステップ３２）、送信ログ格納部１０３に送信ログを格納する（ステップ３３）。転送キュー１０５に格納された処理要求１５２と送信ログ１０４から要求メッセージ１５０の組み立てをメモリ１１上で行い（ステップ３４）、作成された要求メッセージ１５０を通信装置により負荷分散装置１２０を介してサーバノード１３へ送信する（ステップ３５）。
【００３４】
その後、サーバノード１３の受信側通信プログラム１３２から設定時間内に応答メッセージ１５３を受信したかを判定し（ステップ３６）、応答メッセージ１５３を受信した場合は転送キュー１０５から処理要求メッセージを削除し（ステップ３７）、対応する送信ログ１０４を削除して（ステップ３８）メッセージ送信処理を終了する（ステップ３９）。
【００３５】
一方、サーバノード１３の受信側通信プログラム１３２から設定時間内に応答メッセージ１５３を受信したかをステップ３６で判定した結果、応答メッセージ１５３を受信していない場合は要求メッセージ１５０を再送する為に再送フラグ２２４をＯＮに設定して要求メッセージ１５０の組み立てをメモリ１１上で行い（ステップ３４１）、要求メッセージ１５０を通信装置により負荷分散装置１２０を介してサーバノード１３へ送信する（ステップ３５）。
【００３６】
図４は本実施形態の受信側通信プログラム１３２における要求メッセージ１５０受信処理の処理手順を示すフローチャートである。図４では受信側通信プログラム１３２における要求メッセージ１５０の受信処理の流れを説明する。
【００３７】
サーバノード１３の受信側通信プログラム１３２は、要求メッセージ１５０を受信すると（ステップ４０）、識別情報１５１内の再送フラグ２２４がＯＮかを判定し（ステップ４１）、再送フラグ２２４がＯＮでない場合、そのサーバノード１３の受信側通信プログラム１３２に対応付けられたメッセージ受信状態テーブル１４２に要求メッセージ１５０と同じ識別情報１５１があるかを判定する（ステップ４２）。
【００３８】
メッセージ受信状態テーブル１４２に要求メッセージ１５０と同じ識別情報１５１がない場合、その要求メッセージ１５０の処理要求１５２を宛先キュー１３３に格納する（ステップ４３）。次に、要求メッセージ１５０の識別情報１５１をメッセージ受信状態テーブル１４２に格納する（ステップ４４）。その後、クライアントノード１０の送信側通信プログラム１０２に応答メッセージ１５３を送信し（ステップ４５）、要求メッセージ受信処理終了となる（ステップ４６）。
【００３９】
一方、メッセージ受信状態テーブル１４２に要求メッセージ１５０と同じ識別情報１５１があるかをステップ４２で判定した結果、同じ識別情報１５１がある場合、以前該当メッセージを受信したということであり、要求メッセージ１５０の識別情報１５１や処理要求１５２を格納せずに送信側通信プログラム１０２に応答メッセージ１５３を送信する（ステップ４５）。
【００４０】
また、受信した要求メッセージ１５０の識別情報１５１内の再送フラグ２２４がＯＮかをステップ４１で判定した結果、再送フラグ２２４がＯＮである場合は以前に該当メッセージを受信している可能性がある。全てのメッセージ受信状態テーブル１４２を確認するため、メッセージ受信状態格納部１４の先頭に位置するメッセージ受信状態テーブル１４２をポイントする（ステップ４１１）。
【００４１】
そして、ポイントしたメッセージ受信状態テーブル１４２に要求メッセージ１５０と同じ識別情報１５１があるかを判定する（ステップ４１２）。同じ識別情報１５１がある場合、以前該当メッセージを受信したということであり、要求メッセージ１５０の識別情報１５１や処理要求１５２を格納せずに送信側通信プログラム１０２に応答メッセージ１５３を送信する（ステップ４５）。
【００４２】
同じ識別情報１５１がない場合、今ポイントしているメッセージ受信状態テーブル１４２は最後のメッセージ受信状態テーブル１４２かを判定し（ステップ４１３）、最後のメッセージ受信状態テーブル１４２である場合は、受信した要求メッセージ１５０は今まで受信していないメッセージであると判断して、要求メッセージ１５０の処理要求１５２を宛先キュー１３３に格納し（ステップ４３）、要求メッセージ１５０の識別情報１５１をメッセージ受信状態テーブル１４２に格納する（ステップ４４）。その後、クライアントノード１０の送信側通信プログラム１０２に応答メッセージ１５３を送信し（ステップ４５）、要求メッセージ受信処理を終了する（ステップ４６）。
【００４３】
また、今ポイントしているメッセージ受信状態テーブル１４２が最後のメッセージ受信状態テーブル１４２ではない場合は、次に位置するメッセージ受信状態テーブル１４２をポイントする（ステップ４１４）。ポイントしたメッセージ受信状態テーブル１４２に要求メッセージ１５０と同じ識別情報１５１があるかを判定し（ステップ４１２）、全メッセージ受信状態テーブル１４２のチェックを繰り返す。
【００４４】
以上説明した様に本実施形態のメッセージ通信システムによれば、要求メッセージの再送フラグがＯＮである場合に全受信側情報処理装置のメッセージ受信状態テーブルを参照して当該要求メッセージが有効であるかを判定するので、高信頼メッセージング方式の負荷分散に負荷分散装置を適用し、処理要求が転送された受信側情報処理装置が互いに資源競合を起こすことなく再送を含む要求メッセージを処理することが可能である。
【図面の簡単な説明】
【００４５】
【図１】本実施形態のメッセージ通信システムの構成を示す図である。
【図２】本実施形態の送信ログ１０４、識別情報１５１、メッセージ受信状態管理部１４１、メッセージ受信状態テーブル１４２の構成を示す図である。
【図３】本実施形態の送信側通信プログラム１０２における要求メッセージ１５０送信処理の処理手順を示すフローチャートである。
【図４】本実施形態の受信側通信プログラム１３２における要求メッセージ１５０受信処理の処理手順を示すフローチャートである。
【符号の説明】
【００４６】
１０…クライアントノード、１１…メモリ、１２…ＣＰＵ、１０１…クライアントプログラム、１０２…送信側通信プログラム、１０３…送信ログ格納部、１０４…送信ログ、１０５…転送キュー、１２０…負荷分散装置、１３…サーバノード、１３１…サーバプログラム、１３２…受信側通信プログラム、１３３…宛先キュー、１３４…メモリ、１３５…ＣＰＵ、１４…メッセージ受信状態格納部、１４１…メッセージ受信状態管理部、１４２…メッセージ受信状態テーブル、１５０…要求メッセージ、１５１…識別情報、１５２…処理要求、１５３…応答メッセージ、２１１…宛先キュー、２１２…メッセージ識別通番、２１３…メッセージポインタ、２１０１及び２１０２…レコード、２１０３及び２１０４…メッセージ本体、２２１…クライアント識別情報、２２２…宛先キュー、２２３…メッセージ識別通番、２２４…再送フラグ、２３１…サーバ識別情報、２３２…メッセージ受信状態テーブルポインタ、２３０１及び２３０２…レコード、２４１…宛先キュー、２４２…クライアント識別情報、２４３…メッセージ識別通番、２４０１〜２４０４…レコード。
【図１】
2007334575.tif 000003
【図２】
2007334575.tif 000004
【図３】
2007334575.tif 000005
【図４】
2007334575.tif 000006