JP2583027B2 - トランザクション・メッセージを処理するための装置、システムおよび方法 - Google Patents

トランザクション・メッセージを処理するための装置、システムおよび方法

Info

Publication number
JP2583027B2
JP2583027B2 JP6323405A JP32340594A JP2583027B2 JP 2583027 B2 JP2583027 B2 JP 2583027B2 JP 6323405 A JP6323405 A JP 6323405A JP 32340594 A JP32340594 A JP 32340594A JP 2583027 B2 JP2583027 B2 JP 2583027B2
Authority
JP
Japan
Prior art keywords
transaction
message
output
client
server
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.)
Expired - Fee Related
Application number
JP6323405A
Other languages
English (en)
Other versions
JPH07262119A (ja
Inventor
スティーヴ・ツァンチュン・クオ
トマス・クラーク・モリソン
ホアン・ミン・グエン
ハリー・オットー・ラドケ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH07262119A publication Critical patent/JPH07262119A/ja
Application granted granted Critical
Publication of JP2583027B2 publication Critical patent/JP2583027B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/466Transaction processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、トランザクション処理
に関し、より詳細には、クライアント・プロセスが、ク
ライアント・プロセスとサーバ・プロセスとの間の両方
向トランザクション・メッセージ・トラフィックを制御
する機構をサーバ・プロセスにおいて作成する、クライ
アント/サーバ型のトランザクション処理システムに関
する。
【0002】
【従来の技術】トランザクションは、C.J.デイト
(C. J. Date)著"INTRODUCTION TO DATABASE SYSTEM
S"、Vol.1(Addison-Wesley、1985年9月)で、論
理作業単位として定義されている。上記論文は特に、デ
ータベース・コンテキストにおけるトランザクション
が、データベースをある整合状態から別の整合状態に変
換する一連の動作からなることを教示している。トラン
ザクション処理システムは、トランザクションがデータ
ベースの新しい整合状態への変換を完了し、あるいはデ
ータベースをトランザクションが開始した整合状態に戻
すことを保証する。
【0003】分散システムでトランザクション処理を実
施するために特に役立つアーキテクチャは、H.M.デ
イテル(H. M. Deitel)著"OPERATING SYSTEMS"(Addis
on-Wesley,1990)に記載されたクライアント/サーバ・
モデルである。このモデルにおいて、クライアントはク
ライアント・プロセスの形のサービス消費者を表し、サ
ーバはサービスを提供するプロセスである。複数のユー
ザにトランザクション・ベースのアクセスを提供する代
表的なデータベース・システムにおいては、ユーザはク
ライアント・プロセスを通じてデータベース要求を入力
する。クライアント・プロセスは、データベース管理シ
ステムの形のサーバ・プロセスに、所定のトランザクシ
ョン・プロトコルに従ってユーザの要求を処理すること
を約束する。
【0004】クライアント・プロセスおよびサーバ・プ
ロセスから見ると、トランザクションは「オブジェク
ト」と見なすことができる。トランザクションは、オブ
ジェクトとして、ユーザ要求を満たすために必要な手順
とデータを含む。トランザクションは、オブジェクトと
して、クライアントとサーバによって直接操作できる。
トランザクション・オブジェクトを処理する好ましい方
式は、特定の操作タイプを指定するメッセージによるも
のである。これに関して、データベースからレコードを
読み取ることを求めるユーザ要求は、トランザクション
がデータベースを読み取ることを指定し、読取りを行う
場所や読み取るレコードなどを確定するパラメータを提
供することによってトランザクションを操作することが
できる。トランザクションは、操作の結果を含む応答メ
ッセージを戻すことによって操作結果を報告する。
【0005】一般にオブジェクトは、「名前」と呼ばれ
るデータ構造によって記述される。オブジェクト指向プ
ログラミングの現在の技法は、「名前付き処理オブジェ
クト」を、名前を有し1つまたは複数の手順を含むオブ
ジェクトとして認識する。
【0006】トランザクション・メッセージは、ソース
と宛先を暗示する。IBM社から入手可能なIMSプロ
ダクトなどの現行のデータベース管理システムは、論理
端末(LTERM)を使用してこれらの終端を区別す
る。LTERMは、IMSプロダクトからのトランザク
ション出力が入る待ち行列を提供する。最終的には、I
MSプロダクトが、待ち行列と待ち行列に入れられた出
力を受け取る物理ノードとの間の接続を行う。IMSプ
ロダクトは、クライアント/サーバ・モデルにおいてサ
ーバ・プロセスと見なされる。そのようなデータベース
・システムは、クライアント・プロセスに、トランザク
ション・メッセージのソースと宛先を指定することによ
ってトランザクション・メッセージの流れを制御する機
構を提供しない。
【0007】別の点から見ると、IMSプロダクトのL
TERM能力は、サーバのみによって操作できる単一方
向(サーバ−クライアント)パイプラインを提供する。
これに関して、LTERMは、UNIX[R]システムで
使用されるパイプ構造を提案する。パイプは、名前によ
ってオブジェクト化することができる。それらのパイプ
は、プロセス間で単一方向のFIFOデータ転送を提供
し、プロセス間同期能力を含んでいる。クライアント・
プロセスとサーバ・プロセスの間で逆の方向に向いた2
本のパイプは、両方向のメッセージ流れを提供できる
が、2つの処理オブジェクトを必要とし、そのうちの一
方だけをクライアント・プロセスが操作できる。
【0008】
【発明が解決しようとする課題】明らかに、サーバがト
ランザクション・メッセージの処理に費やさなくてはな
らない時間が多くなるほど、トランザクションを処理す
る際の効率は低下する。したがって、クライアント/サ
ーバ型のトランザクション・ベース・システムにおい
て、任意のクライアント・プロセスが、トランザクショ
ンをオブジェクト化し、両方向メッセージ・パイプライ
ンにおけるメッセージによってトランザクション・オブ
ジェクトを操作できるようにする機構を提供する必要が
ある。
【0009】
【課題を解決するための手段】本発明は、クライアント
・プロセスによってオブジェクトとして操作できる機構
を提供し、もってクライアント・プロセスとサーバ・プ
ロセスの間で両方向のトランザクション・メッセージ・
トラフィックを制御する。本発明により、クライアント
・プロセスが、その機構をサーバ・プロセスにおけるオ
ブジェクトとして指名できるようになる。名前付きオブ
ジェクト(「Tパイプ」とも呼ばれる)は、サーバ・プ
ロセスでトランザクション要求メッセージとトランザク
ション出力メッセージとを受け取り、そのトランザクシ
ョン出力メッセージを最終宛先に関連づける機能を含ん
でいる。したがって、トランザクション出力とその宛先
の関連付けは、サーバ・プロセスによって行われず、ク
ライアント・プロセスに任せられる。
【0010】本発明は、サーバ・プロセスとクライアン
ト・プロセスの間でトランザクション・メッセージの両
方向転送のための、機構および手順として実施される。
【0011】
【実施例】本発明は、クライアント/サーバ型のトラン
ザクション処理システムに関する。そのようなシステム
の典型的な実施例を図1に示す。図1において、中央演
算処理装置12は、たとえばIBM社から入手可能な3
090/MVSプロダクトを含んでいる。サーバ・プロ
セス14は、中央演算処理装置12内で実行される。好
ましい実施例においては、サーバ・プロセスは、IBM
社から入手可能なIMSプロダクトなどのデータベース
管理システムを含んでいる。サーバ・プロセスは、通信
機構16によって、クライアント・プロセス19を実行
する周辺処理装置18に結合されている。他の周辺装置
20、21が、ノード24によって通信機構16に結合
されていることもある。サーバ・プロセス14およびク
ライアント・プロセス19はそれぞれ、プロセス間の情
報の転送を支援するために適切な通信プロトコルを実施
する通信インターフェ−ス25と26を含んでいる。ま
た、このようなアーキテクチャが、任意のクライント・
プロセスとサーバ・プロセス14の間の通信を特徴付け
る(本発明において、クラインアント・プロセスは、事
実上どんなトランザクション処理システム位置でも実行
することができる。したがって、クライアント・プロセ
スは、周辺装置18、20、21、たとえば24のよう
なノード、あるいは中央演算処理装置12内に位置する
ことができる)。
【0012】サーバ・プロセス14は、データベース2
7、28など1つまたは複数のデータベースにアクセス
する能力をクライアント・プロセスに与えるトランザク
ション処理を支援する。サーバ・プロセスは、少なくと
もトランザクション・マネージャ31とデータベース・
マネージャ32とを有するデータベース管理システム
(DBMS)29を含んでいる。1つまたは複数のアプ
リケーション・プロセス33と34が、データベース・
アクセスを求めるユーザ要求を支援するために実行され
る。すなわち、ユーザのアクセス要求が周辺処理装置1
8に入力された場合、クライアント・プロセス19が実
行され、ユーザから要求されたアクセスを実施するため
にトランザクション要求を準備する。トランザクション
要求は、メッセージを介して中央演算処理装置12に送
られ、サーバ・プロセス14に転送される。トランザク
ション要求は、入力待ち行列35を介してトランザクシ
ョン・マネージャ31に渡される。トランザクション・
マネージャは、トランザクション要求を評価し、アプリ
ケーション33、34の一方によってその要求を実行す
るように、トランザクション処理をディスパッチする。
トランザクション要求の出力は、待ち行列36に入れら
れ、通信インターフェ−ス25と通信機構16を介し
て、それぞれの要求クライアント・プロセスに渡され
る。
【0013】当業者には理解できるように、図1のクラ
イアント/サーバ・モデルは、たとえば、クライアント
・プロセスとサーバ・プロセスを相互接続するネットワ
ークを含む構造化通信機構を組み込んでいる点でアプリ
ケーション固有のものであるが、本発明は、そのような
構造に限定されるものではなく、特定の通信制御機構を
意図するものでもない。プロセスがどこに位置しようと
も、本発明は本質的に、クライアント・プロセスとサー
バ・プロセスとの間のメッセージ・トラフィックの制御
に関する。
【0014】図2に、本発明を、本質的に複数のクライ
アント・プロセスのうちの1つのクライアント・プロセ
ス40とサーバ・プロセス42という文脈中で示す。ク
ライアント・プロセス40はユーザ要求を受け取り、そ
のユーザ要求をトランザクション要求メッセージに構造
化してサーバ・プロセス42に提供する。クライアント
・プロセス40およびサーバ・プロセス42は、実施要
件に従って選択されるトランザクション・プロトコルに
従って、トランザクション処理を実施する。
【0015】本発明は、1つまたは複数のトランザクシ
ョン・メッセージ制御機構(Tパイプ)を通じてトラン
ザクション・メッセージ・トラフィックを制御する能力
をクライアント・プロセス40に与える。Tパイプは、
サーバ・プロセス42にある名前付き処理オブジェクト
である。各Tパイプのデータ構造は、関連する待ち行列
(PIQ)を有する入力プロセス(PI)、関連する待
ち行列(POQ)を有する出力プロセス(PO)、およ
びトランザクションを処理するために作成されディスパ
ッチされる動的に作成された(実行後削除される)一連
のトランザクション・プロセス(Tプロセス)を有す
る。すなわち、各Tパイプは、クライアント・プロセス
40とサーバ・プロセス42の間のインターフェース中
で参照できる名前を有するデータ構造である。本発明の
Tパイプは、本質的にトランザクション・マネージャに
対応するサーバ・プロセス42の構成要素中に提供され
ることが企図されている。
【0016】図2において、サーバ・Tパイプ・プロセ
ス43は、ハッシュ構造44を使って、Tパイプの名前
(TパイプN)を含むデータ・フィールド46と入力プ
ロセス47と出力プロセス48とを有するTパイプ45
にアクセスする。入力プロセス47は、トランザクショ
ン・プロセス50などのトランザクション・プロセスを
ディスパッチする機能を含んでいる。入力プロセス47
によってディスパッチされる各トランザクション・プロ
セス50はそれぞれ、メッセージを分析し操作する能力
を有する。ディスパッチされたトランザクション・プロ
セスは、トランザクション要求を実行のためサーバ・プ
ロセスに転送する。これに関して、トランザクション・
プロセス50は、トランザクションを実行する処理を提
供し、たとえば入力待ち行列55と出力待ち行列56を
介しトランザクション・プロセス50とトランザクショ
ン・データを交換する、アプリケーション52などのア
プリケーションを決定するための論理を含んでいる。ま
た、トランザクション・プロセスは、トランザクション
出力とメッセージによる応答をクライアント・プロセス
に通信する能力を有する。
【0017】動作に際しては、クライアント・プロセス
40は、ユーザ要求に応答して、複数のフィールドを有
するメッセージ58を組み立てる。第1のメッセージ・
フィールド59において、メッセージがトランザクショ
ン・メッセージとして示される。フィールド60におい
ては、メッセージ58を受け取って処理すべきTパイプ
の名前が指定される。名前付きTパイプ用の動作モード
を示すモード・フィールド61がそのメッセージ内に提
供される。経路指定情報を含むフィールド63がメッセ
ージ58に含まれ、したがって、トランザクション出力
を発信クライアント・プロセスに経路指定することがで
きる。
【0018】メッセージ・フィールド60がTパイプN
を指定すると仮定する。サーバのTパイプ・プロセス・
マネージャ43が、メッセージ58をTタイプNの入力
プロセス47に送る。入力プロセス47は、フィールド
59におけるトランザクションのタイプを識別し、フィ
ールド61に応答してTパイプの動作モードを決定し、
モード・フラグ64をセットし、要求されたトランザク
ションを実行するためにトランザクション・プロセス5
0をディスパッチする。トランザクション・プロセス5
0をディスパッチする際、入力プロセス47は、トラン
ザクションのタイプとそのトランザクションの実行を制
御するために必要なすべてのデータをトランザクション
・プロセスに渡し、クライアント・プロセス40を識別
する。トランザクション・プロセス50は、名前付き処
理オブジェクト45の一部分なので、トランザクション
・プロセス50は、TパイプN内のプロセスにそのアク
ティビティを参照付ける。トランザクションが完了する
と、トランザクション・プロセスはモード・フラグ64
を検査する。モード・フラグ64のある設定に従って、
トランザクション・プロセスはメッセージを構築し、そ
のメッセージが、入力プロセス47によってディスパッ
チされる他のトランザクション・プロセスに対して非同
期にクライアント・プロセスに戻される。別の設定モー
ドに従って、トランザクション・プロセス50は、出力
プロセス48の制御下でクライアント・プロセスにトラ
ンザクション応答を戻す。出力プロセス48は、入力プ
ロセス47によってディスパッチされたすべてのトラン
ザクション・プロセスの間でトランザクション出力を同
期させる。
【0019】本発明によれば、クライアント・プロセス
40によって命名されたTパイプはすべて、その排他的
使用のために予約される。さらに、クライアント・プロ
セスは、トランザクション・メッセージ処理の特定の様
式を支援する様々なトランザクション・メッセージ制御
モードを提供するために、複数のTパイプに名前を付け
ることができる。たとえば、クライアント・プロセス
が、回復可能なメッセージ処理のためにTパイプYを予
約することができるとすると、このTパイプYは、同期
動作モードにセットされ、それによりTパイプYの出力
プロセスの制御下でトランザクション出力が提供される
ようになる。同じクライアント・プロセスが、メッセー
ジ回復を必要としないトランザクションで使用するため
に、TパイプXを非同期ではないモードにセットするこ
ともできる。
【0020】図3に、本発明に従ってクライアント・プ
ロセスとサーバ・プロセスの間で転送されるメッセージ
のフォーマットを示す。各メッセージは、その連続する
セクションに、メッセージ制御情報、トランザクション
状態データ、およびアプリケーション・プロセス・デー
タ用のフィールドを含む複数フィールド構造を含んでい
る。
【0021】メッセージ制御情報セクションは、メッセ
ージ・タイプ・フィールドとTパイプ名前フィールドを
含んでいる。メッセージ・タイプ・フィールドは、トラ
ンザクション入力であることをサーバ・プロセスに示す
ために使用される。Tパイプ名前フィールドは、サーバ
・プロセスにおいてメッセージを制御すべきTパイプを
指名する。状態データ・セクション内の同期フィールド
は、名前付きTパイプにおいてモード・フラグをセット
するために使用される。そのモードはコミット・モード
と呼ぶことが好ましく、コミット・モード0は、クライ
アント・プロセスに送られる前にトランザクション応答
をサーバ・プロセスでコミットすべきことを示す。コミ
ット・モード1では、サーバ・プロセスでコミットされ
る前に、トランザクション応答をクライアント・プロセ
スに送ることができる。また、状態データ・セクション
は、メッセージの発信元と宛先を示すトークン・フィー
ルドを提供する。アプリケーション・データ・セクショ
ンは実行すべきトランザクションを指名し、トランザク
ションの実行のために使用すべきアプリケーション・プ
ロセスを暗示する。また、このセクションは、トランザ
クションを開始するために必要なすべてのデータを提供
する。
【0022】次に、図2と図4および表Iないし表III
を参照して、コミット・モード1における本発明の動作
を説明する。表Iないし表IIIは、それぞれサーバのT
パイプ・プロセス43、Tパイプ入力プロセス(P
I)、トランザクション・プロセス(Tプロセス)用の
論理の疑似コードによる記述である。コミット・モード
1用の動作モードを、非同期Tパイプと呼ぶ。非同期T
パイプ動作モードでは、すべてのTプロセスが、クライ
アント・プロセスへのトランザクション応答メッセージ
の送信を制御する。したがって、出力プロセス(PO)
は使用されない。非同期Tパイプを通るトランザクショ
ンおよび出力の流れを、図4に示す。非同期動作の順序
および説明は、以下のとおりである。
【0023】1.クライアント40が、サーバ・プロセ
ス42に入力としてトランザクションX用のトランザク
ション・メッセージを送る。
【0024】2.トランザクション・メッセージが、表
Iにその論理を記述したサーバのTパイプ・プロセス4
3によって検査される。Tパイプ・プロセス43は、メ
ッセージ中にTパイプの名前があることを確認し、ハッ
シュ表44を調べて、Tパイプがクライアント・プロセ
ス40のために命名されたものであるかどうかを判定す
る。表中に名前がない場合は、Tパイプが作成され、そ
の名前がクライアント・プロセス40のためにハッシュ
表44に加えられる。次に、トランザクション・メッセ
ージが入力プロセス("PI")に待ち行列として入れら
れ、実行のためにPIがスケジューリングされる。Tパ
イプが作成された後は、そのTパイプは、サーバ・プロ
セスの存続期間中、ハッシュ表44によって、その作成
の対象であったクライアントにリンクされたままにな
る。
【0025】3.PIは、その待ち行列からトランザク
ション・メッセージを取り出し、トランザクションX用
のTプロセス(「TプロセスX」)を動的に作成する。
【0026】4.トランザクションX用のTプロセスX
が、トランザクションを処理するためPIによってディ
スパッチされる。
【0027】5.TプロセスXが、トランザクション
を、待ち行列55に入っている名前付きアプリケーショ
ン52に提示する。
【0028】6.次に、アプリケーション52が、その
出力待ち行列56を介して、トランザクション出力メッ
セージをTプロセスXに提供する。
【0029】7.次に、TプロセスXが、クライアント
・プロセス40に戻すために必要なとき、トランザクシ
ョン出力メッセージを取り出してそれを処理する。
【0030】8.次に、TプロセスXは、トランザクシ
ョン出力メッセージをクライアント・プロセス40に送
る。トランザクションX用に2つ以上の出力メッセージ
が必要な場合は、クライアント・プロセスに送るため
に、出力メッセージがTプロセスXで待ち行列に入れら
れる。クライアントがメッセージを肯定応答すると仮定
すると、トランザクションX用の全トランザクション出
力メッセージがクライアントによって肯定応答されたと
き、TプロセスXが削除される。
【0031】図5に、コミット・モード0で動作する同
期Tパイプでのメッセージの流れを示す。これに関し
て、本発明では、クライアント・プロセスまたはサーバ
・プロセスのどちらかが異常終了する場合に処理を再同
期化するために同期Tパイプが必要となることを企図し
ている。
【0032】たとえば、クライアント・プロセスが、ト
ランザクション要求メッセージを肯定応答要求と共にサ
ーバ・プロセスに送るというシナリオを考えてみる。ト
ランザクション・プロトコルが、クライアント・プロセ
スに肯定応答を送る前に、要求されたトランザクション
のログをとりそれを待ち行列に入れることをサーバに要
求すると仮定する。肯定応答が送られる前にサーバ・プ
ロセスがクラッシュした場合、クライアント・プロセス
とサーバ・プロセスは共に、たとえば順序番号の交換に
よって再同期化する必要がある。再同期の場合、クライ
アント・プロセスはトランザクションがサーバ・プロセ
スによって受け取られなかったと仮定し、その場合、ク
ライアント・プロセスがトランザクションを再度送ろう
とする。トランザクションがサーバ・プロセスで再度待
ち行列に入れられる場合、その結果として、ある口座に
同じ借方を2度記入するような容認できない状態になる
ことがある。これを回避するため、サーバ・プロセス
は、再同期中にそのログに関して、トランザクションが
首尾よく受け取られたことをクライアント・プロセスに
通知する。この場合、クライアントは、その情報を肯定
応答として処理することになる。
【0033】前述のシナリオでは、再同期化を支援する
ために、クライアント・プロセスおよびサーバ・プロセ
スが、最後に送信されたメッセージのコピーと最後に受
信されたメッセージの記録とを維持する必要があること
になる。そのためには、前に送られたメッセージに対す
る肯定応答を受け取るまでメッセージが送られることが
ないように、サーバ・プロセスにおいてすべての送信動
作を適切に逐次化することが必要になる。それに関連し
て、送信されたメッセージおよび受信されたメッセージ
はすべて待ち行列に入れなければならない。これは、本
発明においては、同期動作モードで、すべての出力メッ
セージに出力プロセスを通過させることにより達成され
る。
【0034】同期Tパイプでは、出力プロセス(PO)
によって制御される出力待ち行列(POQ)が使用され
る。同期モードのTパイプにおいてトランザクション出
力メッセージを有するどのTプロセスも、出力プロセス
からの許可を待つ。出力プロセスがあるTプロセスに許
可を与えたとき、そのTプロセスだけが、トランザクシ
ョン出力メッセージをクライアント・プロセスに送るこ
とを許される。
【0035】同期Tパイプを通るトランザクションと出
力の流れを図5に示し、以下に説明する。
【0036】1.サーバのTパイプ・プロセスが、トラ
ンザクションXを含むトランザクション要求メッセージ
を受け取る。
【0037】2.Tパイプ・プロセスは、TパイプAが
そのトランザクションのために命名されており、そのオ
ブジェクトを位置決めしようと試みていることに気付
く。見つからなかった場合は、そのオブジェクトが動的
に作成され、要求クライアント・プロセス用のハッシュ
表44内に入れられ、サーバ・プロセスの存続期間中そ
こに留まる。
【0038】3.入力プロセスPIがトランザクション
要求メッセージを取り出し、トランザクションX用のT
プロセスを動的に作成する。このTプロセスは、Tプロ
セスXと呼ばれる。
【0039】4.TプロセスXが作成され、トランザク
ションXを処理するためにPIによってディスパッチさ
れる。
【0040】5.TプロセスXが、そのトランザクショ
ンをアプリケーション・プロセスに提示し、そのトラン
ザクションがそこで待ち行列に入れられることもある。
【0041】6.次に、アプリケーション・プロセス
が、TプロセスXへのトランザクション応答メッセージ
における出力を提供する。
【0042】7.TプロセスXは、関係通信プロトコル
によって要求されるとき、トランザクション応答メッセ
ージを取り出しそれをフォーマットする。
【0043】8.TプロセスXが、要求トークンをPO
Qの待ち行列に入れる。
【0044】9.TパイプA用のPOが、TプロセスX
に許可を戻す。このとき、TプロセスXは、メッセージ
をクライアント・プロセスに送ることができるTパイプ
A用の唯一のTプロセスである。
【0045】10.TプロセスXが、トランザクション
出力メッセージをクライアント・プロセスに送り、メッ
セージ伝送が完了したときTパイプA用のPOに通知す
る。このとき、TパイプA用のPOは、別のTプロセス
に許可を与えてトランザクション出力メッセージの送信
を開始させることができる。トランザクションX用のト
ランザクション出力メッセージがすべて送信されると、
TプロセスXは削除される。
【0046】以下の表は、図4と図5に示した構成要素
に関する論理の疑似コードによる記述である。表Iは、
トランザクション要求メッセージを受け取り、Tパイプ
の識別を確認し、そしてクライアント・プロセスのトラ
ンザクション要求を含むメッセージを適切なTパイプに
送るサーバのTプロセスを示したものである。
【0047】表IIは、Tパイプ入力プロセス(PI)用
の論理を示したものである。この論理では、同期動作モ
ードでクライアント・プロセスからの肯定応答(Ac
k)を識別する能力が暗示されている。表IIを見ると明
らかなように、同期動作モードの出力プロセス(PO)
は、Tプロセスが出力メッセージを送り肯定応答を待っ
ているときに信号を送る。この論理はまた、クライアン
ト・プロセスのためのトランザクション要求にサービス
する必要があるとき、PIがTプロセスを作成し変更す
ることができることを示している。
【0048】表IIIは、非同期動作用のTプロセスの論
理を示したものである。この論理は、出力メッセージの
肯定応答によって、Tプロセスを、出力メッセージを受
信するためにアプリケーション・プロセスと同期させ、
クライアント・プロセスと同期させる。
【0049】表IVは、Tプロセスによって出力され要求
されなければならない出力サービスとして機能するTパ
イプ出力プロセス(PO)の論理を示したものである。
【0050】表Vは、同期TパイプにおけるTプロセス
用の論理を示したものである。同期Tパイプにおいて、
Tプロセスは、PIからトランザクションを受け取った
ときそのトランザクションのログをとり、あるトランザ
クションのために生成されたすべての出力メッセージに
関するPOの排他的サービスを保持し、すべての出力メ
ッセージのログをとる。
【0051】図6に、本発明の最良の動作モードを組み
込んだ工業用応用例を示す。この応用例においては、3
090/MVSシステムの形のメインフレーム・コンピ
ュータ80が、通常通りアプリケーション83と84に
結合されたIMSデータベース・アクセス・システム8
2を実行する。IMSシステム82はサーバ・プロセス
として動作し、本発明のTパイプ論理を組み込んでい
る。IMSシステム82は、MVS XCFプロセス間
通信機構89を介してIMSシステム82と通信するア
ダプタ86と87の形のクライアント・プロセスにサー
ビスを提供するサーバ・プロセスである。MVS XC
Fは、IBM社から入手可能であり、たとえば、同社か
ら刊行された"Application Development Guide(AD
G):Authorized Assembler Language Program"(資料
番号GC28−1645)に記載されている。アダプタ
86と87はそれぞれ1つまたは複数のプロセッサ90
〜93に接続され、ユーザに、IMSシステム82を介
して1つまたは複数のデータベースにアクセスする能力
を与える。そのようなプロセスは、端末装置などの遠隔
処理位置にあってもよく、またサーバ・プロセスと同じ
プロセッサ内にあってもよい。
【0052】表I (図2のサーバTパイプ・プロセス43用の疑似コー
ド) クライアントのトランザクションを受け取る(XCFま
たは他の任意の移送機構を介して)。 トランザクション中でTパイプの名前が指定されている
ことを確認する。 Tパイプのハッシュ表中でTパイプの名前を探し出す。 IfTパイプが存在しない場合 thenTパイプを作成しそれをTパイプのハッシュ表に加
える。 Endif トランザクションをTパイプのPIプロセスの待ち行列
に入れ、実行のためPIをスケジューリングする。 別のトランザクションを待つ。
【0053】表II (図2の入力プロセス47用の疑似コード) データを入力待ち行列(PIQ)上で受け取る。 Ifデータがトランザクションである場合、 If同期Tパイプの場合、then IfPOが肯定応答を待っている場合、then トランザクションを拒否する。 WAIT論理に進む。 Endif Endif トランザクション用のTプロセスを作成し、それをTパ
イプ用の既存のTプロセスのリストに連鎖する。 実行のためTプロセスをスケジューリングする。 Elseifデータがクライアントからの肯定応答(ACK)
である場合、then If同期Tパイプの場合、then IfPOが肯定応答を待っていない場合、then 肯定応答を拒否する。 WAIT論理に進む。 Else 予期した肯定応答が到着したことをPOに通知する。 これにより、POが覚醒し稼働するようになる。 WAIT論理に進む。 Endif Endif 肯定応答を待っているTプロセスを探し出し、そのTプ
ロセスが予期した肯定応答が到着したことをそのTプロ
セスに通知する。 これにより、Tプロセスが覚醒し稼働するようになる。 Elseifデータがコマンドである場合、then そのコマンドを処理する。 Else そのデータを拒否する。 Endif PIQ上で次のデータをWAITする。
【0054】表III (非同期モードにおけるTプロセス用の疑似コード) 初期処理:PIからトランザクション・メッセージを受
け取った。 トランザクションをサーバ・アプリケーションの待ち行
列に入れる。 LOOP:通知を待つ。 通知により覚醒する。PIが肯定応答を与えているか、
またはサーバ・アプリケーションが出力メッセージを与
えている。 If通知が肯定応答に関するものである場合、 If別の出力メッセージが待ち行列に入っている場合、th
en 出力メッセージをクライアントに送る。 Elseif出力メッセージがもう期待できない場合、then プロセスを削除する。 Endif Elseif通知がアプリケーション出力メッセージに関する
ものである場合、thenその出力メッセージをクライアン
トに送る。 Endif LOOPに進み肯定応答を待つ。
【0055】表IV (同期モードにおける出力プロセス(PO)用の疑似コ
ード) POQ待ち行列上でTプロセスXの要求を受け取る。 TプロセスXに制御を譲るものとPOにマークする。 TプロセスXが現在出力処理の制御下にあることをTプ
ロセスXに通知する。これにより、Xが稼働するように
なる。 Main Wait IfTプロセスがPOの制御を放棄する場合、then POQ上の次の要求を獲得し、最初に戻る。 ElseifPIがすでにPOに肯定応答を与えた場合、then 肯定応答をそれ以上待たないものとTプロセスにマーク
する。 Tプロセスの肯定応答がすでに到着していることをTプ
ロセスに通知する。 Main Waitに進む。 Endif
【0056】表V (同期モードにおけるTプロセス用の疑似コード) 初期処理:PIからトランザクションを受け取った。 トランザクションのログをとる。ログ・レコード中にク
ライアントのトランザクション順序番号を含める。 トランザクションをサーバ・アプリケーションの待ち行
列に入れる。 LOOP:通知を待つ。 通知により覚醒する。PIが肯定応答を与えているか、
またはサーバ・アプリケーションが出力メッセージを与
えている(他の出力メッセージ処理が行われていないと
き、すなわち、出力メッセージ処理が進行中である場合
は、アプリケーションはメッセージをTプロセスの待ち
行列に入れるだけである)。 If通知が肯定応答に関するものである場合、then If別の出力メッセージが待ち行列に入っている場合、th
en 出力メッセージをクライアントに送る。 Elseif出力メッセージをそれ以上期待できない場合、th
en 出力処理の制御を放棄するようPOに通知する。 プロセスを削除する。 Endif Elseif通知がアプリケーション出力メッセージに関する
ものである場合、thenPO制御要求をPOQの待ち行列
に入れ、POがこの制御を与えるのを待つ。 Tパイプの出力順序番号で出力メッセージのログをと
る。 出力メッセージをクライアントに送る。 クライアントが現在肯定応答を待っていることをPO中
で示す。 Endif LOOPに進んで肯定応答を待つ。
【0057】
【0058】
【0059】
【発明の効果】本発明により、同じTパイプを多数のト
ランザクション出力が同時に流れることができるという
点で、クライアント/サーバ・モデルのトランザクショ
ン処理システムに柔軟性が与えられる。
【0060】本発明により、クライアント・プロセスが
複数のTパイプを作成できるようになり、それにより、
たとえば、フロー制御および同期の差異のために自然に
生じるトランザクション間の区別を行うことができるよ
うになる。
【0061】本発明により、サーバ・プロセスが、トラ
ンザクション出力を最終ユーザに結合する責任を解除さ
れ、その処理負担の軽減がはかられる。
【0062】本発明により、提示されたトランザクショ
ンの出力に対する制御権がクライアント・プロセスに提
供される。
【図面の簡単な説明】
【図1】トランザクション・ベースのクライアント/サ
ーバ・データベース・システムのブロック図である。
【図2】本発明を代表的な動作環境において示すブロッ
ク図である。
【図3】トランザクション・メッセージの構造を示す図
である。
【図4】第1のモードによる本発明の動作を示すブロッ
ク図と流れ図の複合図である。
【図5】第2のモードによる本発明の動作を示すブロッ
ク図と流れ図の複合図である。
【図6】本発明の最良の動作モードを示す図である。
【符号の説明】
40 クライアント・プロセス 42 サーバ・プロセス 43 サーバTパイプ・プロセス 45 Tパイプ 47 入力プロセス 48 出力プロセス 50 トランザクション・プロセス 52 アプリケーション・プロセス 55 入力待ち行列 56 出力待ち行列 58 メッセージ 59 メッセージ・フィールド 60 フィールド 61 モード・フィールド 63 フィールド 64 モード・フラグ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 トマス・クラーク・モリソン アメリカ合衆国95133 カリフォルニア 州サンノゼ ソールト・レーク・ドライ ブ 899 (72)発明者 ホアン・ミン・グエン アメリカ合衆国95111 カリフォルニア 州サンノゼ ウォー・アドミラル・アベ ニュー 522 (72)発明者 ハリー・オットー・ラドケ アメリカ合衆国95139 カリフォルニア 州サンノゼ チェルテンハム・ウェイ 16

