JP2011034392A - サービス連携装置、サービス連携方法及びサービス連携プログラム - Google Patents
サービス連携装置、サービス連携方法及びサービス連携プログラム Download PDFInfo
- Publication number
- JP2011034392A JP2011034392A JP2009180664A JP2009180664A JP2011034392A JP 2011034392 A JP2011034392 A JP 2011034392A JP 2009180664 A JP2009180664 A JP 2009180664A JP 2009180664 A JP2009180664 A JP 2009180664A JP 2011034392 A JP2011034392 A JP 2011034392A
- Authority
- JP
- Japan
- Prior art keywords
- service
- task
- message
- container
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 178
- 238000012545 processing Methods 0.000 claims abstract description 48
- 230000005540 biological transmission Effects 0.000 claims description 70
- 238000013461 design Methods 0.000 abstract description 16
- 238000011161 development Methods 0.000 abstract description 6
- 238000004891 communication Methods 0.000 description 33
- 230000006870 function Effects 0.000 description 29
- 238000010586 diagram Methods 0.000 description 13
- 238000003780 insertion Methods 0.000 description 7
- 230000037431 insertion Effects 0.000 description 7
- 239000002131 composite material Substances 0.000 description 5
- 238000004886 process control Methods 0.000 description 5
- 230000007704 transition Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000007639 printing Methods 0.000 description 2
- 240000004050 Pentaglottis sempervirens Species 0.000 description 1
- 235000004522 Pentaglottis sempervirens Nutrition 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
【解決手段】処理を実行したサービスでは、処理の実行結果をメッセージにより他のサービスへ送信せず、記憶領域に記憶する。他のサービスへ送信するメッセージには、前記記憶領域の識別情報を含める。メッセージを受信した前記他のサービスは、メッセージに含まれる識別情報に基づき、前記記憶領域へアクセスして、サービスの実行結果を利用して処理を実行する。
【選択図】図1
Description
サービスとは、意味のある単位の機能を持つ一まとまりのソフトウェアの集合であって、外部から標準化された手順によって呼び出すことができるものである。意味のあるとは、業務上、あるいは人間にとって何らかの意味があることを指す。なお、複数のサービスを組み合わせて構成された一連の処理をプロセスと呼ぶ。
ESBとは、外部システムとサービスとの間の連携や、サービス間の連携を図るミドルウェアである。ESBでは、メッセージルータ(メッセージバス)を提供し、このメッセージルータを通じて、外部システムとサービスとの間や、サービス間でメッセージの交換を行い、外部システムとサービスとの間の連携や、サービス間の連携を図る。
つまり、ESBは、メッセージ指向のアプリケーション構築を可能にするミドルウェアということができる。
この発明は、例えば、プロセスを構成するサービスを開発する場合におけるメッセージの設計開発の負荷を小さくすることを目的とする。
プロセスを構成する複数のサービスを連携して動作させるサービス連携装置であり、
前記プロセスが実行される場合に、前記複数のサービスの所定のサービスで生成される情報であって、前記所定のサービス以外の他のサービスで使用される情報を格納するための記憶領域を記憶装置に生成する記憶領域生成部と、
前記記憶領域生成部が生成した記憶領域の識別情報を含めたメッセージを、次に実行されるサービスへ送信して、前記次に実行されるサービスを起動させるメッセージ送信部と、
前記所定のサービスが実行された場合に前記所定のサービスから前記識別情報に基づき呼び出され、前記記憶領域にアクセスして、前記所定のサービスで生成した情報を前記記憶領域に格納するとともに、前記記憶領域に格納された情報を使用する前記他のサービスが実行された場合に前記他のサービスから前記識別情報に基づき呼び出され、前記記憶領域にアクセスして、前記所定のサービスで生成した情報を読み出す記憶装置操作部と
を備えることを特徴とする。
なお、以下の説明において、処理装置とは、後述するCPU911等であり、記憶装置とは、後述するRAM913等のことである。
なお、ESBの基本的な仕様は、非特許文献2に記載されたJBI(Java Business Integration)で規定されている。
図1に示すように、ESBは、ESBコンテナ800、タスクコンポーネント810、メッセージルータ820、ルーティング定義830から構成される。
ESBコンテナ800は、ESB全体の制御を行うものであり、ESBにおけるベースプログラムである。つまり、ESBコンテナ800は、ESBにおけるOSのような役割を果たすものである。ESBにおける全ての構成要素はESBコンテナ800に配置される。
タスクコンポーネント810は、メッセージを送受信する機能と、サービスとを備える。つまり、タスクコンポーネント810は、メッセージルータ820を介してメッセージを受信し、受信したメッセージに基づきサービスを起動させる。そして、サービスで生成されたメッセージをメッセージルータ820を介して他のタスクコンポーネント810等へ送信する。図1では、タスク1コンポーネント、タスク2コンポーネント、タスク3コンポーネント、タスク4コンポーネントを備える。
メッセージルータ820は、メッセージのルーティングを行う。例えば、メッセージルータ820は、タスク2コンポーネント宛てとして送信されたメッセージの宛先を、タスク2コンポーネントの実際のアドレスに置き換えして、タスク2コンポーネントへ送信する。また、メッセージルータ820は、タスクコンポーネント810間のプロトコルの違いを吸収して、タスクコンポーネント810がプロトコルを意識することなく通信することを可能にする。
ルーティング定義830は、サービス間の接続方法(実行順序やプロトコル)を定義したものであり、これに基づきタスクコンポーネント810、メッセージルータ820によりメッセージの送受信が制御される。
そのため、サービスを開発する場合、必ずメッセージを設計する必要がある。つまり、サービスを開発する場合、そのサービスで使用するメッセージスキーマの設計をするとともに、各メッセージスキーマに対して、そのメッセージを送受信できるメッセージ送信プログラム及びメッセージ受信プログラムを開発する必要がある。
また、次のタスクコンポーネント810で使用される情報だけでなく、後続のタスクコンポーネント810で使用される情報は全て含めなければならない。また、この他に、メッセージには、プロセス制御に必要な情報、プロセス全体で使用する情報等を含めなければならない。つまり、メッセージに含める情報は、プロセス全体を俯瞰的に見て決める必要がある。そのため、メッセージを設計することは、個々のサービス内容を局所的に把握して設計、開発を行う一般的な業務アプリケーション開発者には、非常に難しい。
つまり、n個(図1では4個)のタスクコンポーネント810がある場合には、(n−1)個(図1では3個)のメッセージを設計するだけでなく、(n−1)×2個(図1では6個)のメッセージ送受信プログラムを開発する必要がある。
特に、プロセス中の1つのサービスを変更した場合、そのサービスに対応するタスクコンポーネント810で送受信するメッセージと送受信プログラムだけでなく、その前のタスクコンポーネント810のメッセージ送信プログラム、後続のタスクコンポーネント810で送受信するメッセージとメッセージ送受信プログラムも修正しなければならない可能性がある。
例えば、図1においてタスク2コンポーネントを修正した場合、タスク2コンポーネントの中の要素だけでなく、メッセージmsg_3_4、メッセージ送信1プログラム、メッセージ受信3プログラム、メッセージ送信3プログラム、メッセージ受信4プログラムを修正しなければいけない可能性がある。
プロセスを制御する方法としては、非特許文献1のProcess Managerパターンがある。
Process Managerパターンでは、プロセスを構成するサービスとは別にプロセス実行サービスというサービスを設け、プロセス実行サービスが各サービスを業務フローに従った順序に起動させる。特許文献1には、Process Manager型の制御を行うためのプロセス実行サービスをESBに追加したシステムについての記載がある。
ビジネスプロセス実行コンポーネント850は、プロセスの実行を制御するプロセス実行サービスである。つまり、ビジネスプロセス実行コンポーネント850は、プロセスを構成するタスクコンポーネント810とは別に設けられたタスクコンポーネント810である。
ビジネスプロセス定義840は、ビジネスプロセス実行コンポーネント850が使用するプロセスの定義情報である。ビジネスプロセス定義840は、プロセスの実行順序を定義したプロセス定義841、メッセージの変数を定義したメッセージ変数定義842、メッセージのスキーマを定義したメッセージスキーマ定義843を備える。
まず、ビジネスプロセス実行コンポーネント850は、外部システム等からプロセスの実行メッセージを受信する。そして、ビジネスプロセス実行コンポーネント850は、メッセージルータ820を介してメッセージをタスク1コンポーネントへ送信する(1)。タスク1コンポーネントでは、サービス1を実行して、ルーティング定義830に従いメッセージmsg_1_2をメッセージルータ820を介してビジネスプロセス実行コンポーネント850へ送信する(2)。
次に、ビジネスプロセス実行コンポーネント850は、メッセージルータ820を介してメッセージmsg_1_2をタスク2コンポーネントへ送信する(3)。タスク2コンポーネントでは、サービス2を実行して、ルーティング定義830に従いメッセージmsg_2_3をメッセージルータ820を介してビジネスプロセス実行コンポーネント850へ送信する(4)。
次に、ビジネスプロセス実行コンポーネント850は、メッセージルータ820を介してメッセージmsg_2_3をタスク3コンポーネントへ送信する(5)。タスク3コンポーネントでは、サービス3を実行して、ルーティング定義830に従いメッセージmsg_3_4をメッセージルータ820を介してビジネスプロセス実行コンポーネント850へ送信する(6)。
次に、ビジネスプロセス実行コンポーネント850は、メッセージルータ820を介してメッセージmsg_3_4をタスク4コンポーネントへ送信する(7)。タスク4コンポーネントでは、サービス4を実行して、ルーティング定義830に従い外部システム等へ送信するメッセージをメッセージルータ820を介してビジネスプロセス実行コンポーネント850へ送信する(8)。
そして、ビジネスプロセス実行コンポーネント850は、外部システム等へ送信するメッセージを外部システム等へ送信する。
つまり、ProcessManager型のプロセス制御では、ビジネスプロセス実行コンポーネント850を介してメッセージが送受信されるため、メッセージルータ820におけるメッセージの通信量が多くなる。つまり、メッセージルータ820にかかる負荷が大きい。
図2は、実施の形態1に係るESBサービス間自動連携装置100(サービス連携装置)の構成図である。
ESBサービス間自動連携装置100では、プロセスインスタンス143と呼ぶ記憶領域に記憶した変数を介して、タスクコンポーネント140間でデータ交換可能である。そのため、他のタスクコンポーネント140へ送信するメッセージには、渡したいデータを含める必要はなく、変数を記憶したプロセスインスタンス143を特定可能な情報(及びプロセス制御に必要な情報、プロセス全体で使用する情報)のみを送信すればよい。したがって、各タスクコンポーネント140におけるメッセージのスキーマ及びメッセージの送受信プログラムは、共通化することが可能であり、メッセージ設計、開発の負荷を小さくすることができる。
また、ESBサービス間自動連携装置100では、各タスクコンポーネント140が、直接次に実行されるサービスを管理するタスクコンポーネント140へメッセージを送信する。したがって、メッセージルータ150におけるメッセージの通信量が少なくなる。
図2に示すように、ESBサービス間自動連携装置100は、ESBコンテナ110、ESB定義エディタ120、ESB定義記憶部130を備える。
なお、サービス実行部141をサービスの実態と読み替えてもよい。つまり、タスク1であれば、サービス実行部141に代えサービス1を備え、タスク2であれば、サービス実行部141に代えサービス2を備え、タスク3であれば、サービス実行部141に代えサービス3を備えると読み替えてもよい。
図3は、タスク基盤142の説明図である。
図3に示すように、タスク基盤142は、インスタンス管理部144(記憶領域生成部)、共通メッセージ処理部145(メッセージ送信部)、サービス実行管理部146、タスクパラメータ解釈部147、タスクパラメータ記憶部148を備える。
また、インスタンス管理部144は、プロセスの実行が終了した場合等に、生成したプロセスインスタンス143を削除(解放)するインスタンス解放機能を有する。
共通メッセージ処理部145は、プロセス全体で使用する情報が格納される共通情報とプロセスインスタンス143のインスタンス識別情報とを含めた共通メッセージを生成する共通メッセージ生成機能を有する。また、共通メッセージ処理部145は、メッセージルータ150を介して受信した共通メッセージを解釈する共通メッセージ解釈機能と、メッセージルータ150を介して受信した共通メッセージを送受信する共通メッセージ通信機能とを有する。
変数基盤160は、処理装置により実行され、タスクコンポーネント140からプロセスインスタンス143に記憶した変数へのアクセスを可能とする。
図4に示すように、変数基盤160は、変数API161、変数マネージャ162、変数定義パラメータ記憶部163を備える。
変数API161は、変数グループを初期化する機能や変数グループを削除する機能を有する。変数グループとは、複数の変数をまとめたもので、変数の領域確保の単位である。また、変数API161は、変数に格納された値を取得する変数取得機能や、変数に値を格納する変数更新機能を有する。また、後述する複合型の変数を用いる場合に使用される複合型指定機能を有する。
変数API161は、変数取得機能や変数更新機能を用いる場合、変数型が単純型であれば、変数グループ名と変数名とを指定して変数を指定する。また、変数型が複合型であれば、変数グループと、複合型の内部の入れ子要素、配列要素、ハッシュ型の要素を直接指定する複合型指定子とを指定して変数を指定する。複合型指定子を解釈するのが複合型指定機能である。
プロセス定義編集部121は、後述するプロセス定義記憶部131が記憶するプロセス定義を編集する機能であり、プロセスにおけるタスクコンポーネント140の呼び出し順序(サービスの実行順序)と、各タスクコンポーネント140のタスクパラメータに設定される値とを編集する。
変数定義編集部122は、後述する変数定義記憶部132が記憶する変数定義を編集する機能であり、プロセスインスタンス143に記憶する変数を編集する。
ESB定義配置部123は、プロセス定義編集部121と変数定義編集部122とが編集したデータをESB定義記憶部130に記憶させる。
図5は、外部システム200からメッセージを受信してから、タスク1〜3で構成されるプロセスがどのように実行されるかを示した図である。なお、以下の説明において、(s1)から(s10)の番号は、処理の流れを表し、図5における番号と対応している。
その結果、ここでは、タスク1のタスクパラメータ記憶部148には、メッセージの宛先としてタスク2が登録されている。タスク2のタスクパラメータ記憶部148には、メッセージの宛先としてタスク3が登録されている。タスク3のタスクパラメータ記憶部148には、メッセージの宛先としてプロセスの実行を指示した装置(ここでは、外部システム200となる)が登録されている。また、プロセスの実行を指示する外部システム200等からのメッセージの宛先として、タスク1がメッセージルータ150に設定されている。
さらに、タスク1のタスクパラメータ記憶部148には、初期化する変数グループとして、group1が設定されている。
また、さらに、変数定義パラメータ記憶部163には、変数1と変数2とが設定されている。
外部システム200からメッセージルータ150へ外部メッセージ1が入力される。入力された外部メッセージ1は、メッセージルータ150により、タスク1へ送信される。
タスク1のインスタンス管理部144は、プロセスインスタンス143を生成する。また、インスタンス管理部144は、生成したプロセスインスタンス143にインスタンス識別情報を付与する。
また、タスクパラメータ解釈部147は、タスクパラメータ記憶部148に初期化する変数グループとしてgroup1が設定されているため、変数API161を呼び出し、変数マネージャ162を介して生成したプロセスインスタンス143にgroup1の領域を確保する。そして、確保したgroup1の領域に、変数グループgroup1の定義に従って、変数1=“aaa”と、変数2=“1”とを設定(初期化)する。
なお、タスクパラメータ解釈部147が変数API161を呼び出す際、生成したプロセスインスタンス143のインスタンス識別情報を引数として与える。これにより、変数API161及び変数マネージャ162では、プロセスインスタンス143を特定することができる。
タスク1のサービス実行部141は、(s2)で生成したプロセスインスタンス143のインスタンス識別情報と外部メッセージ1とを引数として、サービス1を起動して実行する。サービス1は、変数API161を呼び出し、(s2)でプロセスインスタンス143に設定された変数を読み出し、処理が実行される。つまり、サービス1は、初期化された情報を参照して処理を実行する。また、サービス1は、変数API161を呼び出し、サービス1で生成した情報を、プロセスインスタンス143に設定された変数へ格納する。
なお、変数API161を呼び出す際、(s2)で生成したプロセスインスタンス143のインスタンス識別情報を引数として与える。
タスク1のサービス実行管理部146により、サービス1が終了したことが確認されると、タスク1の共通メッセージ処理部145により共通メッセージ1が生成される。そして、共通メッセージ処理部145は、タスクパラメータ記憶部148に設定された宛先であるタスク2を宛先として設定して、共通メッセージ1をメッセージルータ150へ送信する。
なお、共通メッセージ1には、(s2)で生成したプロセスインスタンス143のインスタンス識別情報が含まれる。
共通メッセージ1は、メッセージルータ150によりタスク2へルーティングされ、タスク2へ送信される。すると、タスク2の共通メッセージ処理部145は、共通メッセージ1を解釈して、共通メッセージ1に含まれたインスタンス識別情報を取得する。
タスク2のサービス実行部141は、(s5)で取得したプロセスインスタンス143のインスタンス識別情報を引数として、サービス2を起動して実行する。サービス2は、変数API161を呼び出し、サービス1でプロセスインスタンス143に設定された変数を読み出し、処理が実行される。つまり、サービス2は、サービス1で生成された情報を参照して処理を実行する。また、サービス2は、変数API161を呼び出し、サービス2で生成した情報を、プロセスインスタンス143に設定された変数へ格納する。
なお、変数API161を呼び出す際、(s5)で取得したプロセスインスタンス143のインスタンス識別情報を引数として与える。
タスク2のサービス実行管理部146により、サービス2が終了したことが確認されると、タスク2の共通メッセージ処理部145により共通メッセージ2が生成される。そして、共通メッセージ処理部145は、タスクパラメータ記憶部148に設定された宛先であるタスク3を宛先として設定して、共通メッセージ2をメッセージルータ150へ送信する。
なお、共通メッセージ1には、(s5)で取得したプロセスインスタンス143のインスタンス識別情報が含まれる。
共通メッセージ2は、メッセージルータ150によりタスク3へルーティングされ、タスク3へ送信される。すると、タスク3の共通メッセージ処理部145は、共通メッセージ2を解釈して、共通メッセージ2に含まれたインスタンス識別情報を取得する。
タスク3のサービス実行部141は、(s8)で取得したプロセスインスタンス143のインスタンス識別情報を引数として与えて、サービス3を起動して実行する。サービス3では、変数API161を呼び出し、サービス1,2でプロセスインスタンス143に設定された変数を読み出し、処理が実行される。つまり、サービス3では、サービス1,2で生成された情報を参照して処理を実行する。
なお、変数API161を呼び出す際、(s8)で取得したプロセスインスタンス143のインスタンス識別情報を引数として与える。
タスク3のサービス実行管理部146により、サービス3が終了したことが確認されると、タスク3の共通メッセージ処理部145により、サービス3の結果等を含んだ外部メッセージ2が生成される。そして、共通メッセージ処理部145は、タスクパラメータ記憶部148に設定された宛先である外部システム200を宛先として設定して、外部メッセージ2をメッセージルータ150へ送信する。
なお、インスタンス管理部144は、(s2)で生成したプロセスインスタンス143と、変数グループgroup1を削除(解放)する。
例えば、サービス実行部141が実行するサービスは、他の装置(サービス実行装置300と呼ぶ)が備えていてもよい。つまり、サービス実行部141は、サービス実行装置300が備えたサービスの起動を行うとしてもよい。
実施の形態1では、1つのESBコンテナ110において実行されるサービスにより構成されたプロセスを扱うESBサービス間自動連携装置100について説明した。
実施の形態2では、あるESBコンテナ110において実行されるサービスと、前記あるESBコンテナ110とは異なるESBコンテナ110において実行されるサービスとにより構成されたプロセスを扱うESBサービス間自動連携装置100について説明する。つまり、実施の形態2では、複数のESBコンテナ110を跨るプロセスを扱うESBサービス間自動連携装置100について説明する。
なお、実施の形態2に係るESBサービス間自動連携装置100について、実施の形態1に係るESBサービス間自動連携装置100と異なる部分のみ説明する。
図6では、コンテナ1とコンテナ2との2つのESBコンテナ110を跨るプロセスを扱うESBサービス間自動連携装置100を示す。
また、ここでは、図6のプロセス定義記憶部131に記憶された情報が示すように、まずコンテナ1のタスク1が実行され、次にコンテナ2のタスク2とタスク3とが実行され、そしてコンテナ1のタスク4が実行されるプロセスについて説明する。つまり、ここでは、タスク1が終了した後に、コンテナ1がコンテナ2をリモートコンテナとして呼び出しタスク2とタスク3とを実行させて、その実行結果を取得し、タスク4を実行する例について説明する。
コンテナ間通信タスク180は、リモートコンテナCALL送信タスク181、リモートコンテナCALL受信タスク182、リモートコンテナRETURN送信タスク183、リモートコンテナRETURN受信タスク184を備える。
リモートコンテナCALL送信タスク181は、他のESBコンテナ110に配置されたタスクコンポーネント140を呼び出す場合に実行されるコンテナ間変換取得サービスを備える。
リモートコンテナCALL受信タスク182は、リモートコンテナCALL送信タスク181から呼び出される場合に実行されるリモートコンテナ初期化サービスを備える。
リモートコンテナRETURN送信タスク183は、呼び出し元のESBコンテナ110へ処理を返す場合に実行されるリモートコンテナ終了サービスを備える。
リモートコンテナRETURN受信タスク184は、リモートコンテナRETURN送信タスク183から処理が返される場合に実行されるコンテナ間変数展開サービスを備える。
ここで、コンテナ間変換取得サービスとリモートコンテナ終了サービスとが装置間連携情報送信サービスの一例であり、リモートコンテナ初期化サービスとコンテナ間変数展開サービスとが装置間連携情報受信サービスの一例である。
図6では、後述するESBコンテナ設定部124により、コンテナ1側には、リモートコンテナCALL送信タスク181とリモートコンテナRETURN受信タスク184とが設定され、コンテナ2側には、リモートコンテナCALL受信タスク182とリモートコンテナRETURN送信タスク183とが設定されている。
特に、コンテナ間タスク自動挿入部171は、コンテナ間通信タスク180を設定することにより、タスクコンポーネント140における共通メッセージの宛先を変更する。図6の例であれば、元々は、タスク1における共通メッセージの宛先はタスク2であり、タスク2における共通メッセージの宛先はタスク3であり、タスク3における共通メッセージの宛先はタスク4である。しかし、コンテナ間通信タスク180を設定することにより、タスク1における共通メッセージの宛先をリモートコンテナCALL送信タスク181とし、リモートコンテナCALL送信タスク181からリモートコンテナCALL受信タスク182へメッセージ(ESB間連携CALLメッセージ)を送信し、リモートコンテナCALL受信タスク182からタスク2へ共通メッセージを送信するように変更する。また、タスク3における共通メッセージの宛先をリモートコンテナRETURN送信タスク183とし、リモートコンテナRETURN送信タスク183からリモートコンテナRETURN受信タスク184へメッセージ(ESB間連携RETURNメッセージ)を送信し、リモートコンテナRETURN受信タスク184からタスク4へ共通メッセージを送信するように変更する。
ESBコンテナ設定部124は、必要に応じて、ESBコンテナ110にコンテナ間通信タスク180を配置する。例えば、ESBコンテナ設定部124は、プロセス定義編集部121に設定されたプロセス定義に応じて、ESBコンテナ110にコンテナ間通信タスク180を設定する。
つまり、他のESBコンテナ110に配置されたタスクコンポーネント140を呼び出す側のESBコンテナ110には、リモートコンテナCALL送信タスク181とリモートコンテナRETURN受信タスク184とを設定し、呼び出される側のESBコンテナ110には、リモートコンテナCALL受信タスク182とリモートコンテナRETURN送信タスク183とを設定する。
その結果、上述したように、図6では、後述するESBコンテナ設定部124により、コンテナ1側には、リモートコンテナCALL送信タスク181とリモートコンテナRETURN受信タスク184とが設定され、コンテナ2側には、リモートコンテナCALL受信タスク182とリモートコンテナRETURN送信タスク183とが設定されている。
コンテナ間変数同期部164は、コンテナ間変換取得サービス、リモートコンテナ初期化サービス、リモートコンテナ終了サービス、コンテナ間変数展開サービスから呼び出され、変数の有効範囲としてコンテナ間を指定された変数を操作する。
図7は、外部システム200からメッセージを受信してから、上述したタスク1〜4で構成されるプロセスがどのように実行されるかを示した図である。なお、以下の説明において、(t1)から(t26)の番号は、処理の流れを表し、図7における番号と対応している。
また、ESB定義記憶部130に記憶された定義情報を、ESB定義管理部170が読み込み、タスクパラメータ記憶部148と変数定義パラメータ記憶部163とに設定される。さらに、コンテナ間タスク自動挿入部171により、タスクパラメータ記憶部148の情報が変更されるとともに、タスクパラメータ記憶部185に情報が設定される。
その結果、ここでは、タスク1のタスクパラメータ記憶部148には、メッセージの宛先としてリモートコンテナCALL送信タスク181が登録されている。リモートコンテナCALL送信タスク181のタスクパラメータ記憶部185には、メッセージの宛先としてリモートコンテナCALL受信タスク182が登録されている。リモートコンテナCALL受信タスク182のタスクパラメータ記憶部185には、メッセージの宛先としてタスク2が登録されている。タスク2のタスクパラメータ記憶部148には、メッセージの宛先としてタスク3が登録されている。タスク3のタスクパラメータ記憶部148には、メッセージの宛先としてリモートコンテナRETURN送信タスク183が登録されている。リモートコンテナRETURN送信タスク183のタスクパラメータ記憶部185には、メッセージの宛先としてリモートコンテナRETURN受信タスク184が登録されている。リモートコンテナRETURN受信タスク184のタスクパラメータ記憶部185には、メッセージの宛先としてタスク4が登録されている。また、プロセスの実行を指示する外部システム200等からのメッセージの宛先として、タスク1がメッセージルータ150に設定されている。
さらに、タスク1のタスクパラメータ記憶部148には、初期化する変数グループとして、group1とgroup2とが設定され、タスク2のタスクパラメータ記憶部148には、初期化する変数グループとして、group3とが設定されている。なお、変数グループgroup1は、変数の有効範囲としてコンテナ間が指定されている。変数グループgroup2,3は、変数の有効範囲としてコンテナ内が指定されている。
外部メッセージ1がタスク1へ送信され、コンテナ1の記憶装置にプロセスインスタンス143が生成される。プロセスインスタンス143には、group1とgroup2との領域が確保される。そして、サービス1が実行される。サービス1が終了すると、インスタンス識別情報が含まれた共通メッセージがリモートコンテナCALL送信タスク181を宛先として送信される。
共通メッセージがリモートコンテナCALL送信タスク181へ送信され、共通メッセージを解釈して、共通メッセージに含まれたインスタンス識別情報を取得する。
リモートコンテナCALL送信タスク181では、(t4)で取得したプロセスインスタンス143のインスタンス識別情報を引数として、コンテナ間変数取得サービスを起動して実行する。コンテナ間変数取得サービスは、コンテナ間変数同期部164を呼び出し、変数の有効範囲がタスク間と指定された変数グループgroup1の変数データを読み出す。そして、コンテナ間変数取得サービスは、読み出した変数グループgroup1の変数データを含めたESB間連携CALLメッセージを生成する。
リモートコンテナCALL送信タスク181では、コンテナ2のリモートコンテナCALL受信タスク182を宛先として、ESB間連携CALLメッセージをメッセージルータ1へ送信する。
ESB間連携CALLメッセージはコンテナ2のESB間連携キュー1に記憶される。ESB間連携CALLメッセージの処理順序が回ってくると、ESB間連携CALLメッセージは、メッセージルータ2でルーティングされ、リモートコンテナCALL受信タスク182へ送信される。
リモートコンテナCALL受信タスク182では、ESB間連携CALLメッセージに含まれる変数データを取得する。
リモートコンテナCALL受信タスク182では、(t8)で取得した変数データを引数として、リモートコンテナ初期化サービスを起動して実行する。リモートコンテナ初期化サービスは、コンテナ2の記憶装置にプロセスインスタンス143を生成し、インスタンス識別情報を付与する。そして、リモートコンテナ初期化サービスは、コンテナ間変数同期部164を呼び出し、引数として与えられた変数データを記憶する領域を、生成したプロセスインスタンス143に確保して、変数データを格納する。つまり、変数グループgroup1を格納する領域を確保して、変数グループgroup1のデータを格納する。
リモートコンテナCALL受信タスク182では、(t9)で付与したインスタンス識別情報を含めた共通メッセージを生成して、タスク2を宛先としてメッセージルータ2へ送信する。
共通メッセージがタスク2へ送信され、共通メッセージからインスタンス情報が取得される。取得されたインスタンス情報に基づき、インスタンス管理部144によりプロセスインスタンス143に変数グループgroup3を格納する領域が確保され、初期化される。そして、共通メッセージから取得したインスタンス識別情報を引数として、サービス2が実行される。サービス2は、(t9)で生成したプロセスインスタンス143に記憶された変数を参照して、処理を実行する。サービス2が終了すると、インスタンス識別情報が含まれた共通メッセージがタスク3を宛先として送信される。
共通メッセージがタスク3へ送信され、共通メッセージからインスタンス情報が取得される。そして、共通メッセージから取得したインスタンス識別情報を引数として、サービス3が実行される。サービス3は、プロセスインスタンス143に記憶された変数を参照して、処理を実行する。サービス3が終了すると、インスタンス識別情報が含まれた共通メッセージがリモートコンテナRETURN送信タスク183を宛先として送信される。
共通メッセージがリモートコンテナRETURN送信タスク183へ送信され、共通メッセージを解釈して、共通メッセージに含まれたインスタンス識別情報を取得する。
リモートコンテナRETURN送信タスク183では、(t17)で取得したプロセスインスタンス143のインスタンス識別情報を引数として、リモートコンテナ終了サービスを起動して実行する。リモートコンテナ終了サービスは、コンテナ間変数同期部164を呼び出し、変数の有効範囲がタスク間と指定された変数グループgroup1の変数データを読み出す。そして、リモートコンテナ終了サービスは、読み出した変数グループgroup1の変数データを含めたESB間連携RETURNメッセージを生成する。
また、リモートコンテナ終了サービスは、(t9)で生成したプロセスインスタンス143と、変数グループgroup1,3を削除する。
リモートコンテナRETURN送信タスク183では、コンテナ1のリモートコンテナRETURN受信タスク184を宛先として、ESB間連携RETURNメッセージをメッセージルータ2へ送信する。
ESB間連携RETURNメッセージはコンテナ1のESB間連携キュー2に記憶される。ESB間連携RETURNメッセージの処理順序が回ってくると、ESB間連携RETURNメッセージは、メッセージルータ1でルーティングされ、リモートコンテナRETURN受信タスク184へ送信される。
リモートコンテナRETURN受信タスク184では、ESB間連携CALLメッセージに含まれる変数データを取得する。
リモートコンテナRETURN受信タスク184では、(t21)で取得した変数データを引数として、コンテナ間変数展開サービスを起動して実行する。コンテナ間変数展開サービスは、コンテナ間変数同期部164を呼び出し、引数として与えられた変数データをコンテナ1のプロセスインスタンス143に格納する。つまり、変数グループgroup1の変数の値を更新する。
リモートコンテナRETURN受信タスク184では、(t1)で付与したインスタンス識別情報を含めた共通メッセージを生成して、タスク4を宛先としてメッセージルータ1へ送信する。
共通メッセージがタスク4へ送信され、共通メッセージからインスタンス情報が取得される。そして、共通メッセージから取得したインスタンス識別情報を引数として、サービス4が実行される。サービス4は、(t1)で生成したプロセスインスタンス143に記憶された変数を参照して、処理を実行する。サービス3が終了すると、外部メッセージ2が外部システム200を宛先として送信される。なお、プロセスインスタンス143と、変数グループgroup1,2は削除される。
実施の形態2では、複数のESBコンテナ110を跨るプロセスを扱うESBサービス間自動連携装置100について説明した。特に、実施の形態2では、同一のリモートコンテナを1度だけ呼び出す場合のESBサービス間自動連携装置100について説明した。
実施の形態3では、同一のリモートコンテナを複数回呼び出す場合のESBサービス間自動連携装置100について説明する。
なお、実施の形態3に係るESBサービス間自動連携装置100について、実施の形態2に係るESBサービス間自動連携装置100と異なる部分のみ説明する。
図8では、コンテナ1とコンテナ2との2つのESBコンテナ110を跨るプロセスを扱うESBサービス間自動連携装置100を示す。特に、図8では、プロセス定義記憶部131が記憶したプロセス定義が示すように、コンテナ1がコンテナ2をリモートコンテナとして2度呼び出す場合について説明する。
また、実施の形態3に係るESBサービス間自動連携装置100のリモートコンテナRETURN送信タスク183は、さらに、リモートコンテナ変数保留サービスを備える。
図9は、外部システム200からメッセージを受信してから、タスク1〜4で構成されるプロセスがどのように実行されるかを示した図である。なお、以下の説明において、(u1)から(u45)の番号は、処理の流れを表し、図9における番号と対応している。
実施の形態2と同様に、タスク1、リモートコンテナCALL送信タスク181、リモートコンテナCALL受信タスク182、タスク2の順に処理が実行される。
なお、タスクパラメータとして、タスク2の終了時には変数グループgroup3の削除をしない設定になっているため、(u12)において、タスクパラメータ解釈部147は、変数API161を呼び出して、プロセスインスタンス143に記憶された変数グループgroup3に変数保留フラグを設定する。
共通メッセージがリモートコンテナRETURN送信タスク183へ送信され、読み出した変数グループgroup1の変数データを含めたESB間連携RETURNメッセージが生成される。そして、コンテナ1のリモートコンテナRETURN受信タスク184を宛先として、ESB間連携RETURNメッセージがメッセージルータ2へ送信される。
この際、リモートコンテナ終了サービスは、変数グループgroup3に変数保留フラグが設定されているため、変数グループgroup3の削除を行わない。
リモートコンテナRETURN受信タスク184、タスク3、リモートコンテナCALL送信タスク181、リモートコンテナCALL受信タスク182の順に処理が実行される。
共通メッセージがタスク4に送信され、サービス4が実行される。サービス4は、プロセスインスタンス143に記憶された変数を参照して、処理を実行する。ここで、プロセスインスタンス143には、サービス2で生成された値が変数グループgroup3の変数に格納されたまま残っている。したがって、サービス4では、変数グループgroup3の変数を参照することができる。
サービス4が終了すると、リモートコンテナRETURN送信タスク183を宛先として、共通メッセージが送信される。
共通メッセージがリモートコンテナRETURN送信タスク183へ送信され、読み出した変数グループgroup1の変数データを含めたESB間連携RETURNメッセージが生成される。そして、コンテナ1のリモートコンテナRETURN受信タスク184を宛先として、ESB間連携RETURNメッセージがメッセージルータ2へ送信される。
この際、リモートコンテナ終了サービスは、変数グループgroup3に変数保留フラグが設定されていないため、変数グループgroup3の削除を行う。
リモートコンテナRETURN受信タスク184、タスク5の順に処理が実行される。
(a)ESBの実行基盤であるESBコンテナ上で、一連のサービスを連携させるプロセスとして実行する際に、サービスとメッセージルータの間に配置して、サービスの実行を管理し、共通メッセージを使ってサービス同士を連携可能にする事により、サービス開発者がメッセージ(メッセージフォーマットや、メッセージ送受信タイミング)を意識せずにサービスを開発可能にするタスク基盤、
(b)ESBコンテナでサービスをタスクとして連携させる順番や条件判断等の連携のフローを定義したプロセス定義、および、変数基盤が使用する変数定義からなる、ESB定義を、サービス開発者が設定する事が可能なESB定義エディタ、
(c)ESBコンテナ起動時に、ESB定義を読み込み、タスク基盤のタスクパラメータ、変数基盤の変数定義パラメータに設定し、ESB定義を生成し、ESBコンテナに配置する、ESB定義管理機能、
(d)サービスの中から直接使用できる変数API、
(e)変数APIからの要求により、タスク基盤がプロセスの実行単位の情報を保持するプロセスインスタンス上で、変数定義パラメータを元に、変数の管理(生成・変更・削除・取得)が可能な変数マネージャ、
(f)変数APIと変数マネージャを備える事により、サービスでアプリケーションとして連携させたい情報を、メッセージによらず、プロセスインスタンスにより分離された変数によりデータ交換できる事を特徴とした変数基盤。
(a)ESB定義エディタに対して、複数のESBコンテナに跨るプロセス記述可能にするために、タスクごとにどのESBコンテナで実行するかを指定するESBコンテナ設定機能を備え、複数のコンテナに跨るコンテナ間のスコープを設定可能な変数定義編集機能を備えた、ESB定義エディタ、
(b)ESBコンテナ起動時に、ESB定義管理機能から呼び出されて、プロセス内のコンテナを跨るタスク遷移が必要な箇所に対して、コンテナ間でのデータ送受信を行うコンテナ間通信タスクを自動挿入する、コンテナ間タスク自動挿入機能、
(c)変数基盤において、コンテナ間通信に伴い、スコープがコンテナ間に指定されている変数を連携先のコンテナとの間で同期させる、コンテナ間変数同期機能、
(d)元のコンテナからリモートコンテナへの境界のタスク遷移において、コンテナ間通信を行う際の呼び出し元のコンテナに配置され、コンテナ間変数同期機能から、コンテナ間スコープの変数を取得するコンテナ間変数取得サービスを備え、連携用のESB間連携CALLメッセージにより、相手コンテナに送信のための通信を行う、リモートコンテナCALL送信タスク、
(e)元のコンテナからリモートコンテナへの境界のタスク遷移において、コンテナ間通信を行う際の呼び出し先のリモートコンテナに配置され、リモートコンテナ上のプロセスインスタンスを初期化して、リモートコンテナCALL送信タスクから送られたESB間連携CALLメッセージを受信して、コンテナ間スコープの変数データを取り出し、リモートコンテナ上のプロセスインスタンスを初期化して、コンテナ間変数同期機能に伝えるリモートコンテナ初期化サービスを備え、リモートコンテナ上に配置されたタスクで、コンテナ間スコープのタスク変数を使用できるようにするリモートコンテナCALL受信タスク、
(f)リモートコンテナから元のコンテナに戻る境界のタスク遷移において、コンテナ間通信を行う際のリモートコンテナに配置され、コンテナ間変数同期機能から、コンテナ間スコープの変数を取得して、連携用のESB間連携RETURNメッセージを生成し、リモートコンテナ上のプロセスインスタンスを削除するリモートコンテナ終了サービスを備え、連携用のESB間連携CALLメッセージにより、相手コンテナに送信のための通信を行う、リモートコンテナRETURN送信タスク、
(g)リモートコンテナから元のコンテナに戻る境界のタスク遷移において、コンテナ間通信を行う際の元のコンテナに配置され、リモートコンテナRETURN送信タスクから送られたESB間連携RETURNメッセージを受信して、コンテナ間スコープの変数データを取り出し、コンテナ間変数同期機能に伝えるコンテナ間変数展開サービスを備え、リモートコンテナ上で変更されたコンテナ間スコープの変数の修正を反映してその後のタスクで使用可能にする、リモートコンテナRETURN受信タスク。
(a)リモートコンテナRETRUN送信タスクにおいて、元のコンテナに戻る際にコンテナ内スコープの変数を削除せず保留する事により、再びリモートコンテナが呼び出された際に、以前のリモートコンテナ上で実行されたタスクによる変数変更の結果を取得できるようにする、リモートコンテナ変数保留サービス、
(b)リモートコンテナCALL受信タスクにおいて、リモートコンテナ変数保留サービスにより保留されているコンテナ内スコープの変数を取得する、リモートコンテナ保留変数取得サービス。
図10は、ESBサービス間自動連携装置100及びサービス実行装置300のハードウェア構成の一例を示す図である。
図10に示すように、ESBサービス間自動連携装置100及びサービス実行装置300は、プログラムを実行するCPU911(中央処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。CPU911は、バス912を介してROM913、RAM914、通信ボード915、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置920(固定ディスク装置)の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。磁気ディスク装置920は、所定の固定ディスクインタフェースを介して接続される。
ファイル群924には、上記の説明において「タスクパラメータ」、「変数定義パラメータ」、「共通メッセージ」等の情報やデータや信号値や変数値やパラメータが、「ファイル」や「データベース」の各項目として記憶される。「ファイル」や「データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのCPU911の動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のCPU911の動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
また、上記の説明において「ESBコンテナ110」、「ESB定義エディタ120」、「ESB定義記憶部130」、「タスクコンポーネント140」、「メッセージルータ150」、「変数基盤160」、「ESB定義管理部170」、「コンテナ間通信タスク180」、「サービス」等として説明したものは、「回路」、「装置」、「機器」、「手段」、「機能」として実現されてもよい。すなわち、「ESBコンテナ110」、「ESB定義エディタ120」、「ESB定義記憶部130」、「タスクコンポーネント140」、「メッセージルータ150」、「変数基盤160」、「ESB定義管理部170」、「コンテナ間通信タスク180」、「サービス」等として説明したものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、ROM913等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。
Claims (6)
- プロセスを構成する複数のサービスを連携して動作させるサービス連携装置であり、
前記プロセスが実行される場合に、前記複数のサービスの所定のサービスで生成される情報であって、前記所定のサービス以外の他のサービスで使用される情報を格納するための記憶領域を記憶装置に生成する記憶領域生成部と、
前記記憶領域生成部が生成した記憶領域の識別情報を含めたメッセージを、次に実行されるサービスへ送信して、前記次に実行されるサービスを起動させるメッセージ送信部と、
前記所定のサービスが実行された場合に前記所定のサービスから前記識別情報に基づき呼び出され、前記記憶領域にアクセスして、前記所定のサービスで生成した情報を前記記憶領域に格納するとともに、前記記憶領域に格納された情報を使用する前記他のサービスが実行された場合に前記他のサービスから前記識別情報に基づき呼び出され、前記記憶領域にアクセスして、前記所定のサービスで生成した情報を読み出す記憶装置操作部と
を備えることを特徴とするサービス連携装置。 - 前記サービス連携装置は、自己が管理するサービスと、他のサービス連携装置が管理するサービスとで構成されるプロセスについて、前記他のサービス連携装置とともにサービスを連携して動作させ、
前記サービス連携装置は、さらに、
自己が管理するサービスの後に前記他のサービス連携装置が管理するサービスが実行される場合、前記プロセスを構成するサービスに加え、前記記憶領域に格納された情報のうち、前記他のサービス連携装置が管理するサービスで使用される情報を取得して、前記他のサービス連携装置へ取得した情報をメッセージに含めて送信する装置間連携情報送信サービスを追加するサービス追加部を備え、
前記メッセージ送信部は、次に実行されるサービスが前記他のサービス連携装置が管理するサービスである場合、前記装置間連携情報送信サービスへ前記メッセージを送信する
ことを特徴とする請求項1に記載のサービス連携装置。 - 前記サービス追加部は、自己が管理するサービスの前に前記他のサービス連携装置が管理するサービスが実行される場合、前記プロセスを構成するサービスに加え、前記装置間連携情報送信サービスからメッセージが送信された場合に起動して、前記装置間連携情報送信サービスから送信された情報を格納するための記憶領域を自己の記憶装置に生成するとともに、生成した記憶領域に送信された情報を格納して、生成した記憶領域の識別情報を含めたメッセージを次に実行されるサービスへ送信して、前記次に実行されるサービスを起動させる装置間連携情報受信サービスを追加する
ことを特徴とする請求項2に記載のサービス連携装置。 - 前記装置間連携情報送信サービスは、前記他のサービス連携装置へ情報を送信する場合に、予め指定された情報を除き、前記記憶領域に格納された情報を削除する
ことを特徴とする請求項2又は3に記載のサービス連携装置。 - プロセスを構成する複数のサービスを連携して動作させるサービス連携方法であり、
前記プロセスが実行される場合に、前記複数のサービスの所定のサービスで生成される情報であって、前記所定のサービス以外の他のサービスで使用される情報を格納するための記憶領域を記憶装置に生成する記憶領域生成ステップと、
前記記憶領域生成ステップで生成した記憶領域の識別情報を含めたメッセージを、次に実行されるサービスへ送信して、前記次に実行されるサービスを起動させるメッセージ送信ステップと、
前記所定のサービスが実行された場合に前記所定のサービスから前記識別情報に基づき呼び出され、前記記憶領域にアクセスして、前記所定のサービスで生成した情報を前記記憶領域に格納するとともに、前記記憶領域に格納された情報を使用する前記他のサービスが実行された場合に前記他のサービスから前記識別情報に基づき呼び出され、前記記憶領域にアクセスして、前記所定のサービスで生成した情報を読み出す記憶装置操作ステップと
を備えることを特徴とするサービス連携方法。 - プロセスを構成する複数のサービスを連携して動作させるサービス連携プログラムであり、
前記プロセスが実行される場合に、前記複数のサービスの所定のサービスで生成される情報であって、前記所定のサービス以外の他のサービスで使用される情報を格納するための記憶領域を記憶装置に生成する記憶領域生成処理と、
前記記憶領域生成処理で生成した記憶領域の識別情報を含めたメッセージを、次に実行されるサービスへ送信して、前記次に実行されるサービスを起動させるメッセージ送信処理と、
前記所定のサービスが実行された場合に前記所定のサービスから前記識別情報に基づき呼び出され、前記記憶領域にアクセスして、前記所定のサービスで生成した情報を前記記憶領域に格納するとともに、前記記憶領域に格納された情報を使用する前記他のサービスが実行された場合に前記他のサービスから前記識別情報に基づき呼び出され、前記記憶領域にアクセスして、前記所定のサービスで生成した情報を読み出す記憶装置操作処理と
をコンピュータに実行させることを特徴とするサービス連携プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009180664A JP5371613B2 (ja) | 2009-08-03 | 2009-08-03 | サービス連携装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009180664A JP5371613B2 (ja) | 2009-08-03 | 2009-08-03 | サービス連携装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011034392A true JP2011034392A (ja) | 2011-02-17 |
JP5371613B2 JP5371613B2 (ja) | 2013-12-18 |
Family
ID=43763393
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009180664A Expired - Fee Related JP5371613B2 (ja) | 2009-08-03 | 2009-08-03 | サービス連携装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5371613B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013183151A1 (ja) * | 2012-06-07 | 2013-12-12 | 株式会社 東芝 | バス接続プログラム及び装置 |
EP2860653A4 (en) * | 2012-06-07 | 2016-01-27 | Toshiba Kk | SECURITY ADAPTER PROGRAM AND DEVICE |
JP2020071729A (ja) * | 2018-10-31 | 2020-05-07 | 富士通株式会社 | 処理フレームワーク連携装置、処理フレームワーク連携方法および処理フレームワーク連携プログラム |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07262024A (ja) * | 1994-03-18 | 1995-10-13 | Hitachi Ltd | データ引き継ぎ方法 |
JP2001005652A (ja) * | 1999-06-24 | 2001-01-12 | Hitachi Ltd | プログラム間バインド方法 |
JP2001265614A (ja) * | 2000-03-23 | 2001-09-28 | Nippon Telegr & Teleph Corp <Ntt> | 動的連携情報引継ぎ方法,連携処理システムおよびそのプログラム記録媒体 |
JP2008204430A (ja) * | 2007-01-25 | 2008-09-04 | Hitachi Ltd | ビジネスプロセス再構成方法、そのプログラム及び計算機 |
-
2009
- 2009-08-03 JP JP2009180664A patent/JP5371613B2/ja not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07262024A (ja) * | 1994-03-18 | 1995-10-13 | Hitachi Ltd | データ引き継ぎ方法 |
JP2001005652A (ja) * | 1999-06-24 | 2001-01-12 | Hitachi Ltd | プログラム間バインド方法 |
JP2001265614A (ja) * | 2000-03-23 | 2001-09-28 | Nippon Telegr & Teleph Corp <Ntt> | 動的連携情報引継ぎ方法,連携処理システムおよびそのプログラム記録媒体 |
JP2008204430A (ja) * | 2007-01-25 | 2008-09-04 | Hitachi Ltd | ビジネスプロセス再構成方法、そのプログラム及び計算機 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013183151A1 (ja) * | 2012-06-07 | 2013-12-12 | 株式会社 東芝 | バス接続プログラム及び装置 |
JP5537668B2 (ja) * | 2012-06-07 | 2014-07-02 | 株式会社東芝 | バス接続プログラム及び装置 |
EP2860653A4 (en) * | 2012-06-07 | 2016-01-27 | Toshiba Kk | SECURITY ADAPTER PROGRAM AND DEVICE |
JP2020071729A (ja) * | 2018-10-31 | 2020-05-07 | 富士通株式会社 | 処理フレームワーク連携装置、処理フレームワーク連携方法および処理フレームワーク連携プログラム |
JP7087921B2 (ja) | 2018-10-31 | 2022-06-21 | 富士通株式会社 | 処理フレームワーク連携装置、処理フレームワーク連携方法および処理フレームワーク連携プログラム |
Also Published As
Publication number | Publication date |
---|---|
JP5371613B2 (ja) | 2013-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112035228B (zh) | 一种资源调度方法及装置 | |
CN109656686A (zh) | OpenStack上部署容器云方法、存储介质、电子设备及系统 | |
JP4583289B2 (ja) | 実行フロー生成プログラム、実行フロー生成方法、および実行フロー生成装置 | |
WO2018161799A1 (zh) | 一种云应用部署方法和系统 | |
US8843938B2 (en) | Methods, systems, and computer program products for asynchronous resumption of a dataflow | |
CN111930525B (zh) | Gpu资源使用方法、电子设备及计算机可读介质 | |
US10346160B2 (en) | Melding of mediation flow service component architecture (SCA) components | |
CN108804238A (zh) | 一种基于远程过程调用的软总线通信方法 | |
WO2023185054A1 (zh) | 联盟链中部署链码的方法和系统 | |
JP5371613B2 (ja) | サービス連携装置 | |
WO2006113107A1 (en) | Configurable functionality chaining | |
Indrasiri | Microservices in pratice-key architectural concepts of an msa | |
US8738742B2 (en) | Tiered XML services in a content management system | |
US7584302B1 (en) | Business integration component for containers | |
CN105592130A (zh) | 一种服务部署方法、服务管理方法及装置 | |
WO2023185055A1 (zh) | 联盟链中部署链码的方法和系统 | |
CN103677842A (zh) | 软件工具配置式集成扩展调用方法与系统 | |
WO2016095373A1 (zh) | 业务处理方法及装置 | |
Laitkorpi et al. | A uml-based approach for abstracting application interfaces to rest-like services | |
JP5084355B2 (ja) | フロー処理実行装置、フロー処理実行方法及びプログラム | |
CN113961330A (zh) | 分布式定时任务执行方法、装置、设备和计算机可读介质 | |
Esfahani et al. | On the role of architectural styles in improving the adaptation support of middleware platforms | |
CN115580655B (zh) | 任务调度方法、装置、电子设备及存储介质 | |
JP2013020494A (ja) | ソフトウェア実行システムおよびソフトウェア実行方法およびプログラム | |
CN113312429B (zh) | 区块链中的智能合约管理系统、方法、介质和产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120201 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130612 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130618 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130722 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130820 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130917 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5371613 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |