(57)【要約】【課題】メッセージングにかかるコストを削減する。【解決手段】各サービスのメッセージの送受信関係に基づき、複数のメッセージを１つのメッセージに複合して他の情報処理装置へ送信する送信部１１２と、他の情報処理装置において複合されたメッセージを受信して分解する受信部１１３と、を備え、送信部１１２は、分解したメッセージと新たなメッセージとを更に複合して他の情報処理装置へ転送する。【選択図】図１
2020173630.tif 000002
【特許請求の範囲】
【請求項１】
メッセージの送受信により複数のサービス間の連携を行なうメッセージ制御システムに備えられる情報処理装置であって、
各サービスのメッセージの送受信関係に基づき、複数のメッセージを１つのメッセージに複合して他の情報処理装置へ送信する送信部と、
他の情報処理装置において複合されたメッセージを受信して分解する受信部と、
を備え、
前記送信部は、分解したメッセージと新たなメッセージとを更に複合して他の情報処理装置へ転送する、
情報処理装置。
【請求項２】
前記送信部は、前記メッセージ制御システムに新たなサービスが追加された場合に、前記複数のサービス間の通信回数が低減されるように、複合したメッセージの送信先を変更する、
請求項１に記載の情報処理装置。
【請求項３】
前記送信部は、送信対象のメッセージを使用する複数のサービスがある場合に、前記複数のサービスのうち２以上のサービスへの通信経路を有する他のサービスを前記送信対象のメッセージの送信先とする、
請求項１又は２に記載の情報処理装置。
【請求項４】
前記送信部は、送信対象のメッセージの通信経路として複数の通信経路がある場合に、前記複数の通信経路のうち経路長が最短の通信経路に接続されているサービスを前記送信対象のメッセージの送信先とする、
請求項１〜３のいずれか１項に記載の情報処理装置。
【請求項５】
メッセージの送受信により複数のサービス間の連携を行なうメッセージ制御システムであって、
前記複数のサービスにそれぞれ対応付けられた複数の情報処理装置と、
前記複数の情報処理装置のうち第１の情報処理装置に対して、各サービスのメッセージの送受信関係に基づき、複数のメッセージを１つのメッセージに複合して、前記複数の情報処理装置のうち第２の情報処理装置へ送信するように指示する制御装置と、
を備え、
前記第１の情報処理装置は、
前記制御装置からの指示に従って、複合したメッセージを前記第２の情報処理装置へ送信する送信部と、
前記複数の情報処理装置のうち第３の情報処理装置において複合されたメッセージを受信して分解する受信部と、
を有し、
前記送信部は、分解したメッセージと新たなメッセージとを更に複合して前記複数の情報処理装置のうち第４の情報処理装置へ転送する、
メッセージ制御システム。
【請求項６】
メッセージの送受信により複数のサービス間の連携を行なうメッセージ制御システムに備えられる情報処理装置におけるコンピュータに、
各サービスのメッセージの送受信関係に基づき、複数のメッセージを１つのメッセージに複合して他の情報処理装置へ送信し、
他の情報処理装置において複合されたメッセージを分解して受信し、
分解したメッセージと新たなメッセージとを更に複合して他の情報処理装置へ転送する、
処理を実行させる、メッセージ制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置，メッセージ制御システム及びメッセージ制御プログラムに関する。
【背景技術】
【０００２】
近年、クラウドサービスでは、サービスがマイクロサービスアーキテクチャと呼ばれる分散型システムで構築されるケースが増えている。マイクロサービスの多くは、検索又は認証等の単機能を有する小さなサービスである。複数のマイクロサービスが組み合わされて、サービスが構築される。
【０００３】
例えば、５つのマイクロサービスとして、Ｗｅｂインタフェースサービス，認証サービス，検索サービス，ショッピングサービス及びデータベースサービスが組み合わされて、インターネット販売サービスが構築される場合がある。
【０００４】
マイクロサービスを組み合わせる方法として、メッセージングが広く用いられている。メッセージングは、サービス同士をメッセージのやり取りによって連携させる方法である。メッセージングは、メッセージの送信側が受信側のメッセージ受信を待たずに次の処理に取り掛かることができる非同期実行に適している。
【０００５】
例えば、室温モニタマイクロサービス及びエアコンディショナー制御マイクロサービスによって構成された室内環境サービスを想定する。
【０００６】
室温モニタマイクロサービスは、温度センサから取得した室温情報を所定の形式のメッセージデータにしてエアコンディショナー制御マイクロサービスへ送信する。室温モニタマイクロサービスは、送信メッセージをエアコンディショナー制御サービスが処理するか否かにかかわらず、次の温度情報を取得次第送信する。送信されたメッセージはキューと呼ばれるバッファに格納される。
【０００７】
エアコンディショナー制御マイクロサービスは、キューからメッセージを取り出し、内容に応じた処理の実行を繰り返す。エアコンディショナー制御マイクロサービスは、例えば、室温３０℃というメッセージを取り出したら、エアコンディショナーの電源投入を実行する。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平７−２８２０１１号公報
【特許文献２】特開２００６−３１２３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
特にネットワーク接続された自動車や家電，各種センサを対象としたクラウドサービスでは、サービス対象の製品の数が多いほど、高い付加価値をユーザへ提供できる。例えば、多数の自動車をサービス対象にできれば、地図情報に基づいた単純なルート検索だけでなく、渋滞の検知や予測を考慮したサービスが可能となる。
【００１０】
サービス対象の製品の数を増やすためには、サービス対象との間でデータのやり取りをするマイクロサービスや、サービス対象からのデータを集約し各種分析を行なうマイクロサービス等、多数のマイクロサービスが設けられる。また、多数のマイクロサービスの間では、膨大な数のメッセージングが発生する。
【００１１】
例えば、１００万台の自動車を対象としたサービスでは、１００万のリアルタイムなメッセージングが実施される。また、新たにもう１つのサービスが追加されれば、更に１００万のリアルタイムなメッセージングが実行される。一般に、メッセージングの数は、マイクロサービスの数よりも多くなってしまう。
【００１２】
メッセージングのコストは、一般に、送信から受信までの各段階（例えば、送信処理，データ伝送処理，ルーティング処理，データ伝送処理，受信処理）におけるコストの総和である。例えば、送信処理では、送信バッファの確保及び受信側との通信路の確立によってコストが定義される。また、データ伝送処理では、伝送データサイズ及び伝送速度から決まる遅延によってコストが定義される。更に、ルーティング処理では、受信側への適切な経路選択及びタイムスタンプや優先度等に基づいた伝送順序制御によってコストが定義される。また、受信処理では、受信データのキューイングや複数の受信データに対する待ち合わせである。それぞれの処理において遅延が発生し、Central Processing Unit（ＣＰＵ）や記憶装置等の計算資源が使用される。
【００１３】
上述したように、サービス対象が増加するとサービス数よりもメッセージング数が多く増加するため、メッセージング数の増加に伴うコストの増加がボトルネックとなるおそれがある。
【００１４】
１つの側面では、メッセージングにかかるコストを削減することを目的とする。
【課題を解決するための手段】
【００１５】
１つの側面において、情報処理装置は、メッセージの送受信により複数のサービス間の連携を行なうメッセージ制御システムに備えられる情報処理装置であって、各サービスのメッセージの送受信関係に基づき、複数のメッセージを１つのメッセージに複合して他の情報処理装置へ送信する送信部と、他の情報処理装置において複合されたメッセージを受信して分解する受信部と、を備え、前記送信部は、分解したメッセージと新たなメッセージとを更に複合して他の情報処理装置へ転送する。
【発明の効果】
【００１６】
１つの側面では、メッセージングにかかるコストを削減できる。
【図面の簡単な説明】
【００１７】
【図１】実施形態の一例におけるメッセージ制御システムの構成例を模式的に示すブロック図である。
【図２】図１に示したメッセージ処理装置及びメッセージ管理装置のハードウェア構成例を模式的に示すブロック図である。
【図３】関連例におけるメッセージングを例示する図である。
【図４】図１に示したメッセージ制御システムにおけるメッセージングを説明する図である。
【図５】図１に示したメッセージ制御システムにおけるメッセージングにおけるパスの変化を説明する図である。
【図６】図１に示したメッセージ制御システムにおいて多数のサービスが配置されている場合のメッセージングを説明する図である。
【図７】図１に示したメッセージ制御システムにおいて４つ目のサービスを追加した場合のメッセージングを説明する図である。
【図８】図１に示したメッセージ制御システムにおいて複数の送信先が存在する場合のメッセージングを説明する図である。
【図９】図１に示したメッセージ制御システムにおいて複数のフローが存在する場合のメッセージングを説明する図である。
【図１０】図１に示したメッセージ管理部によるメッセージ複合指示処理を説明するフローチャートである。
【図１１】図１に示したメッセージ制御システムにおけるサービスの通信仕様を例示するテーブルである。
【図１２】図１に示したメッセージ制御システムにおけるメッセージ複合指示情報を示すテーブルである。
【図１３】図１０のステップＳ３に示したメッセージ複合指示の算出処理の詳細を説明するフローチャートである。
【図１４】図１３のステップＳ３０４に示したメッセージ複合指示の作成処理の詳細を説明するフローチャートである。
【図１５】図１に示したメッセージ制御システムにおける対応管理情報を例示するテーブルである。
【図１６】図１に示したメッセージ制御システムにおけるメッセージ複合指示の内容を示すテーブルである。
【図１７】図１に示したメッセージ処理部によるメッセージ受信処理を説明するフローチャートである。
【図１８】図１に示したメッセージ制御システムにおけるメッセージを示すテーブルである。
【図１９】図１に示したメッセージ制御システムにおける通常メッセージを示すテーブルである。
【図２０】図１に示したメッセージ制御システムにおける複合メッセージを示すテーブルである。
【図２１】図１に示したメッセージ処理部によるメッセージ送信処理を説明するフローチャートである。
【図２２】図１に示したメッセージ処理部による複数の送信先がある場合のメッセージ送信処理を説明するフローチャートである。
【図２３】図１に示したメッセージ制御システムにおける複数の送信先がある場合のメッセージ複合指示の内容を示すテーブルである。
【図２４】図１に示したメッセージ制御システムにおける複数の送信先がある場合の複合メッセージを示すテーブルである。
【図２５】図１に示したメッセージ管理部による複数のフローが存在する場合のメッセージ複合指示の算出処理を説明するフローチャートである。
【発明を実施するための形態】
【００１８】
以下、図面を参照して一実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。
【００１９】
また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
【００２０】
以下、図中において、同一の各符号は同様の部分を示しているので、その説明は省略する。
【００２１】
〔Ａ〕実施形態の一例
〔Ａ−１〕システム構成例
図１は、実施形態の一例におけるメッセージ制御システム１００の構成例を模式的に示すブロック図である。
【００２２】
メッセージ制御システム１００は、メッセージの送受信により複数のサービス１２０間の連携を行ない、メッセージ管理部２１０及び複数（図示する例では２つ）のメッセージ処理部１１０としての機能を備える。
【００２３】
メッセージ管理部２１０は、各メッセージ処理部１１０と通信可能に接続される。メッセージ管理部２１０は、サービス１２０の配備の際にサービス１２０の通信仕様に応じてメッセージ複合指示を作成して、作成したメッセージ複合指示をメッセージ処理部１１０へ送信する。
【００２４】
別言すれば、メッセージ管理部２１０は、メッセージ処理部１１０に対して、各サービス１２０のメッセージの送受信関係に基づき、複数のメッセージを１つのメッセージに複合して、他のメッセージ処理部１１０へ送信するように指示する。
【００２５】
メッセージ管理部２１０としての機能は、図２を用いて後述するように、メッセージ管理装置２によって実現される。メッセージ管理部２１０は、図１に示すように、メッセージ複合導出部２１１及びサービス通信管理部２１２として機能する。
【００２６】
メッセージ複合導出部２１１は、サービス１２０の通信仕様に基づき、サービス１２０へ送信するサービス識別子（ＩＤ）のセットを導出する。
【００２７】
サービス通信管理部２１２は、サービス１２０の通信仕様を管理する。
【００２８】
メッセージ処理部１１０は、サービス１２０毎に配置され、ネットワーク３を介したサービス１２０のメッセージ通信を中継する。メッセージ処理部１１０は、メッセージ管理部２１０からの指示に従い、複合メッセージに対する処理を行なう。メッセージ処理部１１０としての機能は、図２を用いて後述するように、メッセージ処理装置１によって実現される。メッセージ処理部１１０は、図１に示すように、メッセージ複合指示管理部１１１，メッセージ複合処理部１１２，複合メッセージ分解部１１３，複合メッセージ判定部１１４及び受信メッセージ転送部１１５として機能する。
【００２９】
メッセージ複合指示管理部１１１は、メッセージ管理部２１０からメッセージ複合指示を受け取り、受け取ったメッセージ複合指示を保持する。
【００３０】
メッセージ複合処理部１１２は、該当メッセージに対応するメッセージ複合指示が存在する場合には、複合メッセージを生成する。一方、メッセージ複合処理部１１２は、該当メッセージに対応するメッセージ複合指示が存在しない場合には、該当メッセージの複合を行なわない通常メッセージとして扱う。
【００３１】
別言すれば、メッセージ複合処理部１１２は、送信部の一例であり、各サービス１２０のメッセージの送受信関係に基づき、複数のメッセージを１つのメッセージに複合して他のメッセージ処理装置１へ送信する。また、メッセージ複合処理部１１２は、分解したメッセージと新たなメッセージとを更に複合して他のメッセージ処理装置１へ転送する。
【００３２】
複合メッセージ分解部１１３は、メッセージ本体からデータ，受信指定及び転送指定を取り出す。複合メッセージ分解部１１３は、メッセージ本体における受信指定が真の場合には、データを受信メッセージ転送部１１５へ渡す。一方、複合メッセージ分解部１１３は、メッセージ本体における転送指定が真の場合には、データをメッセージ複合処理部１１２へ渡す。
【００３３】
別言すれば、複合メッセージ分解部１１３は、受信部の一例であり、他のメッセージ処理装置１において複合されたメッセージを受信して分解する。
【００３４】
複合メッセージ判定部１１４は、ネットワーク３から受信したメッセージが複合メッセージであるか通常メッセージであるかを判定する。複合メッセージ判定部１１４は、受信したメッセージが通常メッセージである場合には、受信したメッセージを受信メッセージ転送部１１５へ渡す。一方、複合メッセージ判定部１１４は、受信したメッセージが複合メッセージである場合には、受信したメッセージを複合メッセージ分解部１１３へ渡す。
【００３５】
受信メッセージ転送部１１５は、メッセージ本体から取り出されたデータをサービス１２０へ渡す。
【００３６】
図２は、図１に示したメッセージ処理装置１及びメッセージ管理装置２のハードウェア構成例を模式的に示すブロック図である。
【００３７】
メッセージ処理装置１及びメッセージ管理装置２は、ＣＰＵ１１，メモリ１２，表示制御部１３，記憶装置１４，入力Interface（Ｉ／Ｆ）１５，読み書き処理部１６及び通信Ｉ／Ｆ１７を備える。メッセージ処理装置１は情報処理装置の一例であり、メッセージ管理装置２は制御装置の一例である。
【００３８】
メモリ１２は、記憶部の一例であり、例示的に、Read Only Memory（ＲＯＭ）及びRandom Access Memory（ＲＡＭ）を含む記憶装置である。メモリ１２のＲＯＭには、Basic Input/Output System（ＢＩＯＳ）等のプログラムが書き込まれてよい。メモリ１２のソフトウェアプログラムは、ＣＰＵ１１に適宜に読み込まれて実行されてよい。また、メモリ１２のＲＡＭは、一次記録メモリあるいはワーキングメモリとして利用されてよい。
【００３９】
表示制御部１３は、表示装置１３０と接続され、表示装置１３０を制御する。表示装置１３０は、液晶ディスプレイやOrganic Light-Emitting Diode（ＯＬＥＤ）ディスプレイ，Cathode Ray Tube（ＣＲＴ），電子ペーパーディスプレイ等であり、オペレータ等に対する各種情報を表示する。表示装置１３０は、入力装置と組み合わされたものでもよく、例えば、タッチパネルでもよい。
【００４０】
記憶装置１４は、例示的に、データを読み書きして記憶する装置であり、例えば、Hard Disk Drive（ＨＤＤ）やSolid State Drive（ＳＳＤ），Storage Class Memory（ＳＣＭ）が用いられてよい。
【００４１】
入力Ｉ／Ｆ１５は、マウス１５１やキーボード１５２等の入力装置と接続され、マウス１５１やキーボード１５２等の入力装置を制御する。マウス１５１やキーボード１５２は、入力装置の一例であり、これらの入力装置を介して、オペレータが各種の入力操作を行なう。
【００４２】
読み書き処理部１６は、記録媒体１６０が装着可能に構成される。読み書き処理部１６は、記録媒体１６０が装着された状態において、記録媒体１６０に記録されている情報を読み取り可能に構成される。本例では、記録媒体１６０は、可搬性を有する。例えば、記録媒体１６０は、フレキシブルディスク、光ディスク、磁気ディスク、光磁気ディスク、又は、半導体メモリ等である。
【００４３】
通信Ｉ／Ｆ１７は、外部装置との通信を可能にするためのインタフェースである。
【００４４】
ＣＰＵ１１は、種々の制御や演算を行なう処理装置であり、メモリ１２に格納されたOperating System（ＯＳ）やプログラムを実行することにより、種々の機能を実現する。
【００４５】
メッセージ処理装置１及びメッセージ管理装置２全体の動作を制御するための装置は、ＣＰＵ１１に限定されず、例えば、ＭＰＵやＤＳＰ，ＡＳＩＣ，ＰＬＤ，ＦＰＧＡのいずれか１つであってもよい。また、メッセージ処理装置１及びメッセージ管理装置２全体の動作を制御するための装置は、ＣＰＵ，ＭＰＵ，ＤＳＰ，ＡＳＩＣ，ＰＬＤ及びＦＰＧＡのうちの２種類以上の組み合わせであってもよい。なお、ＭＰＵはMicro Processing Unitの略称であり、ＤＳＰはDigital Signal Processorの略称であり、ＡＳＩＣはApplication Specific Integrated Circuitの略称である。また、ＰＬＤはProgrammable Logic Deviceの略称であり、ＦＰＧＡはField Programmable Gate Arrayの略称である。
【００４６】
図３は、関連例におけるメッセージングを例示する図である。
【００４７】
図示する例では、サービス＃１〜＃３が配備されている。サービス＃１は自動車の位置ａを取得し、サービス＃２は自動車の速度ｂを計算し、サービス＃３は自動車の運転の質を判定する。
【００４８】
符号Ａ１及びＡ２に示すように、サービス＃１は、サービス＃２及び＃３に対してそれぞれ、取得した自動車の位置ａを送信する。
【００４９】
符号Ａ３に示すように、サービス＃２は、サービス＃３に対して、受信した自動車の位置ａに基づいて算出した自動車の速度ｂを送信する。
【００５０】
符号Ａ４に示すように、サービス＃３は、サービス＃１から受信した自動車の位置ａと、サービス＃２から受信した自動車の速度ｂとに基づき、自動車の運転の質を判定する。
【００５１】
ここで、サービス＃２はサービス＃１から自動車の位置ａを取得しているため、サービス＃２が自動車の位置ａをサービス＃３へ転送できれば、サービス＃１からサービス＃３への通信は不要となる。また、サービス＃２が自動車の速度ｂの計算結果と一緒に自動車の位置ａをサービス＃３へ送信すれば、サービス＃１とサービス＃２との同期は不要となる。
【００５２】
既存のサービス１２０を利用する新たなサービス１２０をシステムに追加していくほど、サービス１２０間の不要な通信が増加してしまう。
【００５３】
図４は、図１に示したメッセージ制御システム１００におけるメッセージングを説明する図である。
【００５４】
本実施形態の一例では、複数のメッセージを１つにパックした複合メッセージを導入し、複合メッセージを処理するメッセージ処理部１１０を介して各サービス１２０へのデータの入出力が実施される。
【００５５】
メッセージ管理部２１０は、新たに配備されたサービス１２０へのメッセージフロー（別言すれば、送受信関係）を、配備済みのサービス１２０全体のメッセージフローに基づき最適化する。
【００５６】
図示する例では、既存のサービス＃１及び＃２に加えて、サービス＃３が新たに配備される。メッセージ管理部２１０は、符号Ｂ１で示すサービス＃１からサービス＃２へのメッセージフローに加えて、符号Ｂ２で示すサービス＃１からサービス＃３へのメッセージフローと、サービス＃２からサービス＃３へのメッセージフローとの登録を受け付ける。
【００５７】
符号Ｂ３に示すように、メッセージ管理部２１０は、サービス＃１のメッセージ処理部１１０に対して、サービス＃１からのメッセージａを複合対象として指示する。
【００５８】
符号Ｂ４に示すように、サービス＃１のメッセージ処理部１１０は、サービス＃２に対して、複合メッセージ［＊ａ］を送信する。ここで、＊は複合対象であることを示す。
【００５９】
符号Ｂ５に示すように、メッセージ管理部２１０は、サービス＃２のメッセージ処理部１１０に対して、サービス＃１からのメッセージａの受信及びメッセージａのサービス＃３への転送を指示する。
【００６０】
符号Ｂ６及びＢ７に示すように、サービス＃２のメッセージ処理部１１０は、メッセージａとメッセージｂとを複合して、サービス＃３に対して複合メッセージ［＊ａ，ｂ］を送信する。
【００６１】
符号Ｂ８に示すように、メッセージ管理部２１０は、サービス＃３のメッセージ処理部１１０に対して、サービス＃２からのメッセージａの受信を指示する。
【００６２】
符号Ｂ９に示すように、サービス＃３のメッセージ処理部１１０は、サービス＃２から受信したメッセージａ及びｂからメッセージｃを生成する。
【００６３】
図５は、図１に示したメッセージ制御システム１００におけるメッセージングにおけるパスの変化を説明する図である。
【００６４】
配備済サービス集合をD={Si|Siは配備済サービス}とし、各Siについて、メッセージ送受信関係から上流サービス集合Ui={Sj|SjはSiへメッセージを送信するサービス}が算出される。
【００６５】
符号Ｃ１に示すように、追加で配備する新サービスをSxとし、その上流サービス集合をUx={Sk|SkはSxへメッセージを送信するサービス}とし、各Skについてメッセージ複合が行なわれる。
【００６６】
ここで、Skが未配備の場合には、Skに対して本手続が実施される。一方、Skが配備済の場合には、Skの上流Ukの要素でもあるSaについて、次の（１）又は（２）の処理が実施される。
【００６７】
（１）SxがSkと同じデータxをSaから受信している場合には、xを複合メッセージとし、SaからSxへの通信Paxが削除可に設定される。
【００６８】
（２）符号Ｃ２に示すようにSxでの受信データがxとyとで異なる場合には、符号Ｃ３に示すように、yを複合メッセージとし、SaからSxへの通信PaxをSaからSkへの通信Pakへ複合可に設定される。
【００６９】
そして、Uxの各要素Skについて、対応するメッセージ処理部１１０への指示に基づき、Sxが配備される。SkからSxへの送信データが複合メッセージの場合には、当該送信データの複合メッセージ化がメッセージ処理部１１０に指示される。SkからSxへの通信Pkxが削除可の場合には、Pkxの削除がメッセージ処理部１１０に指示される。SkからSxへの通信Pkxが通信Pklへ複合可の場合には、Pkxの削除とPkxのデータのPklへの複合がメッセージ処理部１１０に指示される。
【００７０】
図６は、図１に示したメッセージ制御システム１００において多数のサービス１２０が配置されている場合のメッセージングを説明する図である。
【００７１】
図５に示した手続は、図６に示すように、任意のパス長及び任意のパス数に適用可能である。
【００７２】
図６に示すように、例えば、サービスSa1からサービスSxへの通信、及び、サービスSb1からサービスSxへの通信を削除して、これらの通信をサービスSa1，Sb1，Sc1を介した通信に複合できる。また、例えば、サービスSa2からサービスSxへの通信、及び、サービスSb2からサービスSxへの通信を削除して、これらの通信をサービスSa2，Sb2，Sc2を介した通信に複合できる。
【００７３】
図７は、図１に示したメッセージ制御システム１００において４つ目のサービス１２０を追加した場合のメッセージングを説明する図である。
【００７４】
配置済のサービス１２０間にメッセージフローがない場合でも、追加サービスSxと同じメッセージセットを受信するサービスSyがあれば、新しい複合メッセージフローが加えられることで、全体のメッセージフローの数及び同期を減らすことができる。
【００７５】
符号Ｄ１に示すように、配備済のサービスSa，Sb及びSyに対して、新たなサービスSxが追加される。これにより、サービスSaからサービスSyへのメッセージaの通信と、サービスSbからサービスSyへのメッセージbの通信とに加えて、サービスSaからサービスSxへのメッセージaの通信と、サービスSbからサービスSyへのメッセージbの通信とが定義される。全てのサービス１２０間の通信回数は４回である。
【００７６】
ここで、符号Ｄ２に示すように、複合メッセージが採用されることにより、サービスSaからサービスSbに対する複合されたメッセージ+aの通信と、サービスSbからサービスSy及びSxに対する複合されたメッセージb, +aの通信とが定義される。これにより、全てのサービス１２０間の通信回数は３回に減少できる。
【００７７】
すなわち、メッセージ複合処理部１１２は、メッセージ制御システム１００に新たなサービス１２０が追加された場合に、複数のサービス１２０間の通信回数が低減されるように、複合したメッセージの送信先を変更する。
【００７８】
図８は、図１に示したメッセージ制御システム１００において複数の送信先が存在する場合のメッセージングを説明する図である。
【００７９】
複数の送信先がある場合には、複合したメッセージを必要とするサービス１２０へのパスを持つ送信先に当該メッセージを複合した複合メッセージが送信されることにより、通信の全体量を低減できる。
【００８０】
図示する例では、サービスSa，Sw，Sz及びSxが配備されている。ここで、サービスSwからの送信がサービスSz宛とサービスSx宛とに分けられ、サービスSx宛の送信が複合メッセージb, +aに設定される。
【００８１】
すなわち、メッセージ複合処理部１１２は、送信対象のメッセージを使用する複数のサービス１２０がある場合に、複数のサービス１２０のうち２以上のサービス１２０への通信経路を有する他のサービス１２０を送信対象のメッセージの送信先とする。
【００８２】
図９は、図１に示したメッセージ制御システム１００において複数のフローが存在する場合のメッセージングを説明する図である。
【００８３】
複合メッセージのフローが複数存在する場合には、パス長が最短のフローが選択される。これにより、通信の全体量を低減できる。
【００８４】
図示する例では、サービスSa，Sb，Sc，Sd及びSxが配備されている。サービスSaからサービスSxへの通信は、サービスSb経由の場合はパス長が２であるのに対して、サービスSc及びSd経由の場合はパス長が３である。そこで、パス長が短いサービスSb経由の通信が選択されて、複合メッセージが送信される。
【００８５】
すなわち、メッセージ複合処理部１１２は、送信対象のメッセージの通信経路として複数の通信経路がある場合に、複数の通信経路のうち経路長が最短の通信経路に接続されているサービス１２０を送信対象のメッセージの送信先とする。
【００８６】
〔Ａ−２〕動作例
図１に示したメッセージ管理部２１０によるメッセージ複合指示処理を、図１１及び図１２に示すテーブルを参照しながら、図１０に示すフローチャート（ステップＳ１〜Ｓ５）に従って説明する。図１１は、図１に示したメッセージ制御システム１００におけるサービス１２０の通信仕様を例示するテーブルである。図１２は、図１に示したメッセージ制御システム１００におけるメッセージ複合指示情報を示すテーブルである。
【００８７】
サービス通信管理部２１２は、サービス配備の際に、配備するサービスSxの通信仕様を受け取り、記憶装置１４（図２を参照）に登録する（ステップＳ１）。
【００８８】
図１１に示すように、通信仕様は、サービスＩＤが示すサービス１２０の受信データ及び送信データを表わす。受信データ及び送信データには、それぞれＩＤが設定されている。受信データには、そのデータを送信するサービス１２０のＩＤが定義される。通信仕様は、サービス１２０の提供者が作成してよい。
【００８９】
メッセージ複合導出部２１１は、サービスSxの通信仕様に基づき、サービスSxへ送信するサービスIDのセットUx=[Sy1, Sy2, …]を求める（ステップＳ２）。サービスIDは、図１１に示した通信仕様の送信サービスIDに対応する。
【００９０】
メッセージ複合導出部２１１は、Uxの各要素Syiからメッセージ複合指示Cyiを求める（ステップＳ３）。なお、ステップＳ３におけるメッセージ複合指示の算出処理の詳細については、図１３を用いて後述する。
【００９１】
図１２に示すように、メッセージ複合指示情報は、指示対象とする１つ以上のメッセージ処理部１１０のＩＤと、１つ以上のメッセージ複合指示とを含む。メッセージ複合指示は、サービス１２０の送受信メッセージをまとめる方法を示す。
【００９２】
メッセージ複合導出部２１１は、要素Syi毎に求めた全てのメッセージ複合指示Cyiを統合して、メッセージ複合指示Cxを求める（ステップＳ４）。
【００９３】
メッセージ複合導出部２１１は、メッセージ複合指示Cxの内容に従い、各メッセージ処理部１１０へメッセージ複合指示Cxを送信する（ステップＳ５）。そして、メッセージ管理部２１０によるメッセージ複合指示処理は終了する。
【００９４】
次に、図１０のステップＳ３に示したメッセージ複合指示の算出処理の詳細を、図１３に示すフローチャート（ステップＳ３０１〜Ｓ３０５）に従って説明する。
【００９５】
メッセージ複合導出部２１１は、サービスSyの通信仕様をサービス通信管理部２１２から取得する（ステップＳ３０１）。
【００９６】
メッセージ複合導出部２１１は、サービスSxの通信仕様からSyへの送信サービスＩＤのセットUy=[Sz1, Sz2, …]を求める（ステップＳ３０２）。
【００９７】
メッセージ複合導出部２１１は、ステップＳ３０２で求めたUy及び図１０のステップＳ２で求めたUxの両方に含まれるサービスＩＤである送信サービスＩＤのセットUyxを求める（ステップＳ３０３）。
【００９８】
メッセージ複合導出部２１１は、Uyxの各要素Sziからメッセージ複合指示Cziを求める（ステップＳ３０４）。なお、ステップＳ３０４におけるメッセージ複合指示の作成処理の詳細は図１４を用いて後述するが、Cziは図１２に示したデータでよい。
【００９９】
メッセージ複合導出部２１１は、Czi全てを統合した複合指示Cyを求める（ステップＳ３０５）。そして、メッセージ複合指示の算出処理は終了する。
【０１００】
次に、図１３のステップＳ３０４に示したメッセージ複合指示の作成処理の詳細を、図１５及び図１６に示すテーブルを参照しながら、図１４に示すフローチャート（ステップＳ１４１〜Ｓ１４４）に従って説明する。図１５は、図１に示したメッセージ制御システム１００における対応管理情報を例示するテーブルである。図１６は、図１に示したメッセージ制御システム１００におけるメッセージ複合指示の内容を示すテーブルである。
【０１０１】
メッセージ複合導出部２１１は、サービスSx及びSzから受信するデータDzxを求める（ステップＳ１４１）。データDzxは、サービスSxの通信仕様の受信部及びサービスSzの通信仕様の送信部で示されるデータＩＤである。
【０１０２】
メッセージ複合導出部２１１は、サービスSyがサービスSzから受信するデータDzyを求める（ステップＳ１４２）。
【０１０３】
メッセージ複合導出部２１１は、サービスSzに対応するメッセージ処理部１１０の識別子Mzを求める（ステップＳ１４３）。
【０１０４】
図１５に示すように、サービス１２０とメッセージ処理部１１０との対応付けは対応管理情報において定義される。サービス１２０のＩＤとメッセージ処理部１１０のＩＤとの対応付けは、サービス配備の際にサービス通信管理部２１２によって実施される。サービス通信管理部２１２は、図１５に示す対応管理情報を管理する。メッセージ複合導出部２１１は、サービス通信管理部２１２からサービスSzに対応するメッセージ処理部１１０の識別子Mzを取得する。
【０１０５】
メッセージ複合導出部２１１は、識別子Mzのメッセージ処理部１１０へ送信するメッセージ複合指示Czを作成する（ステップＳ１４４）。そして、メッセージ複合指示の作成処理は終了する。
【０１０６】
図１６に例示するように、メッセージ複合指示Czは、サービスSzの通信仕様の送信部で示す各データについて、データＩＤ，複合先データＩＤ及び複合データＩＤを示す。
【０１０７】
例えば、サービスSzのデータaの送信をデータbの送信にまとめる場合には、データaの複合先データはデータbとなり、データbの複合データはデータaとなる。図１６に示す形式に従えば、サービスSzのデータaの送信をデータbの送信にまとめる場合には、メッセージ複合指示Czは、（データa，データb，-）及び（データb，-，データa）で表わされる。また、複合データＩＤには、不特定（＊）が指定されてもよい。
【０１０８】
ステップＳ１４４におけるメッセージ複合指示Czは、（データDzx，データDzy，-）及び（データDzy，-，データDzx）となる。
【０１０９】
次に、図１に示したメッセージ処理部１１０によるメッセージ受信処理を、図１８〜図２０に示すテーブルを参照しながら、図１７に示すフローチャート（ステップＳ１１〜Ｓ１６）に従って説明する。図１８は、図１に示したメッセージ制御システム１００におけるメッセージを示すテーブルである。図１９は、図１に示したメッセージ制御システム１００における通常メッセージを示すテーブルである。図２０は、図１に示したメッセージ制御システム１００における複合メッセージを示すテーブルである。
【０１１０】
複合メッセージ判定部１１４は、ネットワーク３からメッセージを受信する（ステップＳ１１）。
【０１１１】
複合メッセージ判定部１１４は、受信したメッセージが複合メッセージであるかを判定する（ステップＳ１２）。
【０１１２】
図１８に示すように、メッセージには、メッセージが通常メッセージであるか複合メッセージであるかを示すメッセージタイプと、メッセージの内容を示すメッセージ本体とが含まれる。
【０１１３】
図１９に示されるように、通常メッセージのメッセージ本体はデータである。
【０１１４】
一方、図２０に示すように、複合メッセージのメッセージ本体は、それぞれ１つ以上のデータ，受信指定及び転送指定を含む。受信指定及び転送指定は、例えば真理値であってよい。受信指定が真の場合には該当データはサービス１２０が受信するデータであることを示し、転送指定が真の場合には当該データはサービス１２０が送信するデータと共に複合メッセージとして後続のサービス１２０へ送ることを示す。
【０１１５】
受信したメッセージが複合メッセージでない（すなわち、通常メッセージである）場合には（ステップＳ１２のＮｏルート参照）、受信メッセージ転送部１１５は、メッセージをサービス１２０へ渡す（ステップＳ１３）。そして、メッセージ受信処理は終了する。
【０１１６】
一方、受信したメッセージが複合メッセージである場合には（ステップＳ１２のＹｅｓルート参照）、複合メッセージ分解部１１３は、メッセージ本体から、データ，受信指定及び転送指定を取り出す（ステップＳ１４）。
【０１１７】
受信メッセージ転送部１１５は、受信指定が真であるデータをそれぞれサービス１２０へ渡す（ステップＳ１５）。
【０１１８】
メッセージ複合処理部１１２は、転送指定が真であるデータをそれぞれ処理する（ステップＳ１６）。そして、メッセージ受信処理は終了する。その後、図２１で説明するメッセージ送信処理が実施される。
【０１１９】
次に、図１に示したメッセージ処理部１１０によるメッセージ送信処理を、図２１に示すフローチャート（ステップＳ２１〜Ｓ２５）に従って説明する。
【０１２０】
メッセージ複合処理部１１２は、サービス１２０から送信データDsを受け取る（ステップＳ２１）。
【０１２１】
メッセージ複合処理部１１２は、メッセージ管理部２１０から受信したメッセージ複合指示（図１６を参照）に基づき、送信データDsが複合対象であるかを判定する（ステップＳ２２）。
【０１２２】
送信データDsが複合対象でない場合には（ステップＳ２２のＮｏルート参照）、メッセージ複合処理部１１２は、通常のメッセージを生成し（ステップＳ２３）、処理はステップＳ２５へ進む。
【０１２３】
一方、送信データDsが複合対象である場合には（ステップＳ２２のＹｅｓルート参照）、メッセージ複合処理部１１２は、送信データDs及び転送データDtから複合メッセージを生成する（ステップＳ２４）。
【０１２４】
送信データDsに複合データ指定がある場合には、メッセージ複合処理部１１２は、指定されたデータDtを転送データとして保持していれば、データDsとデータDtとから複合メッセージを生成する。転送データDtがない場合には、メッセージ複合処理部１１２は、送信データDsを送信せずに送信待ちデータとして保持する。送信待ちデータDsは、前述した図１７のステップＳ１６における処理で該当する転送データDtが渡された際に複合メッセージとして送信される。
【０１２５】
送信データDsに複合先データ指定がある場合には、複合先データDuがサービス１２０から既に送信されたかが調べられる。この場合、メッセージ複合処理部１１２は、データDuを保持し外部へ送信しない。複合先データDuが送信されている場合、つまりメッセージ複合処理部１１２が送信データDuを保持している場合には、データDu及びDsから複合メッセージが生成され、メッセージ複合処理部１１２は保持していた送信データDuを破棄する。複合先データDuが未送信である場合、つまりメッセージ複合処理部１１２が送信データDuを保持していない場合には、メッセージ複合処理部１１２は、データDsを外部へ送信せず送信待ちデータとして保持する。データDsは、データDuがサービス１２０から送信された際にDuと複合メッセージとなり送信される。
【０１２６】
メッセージ複合処理部１１２は、メッセージを対象のサービス１２０へ送信する（ステップＳ２５）。そして、メッセージ送信処理は終了する。
【０１２７】
次に、図１に示したメッセージ処理部１１０による複数の送信先がある場合のメッセージ送信処理を、図２３及び図２４に示すテーブルを参照しながら、図２２に示すフローチャート（ステップＳ３１〜Ｓ４２）に従って説明する。図２３は、図１に示したメッセージ制御システム１００における複数の送信先がある場合のメッセージ複合指示の内容を示すテーブルである。図２４は、図１に示したメッセージ制御システム１００における複数の送信先がある場合の複合メッセージを示すテーブルである。
【０１２８】
メッセージ複合処理部１１２は、サービス１２０から送信データを受け取る（ステップＳ３１）。
【０１２９】
メッセージ複合処理部１１２は、メッセージ複合指示に基づき、送信データに複合データＩＤが付加されていて複合対象であるかを判定する（ステップＳ３２）。
【０１３０】
図２３に示すように、メッセージ複合指示は、データＩＤ，複合先データＩＤ及び複合データＩＤに加えて、宛先サービスＩＤが付加されてよい。
【０１３１】
送信データが複合対象でない（別言すれば、複合データＩＤがない）場合には（ステップＳ３２のＮｏルート参照）、メッセージ複合処理部１１２は、通常のメッセージを生成する（ステップＳ３３）。
【０１３２】
メッセージ複合処理部１１２は、メッセージを全ての送信先へ送信する（ステップＳ３４）。そして、複数の送信先がある場合のメッセージ送信処理は終了する。
【０１３３】
一方、送信データが複合対象である（別言すれば、複合データＩＤがある）場合には（ステップＳ３２のＹｅｓルート参照）、メッセージ複合処理部１１２は、メッセージ複合指示において宛先サービスＩＤが付加されているかを判定する（ステップＳ３５）。
【０１３４】
宛先サービスＩＤが付加されていない場合には（ステップＳ３５のＮｏルート参照）、メッセージ複合処理部１１２は、送信データ及び転送データから複合メッセージを生成する（ステップＳ３６）。そして、処理はステップＳ３４へ進む。
【０１３５】
図２４に示すように、複合メッセージには、データ，受信指定及び転送指定に加えて、宛先サービスＩＤが付加されてよい。
【０１３６】
一方、宛先サービスＩＤが付加されている場合には（ステップＳ３５のＹｅｓルート参照）、メッセージ複合処理部１１２は、送信先としてサービスSw1, Sw2, …を取得し、各送信先サービスSwiについて以下の処理を行う（ステップＳ３７）。
【０１３７】
メッセージ複合処理部１１２は、メッセージ複合指示の宛先サービスＩＤが送信先サービスSwiに一致するかを判定する（ステップＳ３８）。
【０１３８】
宛先サービスＩＤが送信先サービスSwiに一致しない場合には（ステップＳ３８のＮｏルート参照）、メッセージ複合処理部１１２は、送信データから通常のメッセージを生成する（ステップＳ３９）。そして、処理はステップＳ４１へ進む。
【０１３９】
一方、宛先サービスＩＤが送信先サービスSwiに一致する場合には（ステップＳ３８のＹｅｓルート参照）、メッセージ複合処理部１１２は、送信データ及び転送データから複合メッセージを生成する（ステップＳ４０）。
【０１４０】
図２４に示すように、複合メッセージには、データ，受信指定及び転送指定に加えて、宛先サービスＩＤが付加されてよい。
【０１４１】
メッセージ複合処理部１１２は、送信先サービスSwiが示すサービス１２０に対して、メッセージを送信する（ステップＳ４１）。
【０１４２】
メッセージ複合処理部１１２は、送信先の全てへのメッセージ送信処理が完了したかを判定する（ステップＳ４２）。
【０１４３】
送信先の全てへのメッセージ送信処理が完了していない場合には（ステップＳ４２のＮｏルート参照）、ステップＳ３７へ戻り、メッセージ送信処理を繰り返す。
【０１４４】
一方、送信先の全てへのメッセージ送信処理が完了している場合には（ステップＳ４２のＹｅｓルート参照）、複数の送信先がある場合のメッセージ送信処理は終了する。
【０１４５】
次に、図１に示したメッセージ管理部２１０による複数のフローが存在する場合のメッセージ複合指示の算出処理を、図２５に示すフローチャート（ステップＳ４１〜Ｓ４６）に従って説明する。
【０１４６】
メッセージ複合導出部２１１は、メッセージ複合指示Cx=[Cx1, Cx2, …]について、重複するメッセージ複合指示Cxi及びCxjを求める（ステップＳ４１）。
【０１４７】
メッセージ複合導出部２１１は、重複するメッセージ複合指示Cxi及びCxjのサービスSzを求める（ステップＳ４２）。
【０１４８】
メッセージ複合導出部２１１は、サービスSxとサービスSzとの最短経路Pzxを求める（ステップＳ４３）。
【０１４９】
メッセージ複合導出部２１１は、経路PzxにおいてサービスSzの次のサービスSwを求める（ステップＳ４４）。
【０１５０】
メッセージ複合導出部２１１は、サービスSwの通信仕様に従って、サービスSzからサービスSwへの送信データDzwを求める（ステップＳ４５）。
【０１５１】
メッセージ複合導出部２１１は、重複するメッセージ複合指示Cxi及びCxjのうち、送信データDzwを複合先とするメッセージ複合指示を採用する（ステップＳ４６）。そして、複数のフローが存在する場合のメッセージ複合指示の算出処理は終了する。
【０１５２】
〔Ａ−３〕効果
上述した実施形態の一例におけるメッセージ処理装置１（メッセージ制御システム１００）によれば、例えば、以下の作用効果を奏することができる。
【０１５３】
メッセージ複合処理部１１２は、各サービス１２０のメッセージの送受信関係に基づき、複数のメッセージを１つのメッセージに複合して他のメッセージ処理装置１へ送信する。複合メッセージ分解部１１３は、他のメッセージ処理装置１において複合されたメッセージを受信して分解する。そして、メッセージ複合処理部１１２は、分解したメッセージと新たなメッセージとを更に複合して他のメッセージ処理装置１へ転送する。
【０１５４】
これにより、メッセージングにかかるコストを削減できる。具体的には、通信及び同期の数を減らすことができ、遅延を短縮してメッセージ制御システム１００の応答性を高めることができる。また、複合メッセージにより、複数のデータの到着時刻のずれが最小となるので、同期に必要なキューのサイズを小さくでき、メッセージ制御システム１００の実行に必要な資源を減らすことができる。
【０１５５】
メッセージ複合処理部１１２は、メッセージ制御システム１００に新たなサービス１２０が追加された場合に、複数のサービス１２０間の通信回数が低減されるように、複合したメッセージの送信先を変更する。
【０１５６】
これにより、新たなサービス１２０が追加された場合においても、メッセージングにかかるコストを削減できる。
【０１５７】
メッセージ複合処理部１１２は、送信対象のメッセージを使用する複数のサービス１２０がある場合に、複数のサービス１２０のうち２以上のサービス１２０への通信経路を有する他のサービス１２０を送信対象のメッセージの送信先とする。
【０１５８】
これにより、複数のメッセージの送信先がある場合にも、メッセージングにかかるコストを削減できる。
【０１５９】
メッセージ複合処理部１１２は、送信対象のメッセージの通信経路として複数の通信経路がある場合に、複数の通信経路のうち経路長が最短の通信経路に接続されているサービス１２０を送信対象のメッセージの送信先とする。
【０１６０】
これにより、メッセージの送信先までのフローが複数ある場合にも、メッセージングにかかるコストを削減できる。
【０１６１】
〔Ｂ〕その他
開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。本実施形態の各構成及び各処理は、必要に応じて取捨選択することができ、あるいは適宜組み合わせてもよい。
【０１６２】
〔Ｃ〕付記
以上の実施形態に関し、さらに以下の付記を開示する。
【０１６３】
（付記１）
メッセージの送受信により複数のサービス間の連携を行なうメッセージ制御システムに備えられる情報処理装置であって、
各サービスのメッセージの送受信関係に基づき、複数のメッセージを１つのメッセージに複合して他の情報処理装置へ送信する送信部と、
他の情報処理装置において複合されたメッセージを受信して分解する受信部と、を備え、
前記送信部は、分解したメッセージと新たなメッセージとを更に複合して他の情報処理装置へ転送する、
情報処理装置。
【０１６４】
（付記２）
前記送信部は、前記メッセージ制御システムに新たなサービスが追加された場合に、前記複数のサービス間の通信回数が低減されるように、複合したメッセージの送信先を変更する、
付記１に記載の情報処理装置。
【０１６５】
（付記３）
前記送信部は、送信対象のメッセージを使用する複数のサービスがある場合に、前記複数のサービスのうち２以上のサービスへの通信経路を有する他のサービスを前記送信対象のメッセージの送信先とする、
付記１又は２に記載の情報処理装置。
【０１６６】
（付記４）
前記送信部は、送信対象のメッセージの通信経路として複数の通信経路がある場合に、前記複数の通信経路のうち経路長が最短の通信経路に接続されているサービスを前記送信対象のメッセージの送信先とする、
付記１〜３のいずれか１項に記載の情報処理装置。
【０１６７】
（付記５）
メッセージの送受信により複数のサービス間の連携を行なうメッセージ制御システムであって、
前記複数のサービスにそれぞれ対応付けられた複数の情報処理装置と、
前記複数の情報処理装置のうち第１の情報処理装置に対して、各サービスのメッセージの送受信関係に基づき、複数のメッセージを１つのメッセージに複合して、前記複数の情報処理装置のうち第２の情報処理装置へ送信するように指示する制御装置と、
を備え、
前記第１の情報処理装置は、
前記制御装置からの指示に従って、複合したメッセージを前記第２の情報処理装置へ送信する送信部と、
前記複数の情報処理装置のうち第３の情報処理装置において複合されたメッセージを受信して分解する受信部と、
を有し、
前記送信部は、分解したメッセージと新たなメッセージとを更に複合して前記複数の情報処理装置のうち第４の情報処理装置へ転送する、
メッセージ制御システム。
【０１６８】
（付記６）
前記送信部は、前記メッセージ制御システムに新たなサービスが追加された場合に、前記複数のサービス間の通信回数が低減されるように、複合したメッセージの送信先を変更する、
付記５に記載のメッセージ制御システム。
【０１６９】
（付記７）
前記送信部は、送信対象のメッセージを使用する複数のサービスがある場合に、前記複数のサービスのうち２以上のサービスへの通信経路を有する他のサービスを前記送信対象のメッセージの送信先とする、
付記５又は６に記載のメッセージ制御システム。
【０１７０】
（付記８）
前記送信部は、送信対象のメッセージの通信経路として複数の通信経路がある場合に、前記複数の通信経路のうち経路長が最短の通信経路に接続されているサービスを前記送信対象のメッセージの送信先とする、
付記５〜７のいずれか１項に記載のメッセージ制御システム。
【０１７１】
（付記９）
メッセージの送受信により複数のサービス間の連携を行なうメッセージ制御システムに備えられる情報処理装置におけるコンピュータに、
各サービスのメッセージの送受信関係に基づき、複数のメッセージを１つのメッセージに複合して他の情報処理装置へ送信し、
他の情報処理装置において複合されたメッセージを分解して受信し、
分解したメッセージと新たなメッセージとを更に複合して他の情報処理装置へ転送する、
処理を実行させる、メッセージ制御プログラム。
【０１７２】
（付記１０）
前記送信部は、前記メッセージ制御システムに新たなサービスが追加された場合に、前記複数のサービス間の通信回数が低減されるように、複合したメッセージの送信先を変更する、
処理を前記コンピュータに実行させる、付記９に記載のメッセージ制御プログラム。
【０１７３】
（付記１１）
前記送信部は、送信対象のメッセージを使用する複数のサービスがある場合に、前記複数のサービスのうち２以上のサービスへの通信経路を有する他のサービスを前記送信対象のメッセージの送信先とする、
処理を前記コンピュータに実行させる、付記９又は１０に記載のメッセージ制御プログラム。
【０１７４】
（付記１２）
前記送信部は、送信対象のメッセージの通信経路として複数の通信経路がある場合に、前記複数の通信経路のうち経路長が最短の通信経路に接続されているサービスを前記送信対象のメッセージの送信先とする、
処理を前記コンピュータに実行させる、付記９〜１１のいずれか１項に記載のメッセージ制御プログラム。
【符号の説明】
【０１７５】
１００    ：メッセージ制御システム
１        ：メッセージ処理装置
１１      ：ＣＰＵ
１１０    ：メッセージ処理部
１１１    ：メッセージ複合指示管理部
１１２    ：メッセージ複合処理部
１１３    ：複合メッセージ分解部
１１４    ：複合メッセージ判定部
１１５    ：受信メッセージ転送部
１２      ：メモリ
１３      ：表示制御部
１３０    ：表示装置
１４      ：記憶装置
１５      ：入力Ｉ／Ｆ
１５１    ：マウス
１５２    ：キーボード
１６      ：読み書き処理部
１６０    ：記録媒体
１７      ：通信Ｉ／Ｆ
１２０    ：サービス
２        ：メッセージ管理装置
２１０    ：メッセージ管理部
２１１    ：メッセージ複合導出部
２１２    ：サービス通信管理部
３        ：ネットワーク
【図１】
2020173630.tif 000003
【図２】
2020173630.tif 000004
【図３】
2020173630.tif 000005
【図４】
2020173630.tif 000006
【図５】
2020173630.tif 000007
【図６】
2020173630.tif 000008
【図７】
2020173630.tif 000009
【図８】
2020173630.tif 000010
【図９】
2020173630.tif 000011
【図１０】
2020173630.tif 000012
【図１１】
2020173630.tif 000013
【図１２】
2020173630.tif 000014
【図１３】
2020173630.tif 000015
【図１４】
2020173630.tif 000016
【図１５】
2020173630.tif 000017
【図１６】
2020173630.tif 000018
【図１７】
2020173630.tif 000019
【図１８】
2020173630.tif 000020
【図１９】
2020173630.tif 000021
【図２０】
2020173630.tif 000022
【図２１】
2020173630.tif 000023
【図２２】
2020173630.tif 000024
【図２３】
2020173630.tif 000025
【図２４】
2020173630.tif 000026
【図２５】
2020173630.tif 000027