Claims (20)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数のクライアント・プロセスと、当該
    複数のクライアント・プロセスに結合され、クライアン
    トが開始したトランザクションを実行するためのサーバ
    ・プロセスとを含むトランザクション処理システムにお
    いて、前記 サーバ・プロセス内でトランザクション・メッセー
    ジを処理するための装置であって、 各クライアント・プロセスからの、当該各クライアント
    ・プロセスの識別一の名前付き処理オブジェクトを
    識別するオブジェクト名とを含んでいる一のトランザク
    ション要求メッセージに応答して、当該名前付き処理オ
    ブジェクトを作成するための手段と、前記名前付き処理オブジェクト内に設けられ、当該名前
    付き処理オブジェクトを識別する前記オブジェクト名を
    含んでいる全て のトランザクション要求メッセージを
    記各クライアント・プロセスから受け取るための入力プ
    ロセス手段と、前記入力プロセス手段内に設けられ、一
    トランザクション要求メッセージによって要求された
    トランザクションを処理するため、一のトランザクショ
    ン・プロセスを作成してこれをディスパッチするととも
    に、当該ディスパッチされたトランザクション・プロセ
    スに対し当該トランザクション要求メッセージを提供す
    るためのディスパッチ手段とを備えて成る、前記装置。
  2. 【請求項2】 前記ディスパッチ手段によってディスパ
    ッチされた前記トランザクション・プロセスが、前記各
    クライアント・プロセスのためのトランザクション出力
    メッセージを提供する、請求項1に記載の装置。
  3. 【請求項3】 前記名前付き処理オブジェクト内に設け
    られ、前記トランザクション出力メッセージの提供を逐
    次化するための出力プロセス手段を備えて成る、請求項
    2に記載の装置。
  4. 【請求項4】 前記出力プロセス手段が、一の前記トラ
    ンザクション出力メッセージを提供するように1つのト
    ランザクション・プロセスを制御するとともに、前記デ
    ィスパッチ手段によってディスパッチされた残りの全て
    のトランザクション・プロセスが前記トランザクション
    出力メッセージを提供しないように制御するための手段
    を含む、請求項3に記載の装置。
  5. 【請求項5】 前記出力プロセス手段が、前記トランザ
    クション出力メッセージを待ち行列化するための手段を
    含む、請求項3に記載の装置。
  6. 【請求項6】 トランザクション・メッセージを処理す
    るためのトランザクション処理システムであって、 一のトランザクション 要求と一の処理オブジェクト名と
    それぞれ含んでいる複数のトランザクション要求メッ
    セージを生成するための複数のクライアント・プロセス
    と、前記 複数のクライアント・プロセスからの前記トランザ
    クション要求メッセージに含まれてい前記トランザ
    クション要求を実行するためのサーバ・プロセスと前記 複数のクライアント・プロセス及び前記サーバ・プ
    ロセスに結合され、前記複数のクライアント・プロセス
    から前記トランザクション要求メッセージを前記サー
    バ・プロセスに提供するとともに、前記サーバ・プロセ
    スからのトランザクション出力メッセージを前記クライ
    アント・プロセスに提供するためのプロセス間メッセー
    ジ交換機構と、前記サーバ・プロセス内に設けられ、前記 トランザクシ
    ョン要求メッセージに含まれている前記処理オブジェ
    クト名に従って前記トランザクション要求メッセージを
    経路指定するための経路指定手段と、前記サーバ・プロセス内に設けられた 複数のトランザク
    ション・メッセージ移送機構とを備え前記 トランザクション・メッセージ移送機構の各々が、一の名前付き処理オブジェクト を識別するオブジェクト
    名と各クライアント・プロセスの識別とを含んでいる
    当該名前付き処理オブジェクトと、前記名前付き処理オブジェクト内に設けられ、前記 オブ
    ジェクト名と前記各クライアント・プロセスの識別
    を含んでいる全てのトランザクション要求メッセージを
    受け取るための入力プロセス手段と、前記入力プロセス手段内に設けられ、一のトランザクシ
    ョン要求メッセージによって要求されたトランザクショ
    ンを処理するため、一のトランザクション・プ ロセスを
    作成してこれをディスパッチするとともに、当該ディス
    パッチされたトランザクション・プロセスに対し当該ト
    ランザクション要求メッセージを提供するための ディス
    パッチ手段とを含む、前記システム。
  7. 【請求項7】 前記ディスパッチ手段によってディスパ
    ッチされた前記トランザクション・プロセスが、前記各
    クライアント・プロセスのための前記トランザクション
    出力メッセージを提供する、請求項6に記載のシステ
    ム。
  8. 【請求項8】 前記名前付き処理オブジェクトが、前記
    トランザクション出力メッセージの提供を逐次化するた
    めの出力プロセス手段を含む、請求項7に記載のシステ
  9. 【請求項9】 前記出力プロセス手段が、一の前記トラ
    ンザクション出力メッセージを提供するように1つのト
    ランザクション・プロセス手段を制御するとともに、前
    記ディスパッチ手段によってディスパッチされた残りの
    全てのトランザクション・プロセスが前記トランザクシ
    ョン出力メッセージを提供しないように制御するための
    手段を含む、請求項8に記載のシステム
  10. 【請求項10】 前記出力プロセス手段が、前記トラン
    ザクション出力メッセージを待ち行列化するための手段
    を含んでいる、請求項8に記載のシステム
  11. 【請求項11】 複数のクライアント・プロセスと、
    複数のクライアント・プロセスに結合され、クライア
    ントが開始したトランザクションを実行するためのサー
    バ・プロセスとを含むトランザクション処理システムに
    おいて、 トランザクション・メッセージを処理するための方法で
    あって、各クライアント・プロセスの識別子と オブジェクト名と
    を含んでいる一のトランザクション要求メッセージを、
    当該各クライアント・プロセスから前記サーバ・プロセ
    スに送るステップと、 前記サーバ・プロセス内で、前記トランザクション要求
    メッセージに応答し前記オブジェクト名と前記各ク
    ライアント・プロセスの識別子とを含んでいる一の名前
    付き処理オブジェクトを作成するステップと、前記 名前付き処理オブジェクト内に設けられた入力プロ
    セスを活動化するステップと、 前記各クライアントからの、前記名前付き処理オブジェ
    クトを識別する前記オブジェクト名を含んでいる全て
    トランザクション要求メッセージを、前記入力プロセス
    に提供するステップと、前記 入力プロセスによって受け取られた前記トランザク
    ション要求メッセージの各々ごとに、当該トランザクシ
    ョン要求メッセージによって要求されたトランザクショ
    ンを処理するため、一のトランザクション・プロセスを
    作成してこれをディスパッチするとともに、当該ディス
    パッチされたトランザクション・プロセスに対し当該ト
    ランザクション要求メッセージを提供するステップと
    ら成る、前記方法。
  12. 【請求項12】 前記入力プロセスによってディスパッ
    チされた前記トランザクション・プロセスが、前記各ク
    ライアント・プロセスのためのトランザクション出力メ
    ッセージを提供する、請求項11に記載の方法。
  13. 【請求項13】 前記名前付き処理オブジェクト内に設
    けられた出力プロセスを活動化するステップと、当該出力プロセスによって前記トランザクション出力メ
    ッセージの提供を逐次化するステップとを含む 、請求項
    11に記載の方法。
  14. 【請求項14】 前記逐次化するステップが、一の前記
    トランザクション出力メッセージを提供するように1つ
    のトランザクション・プロセスを制御するとともに、
    入力プロセスによってディスパッチされた残りの全て
    のトランザクション・プロセスが前記トランザクション
    出力メッセージを提供しないように制御する、請求項1
    3に記載の方法。
  15. 【請求項15】 前記逐次化するステップが、前記トラ
    ンザクション出力メッセージを待ち行列化するためのス
    テップを含む、請求項13に記載の方法。
  16. 【請求項16】 複数のクライアント・プロセスと、サ
    ーバ・プロセスと、前記複数のクライアント・プロセス
    及び前記サーバ・プロセスに結合されたメッセージ交換
    機構と、前記サーバ・プロセス内に設けられた複数のト
    ランザクション・メッセージ移送機構とを備え、当該ト
    ランザクション・メッセージ移送機構の各々が、当該各
    トランザクション・メッセージ移送機構を識別するオブ
    ジェクト名と各クライアント・プロセスの識別とを含
    んでいる一の名前付き処理オブジェクトと、当該名前付
    き処理オブジェクト内に設けられた一の入力プロセス
    と、当該入力プロセス内に設けられたプロセス・ディス
    パッチ手段とをそれぞれ含んでいるトランザクション処
    理システムにおいて、 トランザクション・メッセージを処理するための方法で
    あって前記 複数のクライアント・プロセス内で、一のトランザ
    クション要求と、一のオブジェクト名と、発信クライア
    ント・プロセスの識別子とをそれぞれ含んでいる、複数
    トランザクション要求メッセージを生成するステップ
    と、前記 複数のトランザクション要求メッセージを、前記複
    数のクライアント・プロセスから前記メッセージ交換機
    構を通して前記サーバ・プロセスへ提供するステップ
    と、前記 サーバ・プロセス内で、一の前記トランザクション
    要求メッセージを、当該メッセージ内の前記オブジェク
    ト名前記発信クライアント・プロセスの識別子とを含
    んでいる一の名前付き処理オブジェクトにリンクされた
    所定の前記トランザクション・メッセージ移送機構へ経
    路指定するステップと、前記所定の トランザクション・メッセージ移送機構
    で、前記トランザクション要求メッセージ内の前記トラ
    ンザクション要求を実行するために、一のトランザクシ
    ョン・プロセスをディスパッチするステップから成
    る、前記方法。
  17. 【請求項17】 前記所定のトランザクション・メッセ
    ージ移送機構によってディスパッチされた前記トランザ
    クション・プロセスが、各クライアント・プロセスのた
    めのトランザクション出力メッセージを提供する、請求
    項16に記載の方法。
  18. 【請求項18】 前記各トランザクション・メッセージ
    移送機構が、前記名前付き処理オブジェクト内に設けら
    れた一の出力プロセスを含み、前記各トランザクション
    ・メッセージ移送機構において、前記出力プロセスによ
    って前記トランザクション出力メッセージの提供を逐次
    化するステップを含む、請求項17に記載の方法。
  19. 【請求項19】 前記逐次化するステップが、一の前記
    トランザクション出力メッセージを提供するように1つ
    のトランザクション・プロセスを制御するとともに、
    各トランザクション・メッセージ移送機構によってデ
    ィスパッチされた残りの全てのトランザクション・プロ
    セスが前記トランザクション出力メッセージを提供しな
    いように制御するステップを含む、請求項18に記載の
    方法
  20. 【請求項20】 前記逐次化するステップが、前記トラ
    ンザクション出力メッセージを待ち行列化するためのス
    テップを含む、請求項18に記載の方法
JP6323405A 1994-03-21 1994-12-26 トランザクション・メッセージを処理するための装置、システムおよび方法 Expired - Fee Related JP2583027B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/215,438 US6330582B1 (en) 1994-03-21 1994-03-21 Apparatus and method enabling a client to control transaction message traffic between server and client processes
US215438 1994-03-21

Publications (2)

Publication Number Publication Date
JPH07262119A JPH07262119A (ja) 1995-10-13
JP2583027B2 true JP2583027B2 (ja) 1997-02-19

Family

ID=22802986

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6323405A Expired - Fee Related JP2583027B2 (ja) 1994-03-21 1994-12-26 トランザクション・メッセージを処理するための装置、システムおよび方法

Country Status (4)

Country Link
US (1) US6330582B1 (ja)
EP (1) EP0674260B1 (ja)
JP (1) JP2583027B2 (ja)
DE (1) DE69527873T2 (ja)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6813769B1 (en) 1997-10-28 2004-11-02 Microsoft Corporation Server application components with control over state duration
GB2312766A (en) * 1996-05-01 1997-11-05 Ibm Transactional layer for object management system
JPH103416A (ja) * 1996-06-14 1998-01-06 Canon Inc 情報処理装置およびその方法
US6631425B1 (en) 1997-10-28 2003-10-07 Microsoft Corporation Just-in-time activation and as-soon-as-possible deactivation or server application components
US5958004A (en) 1997-10-28 1999-09-28 Microsoft Corporation Disabling and enabling transaction committal in transactional application components
US6526416B1 (en) 1998-06-30 2003-02-25 Microsoft Corporation Compensating resource managers
US6609102B2 (en) 1998-07-20 2003-08-19 Usa Technologies, Inc. Universal interactive advertizing and payment system for public access electronic commerce and business related products and services
US6604085B1 (en) 1998-07-20 2003-08-05 Usa Technologies, Inc. Universal interactive advertising and payment system network for public access electronic commerce and business related products and services
US6615183B1 (en) 1998-07-20 2003-09-02 Usa Technologies, Inc. Method of warehousing user data entered at an electronic commerce terminal
US6604086B1 (en) 1998-07-20 2003-08-05 Usa Technologies, Inc. Electronic commerce terminal connected to a vending machine operable as a telephone
US6611810B1 (en) 1998-07-20 2003-08-26 Usa Technologies, Inc. Store display window connected to an electronic commerce terminal
US6425017B1 (en) * 1998-08-17 2002-07-23 Microsoft Corporation Queued method invocations on distributed component applications
US6442620B1 (en) 1998-08-17 2002-08-27 Microsoft Corporation Environment extensibility and automatic services for component applications using contexts, policies and activators
US6604122B1 (en) * 1998-11-03 2003-08-05 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for evaluating a data processing request performed by distributed processes
US6748455B1 (en) 1999-02-23 2004-06-08 Microsoft Corporation Object connectivity through loosely coupled publish and subscribe events with filtering
US6829770B1 (en) 1999-02-23 2004-12-07 Microsoft Corporation Object connectivity through loosely coupled publish and subscribe events
US6728879B1 (en) 1999-06-02 2004-04-27 Microsoft Corporation Transactional log with multi-sector log block validation
US6920636B1 (en) 1999-12-15 2005-07-19 Microsoft Corporation Queued component interface passing for results outflow from queued method invocations
US7805338B2 (en) 2001-03-26 2010-09-28 Usa Technologies, Inc. Method of constructing a digital content play list for transmission and presentation on a public access electronic terminal
US20020169863A1 (en) * 2001-05-08 2002-11-14 Robert Beckwith Multi-client to multi-server simulation environment control system (JULEP)
US7080119B2 (en) 2001-07-17 2006-07-18 Bea Systems, Inc. System and method for transaction processing with delegated commit feature
US7213049B2 (en) * 2001-07-17 2007-05-01 Bea Systems, Inc. System and method for transaction processing with transaction property feature
US7337441B2 (en) 2001-07-17 2008-02-26 Bea Systems, Inc. System and method for prepreparing a transaction process involving a chain of servers in a circular flow
US7058632B1 (en) 2002-06-27 2006-06-06 Unisys Corporation Method and system for facilitating execution of a user-inputted message in a client-server database network
US7406511B2 (en) 2002-08-26 2008-07-29 International Business Machines Corporation System and method for processing transactions in a multisystem database environment
JP4291060B2 (ja) * 2003-07-01 2009-07-08 富士通株式会社 トランザクション処理方法,トランザクション制御装置およびトランザクション制御プログラム
US7490083B2 (en) 2004-02-27 2009-02-10 International Business Machines Corporation Parallel apply processing in data replication with preservation of transaction integrity and source ordering of dependent updates
US8688634B2 (en) 2004-02-27 2014-04-01 International Business Machines Corporation Asynchronous peer-to-peer data replication
US7614546B2 (en) 2005-02-03 2009-11-10 Yottamark, Inc. Method and system for deterring product counterfeiting, diversion and piracy
US8300806B2 (en) 2005-02-03 2012-10-30 Yottamark, Inc. Duo codes for product authentication
JP4357473B2 (ja) * 2005-11-04 2009-11-04 株式会社ソニー・コンピュータエンタテインメント データ処理システムおよびプログラム
US8706849B1 (en) 2007-02-09 2014-04-22 Crimson Corporation Systems and methods for increasing the scalability in a client/server environment
US8060653B2 (en) * 2007-04-23 2011-11-15 Ianywhere Solutions, Inc. Background synchronization
US8341134B2 (en) 2010-12-10 2012-12-25 International Business Machines Corporation Asynchronous deletion of a range of messages processed by a parallel database replication apply process
US9405602B1 (en) 2012-06-25 2016-08-02 Google Inc. Method for application notification and tasking
US9727625B2 (en) 2014-01-16 2017-08-08 International Business Machines Corporation Parallel transaction messages for database replication
US9948724B2 (en) 2015-09-10 2018-04-17 International Business Machines Corporation Handling multi-pipe connections

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2667818B2 (ja) 1986-10-09 1997-10-27 株式会社日立製作所 トランザクション処理方法
US4853843A (en) * 1987-12-18 1989-08-01 Tektronix, Inc. System for merging virtual partitions of a distributed database
US5051892A (en) 1989-02-09 1991-09-24 International Business Machines Corp. Full duplex conversation between transaction programs
US5249293A (en) 1989-06-27 1993-09-28 Digital Equipment Corporation Computer network providing transparent operation on a compute server and associated method
US5095421A (en) * 1989-08-17 1992-03-10 International Business Machines Corporation Transaction processing facility within an operating system environment
CA2025160A1 (en) * 1989-09-28 1991-03-29 John W. White Portable and dynamic distributed applications architecture
US5265250A (en) 1990-03-29 1993-11-23 At&T Bell Laboratories Apparatus and methods for performing an application-defined operation on data as part of a system-defined operation on the data
AU628753B2 (en) * 1990-08-14 1992-09-17 Digital Equipment Corporation Method and apparatus for implementing server functions in a distributed heterogeneous environment
US5195181A (en) 1992-01-10 1993-03-16 Digital Equipment Corporation Message processing system having separate message receiving and transmitting processors with message processing being distributed between the separate processors
US5396630A (en) * 1992-10-06 1995-03-07 International Business Machines Corporation Method and system for object management across process boundries in a data processing system

Also Published As

Publication number Publication date
DE69527873D1 (de) 2002-10-02
DE69527873T2 (de) 2003-04-30
JPH07262119A (ja) 1995-10-13
US6330582B1 (en) 2001-12-11
EP0674260A2 (en) 1995-09-27
EP0674260B1 (en) 2002-08-28
EP0674260A3 (en) 1999-04-14

Similar Documents

Publication Publication Date Title
JP2583027B2 (ja) トランザクション・メッセージを処理するための装置、システムおよび方法
US5802062A (en) Preventing conflicts in distributed systems
US7516176B2 (en) Distributed request and response queues for service processor
US5845117A (en) Deadlock detecting device
US5448734A (en) Selective distribution of messages using named pipes
JPS63181063A (ja) トランザクション処理方法
US20070074066A1 (en) High availability for event forwarding
JPH04233044A (ja) トランザクション処理環境における通信インターフェース
JPH11502659A (ja) 故障許容処理方法
EP0978056A1 (en) Providing communications links in a computer network
JPH09251412A (ja) 分散データベーストランザクションのコミットメント方法
JPS60500232A (ja) 障害がない場合に最適化される、複数プロセッサの合意を得る方法
JP2002512400A (ja) 第1のトランザクション処理環境におけるコンポーネントを能動化して別の環境におけるリソースにアクセスするための方法および装置
DuBourdieux Implementation of Distributed Transactions.
JP3462064B2 (ja) 分散シミュレーションシステム
US5432901A (en) Method of dynamically generating a local format for use by a logical unit in a VTAM-type communications session
US20030212587A1 (en) Apparatus and methods for coordinating Web services using role based interpretation of coordination plans
JPH0916417A (ja) メッセージ通信方法およびメッセージ通信システム
Bever et al. OSI services for transaction processing
JPH02118841A (ja) 入力待ち行列管理方式
Lilien et al. Pessimistic quasipartitioning protocols for distributed database systems
JPH0314058A (ja) クライアントとサーバ間のメッセージ通信制御方式
JPS62203259A (ja) 分散処理システムのデツドロツク検出方式
JPS6352263A (ja) 分散処理システムのデツドロツク検出方式
JP2000227906A (ja) 分散アプリケーション連携方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees