JPH11265362A - クライアント処理装置、サ―バ処理装置、クライアント処理方法、サ―バ処理方法及びコンピュ―タ・プログラム製品 - Google Patents
クライアント処理装置、サ―バ処理装置、クライアント処理方法、サ―バ処理方法及びコンピュ―タ・プログラム製品Info
- Publication number
- JPH11265362A JPH11265362A JP11000118A JP11899A JPH11265362A JP H11265362 A JPH11265362 A JP H11265362A JP 11000118 A JP11000118 A JP 11000118A JP 11899 A JP11899 A JP 11899A JP H11265362 A JPH11265362 A JP H11265362A
- Authority
- JP
- Japan
- Prior art keywords
- transaction
- client
- server
- command
- context
- 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
- 238000004590 computer program Methods 0.000 title claims description 8
- 238000003672 processing method Methods 0.000 title claims 9
- 238000000034 method Methods 0.000 claims abstract description 89
- 230000008569 process Effects 0.000 claims abstract description 66
- 230000004044 response Effects 0.000 claims description 5
- 238000004891 communication Methods 0.000 description 10
- 230000009471 action Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 235000010254 Jasminum officinale Nutrition 0.000 description 1
- 240000005385 Jasminum sambac Species 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Accounting & Taxation (AREA)
- Economics (AREA)
- Finance (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Multi Processors (AREA)
Abstract
ロセス間フローを減少させるとともに、トランザクショ
ンの作成に伴うクライアント・プロセスのオーバヘッド
を減少させること。 【解決手段】トランザクションを処理するクライアント
/サーバ計算システムにおいて使用するためのクライア
ント処理装置は、トランザクションの開始を通知するた
めに開始コマンドを発行し、実質的なトランザクション
・コマンドを遠隔サーバに送信する。このトランザクシ
ョン・コマンドは、トランザクションが開始されたが当
該トランザクションを表すトランザクション・オブジェ
クトがまだ作成されていないことを指示するための、特
定の値を有するトランザクション・コンテキストを含ん
でいる。更に、クライアント処理装置は、前記遠隔サー
バが前記トランザクション・オブジェクトを作成した場
合には、前記遠隔サーバから修正済みのトランザクショ
ン・コンテキストを受信する。
Description
ンピュータ(以下「クライアント」と表記)がサーバ・
コンピュータ(以下「サーバ」と表記)に対しクライア
ントの作業の一部を実行することを要求するようにした
クライアント/サーバ(分散式とも呼ばれる)計算の分
野に係る。クライアント及びサーバは、両者ともに同一
の物理的計算機上に設けることができる。
の分野において過去数年にわたって次第に重要となって
きた。このタイプの分散式計算は、1台の計算機がその
作業の一部を他の計算機に委譲して、これを一層良好な
態様で実行することを可能にする。例えば、サーバは、
膨大なデータの記憶を管理するためのデータベース・プ
ログラムを実行する高性能のコンピュータとすることが
できるのに対し、クライアントは、そのローカル・プロ
グラムの1つで使用するためにデータベースからの情報
を要求するデスクトップ型のパーソナル・コンピュータ
(PC)とすることができる。
イアント及びサーバを互いに異なる(異種)「プラット
フォーム」上に設けることを可能にする処の、オブジェ
クト指向プログラミング(OOP)と呼ばれる周知のコ
ンピュータ・プログラミング技法の使用によって強調さ
れてきた。プラットフォームとは、計算機がその作業を
行うために使用する処の、特定のハードウェア/ソフト
ウェア/オペレーティング・システム/通信プロトコル
の組み合わせである。OOPを使用すると、クライアン
トのアプリケーション・プログラム(以下「クライアン
ト・アプリケーション」と表記)及びサーバのアプリケ
ーション・プログラム(以下「サーバ・アプリケーショ
ン」と表記)は、クライアント・アプリケーションの作
業要求がサーバ・アプリケーションにどのように通信さ
れ且つそこでどのように受け入れられるかということを
考慮することなく、それぞれのプラットフォーム上で動
作することができる。同様に、サーバ・アプリケーショ
ンは、OOPシステムがサーバ・アプリケーションの処
理結果をどのように受信し、変換し、これを要求元のク
ライアント・アプリケーションにどのように戻すかとい
うことを考慮する必要がない。
欧州特許出願 EP 0 677,943 A2 には、OOP技法を異
種のクライアント/サーバ・システムと統合化する方法
が開示されている。しかしながら、本発明の環境を理解
する一助として、その基本アーキテクチャの例を以下で
説明する。
10(例えば、IBM社が提供するOS/2を搭載した
パーソナル・コンピュータ)は、そのオペレーティング
・システム上で実行されるクライアント・アプリケーシ
ョン40を有する(「IBM」及び「OS/2」は、本
出願人の商標である)。クライアント・アプリケーショ
ン40は、サーバ20上で作業を定期的に実行すること
を必要とするとともに、クライアント・アプリケーショ
ン40が後で使用するのに備えてサーバ20からデータ
を定期的に戻すことを必要とする。サーバ20は、例え
ば、IBM社が提供するMVSオペレーティング・シス
テムを搭載した高性能のメインフレーム・コンピュータ
とすることができる(「MVS」は、本出願人の商標で
ある)。本発明については、サーバ20によって行うべ
き通信サービス用の要求がクライアント・アプリケーシ
ョン40とのユーザの対話によって開始されるのか、又
はクライアント・アプリケーション40がユーザの対話
と独立に動作してその実行中に自動的に要求を行うのか
ということは、全く関係がない。
についての要求を行うことを望んでいる場合、クライア
ント・アプリケーション40は、必要とするサービスを
第1の論理手段50に通知する。こうするには、例え
ば、遠隔手順の名前とともに、入力及び出力パラメータ
のリストを第1の論理手段50に通知すればよい。かく
て、第1の論理手段50は、記憶装置60内に格納され
ている利用可能な通信サービスの定義を参照して、サー
バ20との必要な通信を確立するというタスクを行う。
可能な全てのサービスは、オブジェクト・クラスの結合
(cohesive)フレームワーク70として定義されてい
る。なお、これらのクラスは、単オブジェクト・クラス
から導出されるものである。それぞれのサービスをこの
ように定義すると、性能及び再使用性の面で多数の利点
を得ることができる。
に、第1の論理手段50は、フレームワーク70内のど
のオブジェクト・クラスを使用する必要があるかを決定
した後、サーバ20においてこのオブジェクトのインス
タンスを作成する。このオブジェクトには、そのメソッ
ドのうち1つを呼び出すために、メッセージが送信され
るようになっている。かくして、接続手段80を介して
サーバ20との接続が確立されるので、これに続いて、
第2の論理手段90に対し要求を送信することができ
る。
サーバ20上で実行中のサーバ・アプリケーション10
0に引き渡すので、サーバ・アプリケーション100
は、この要求に相当する特定のタスク(例えば、データ
検索手順)を実行することができる。かかるタスクが完
了すると、サーバ・アプリケーション100は、その結
果をクライアント10に戻さなければならないことがあ
る。このため、サーバ・アプリケーション100は、要
求されたタスクの実行中及びその結果をクライアント1
0に返送すべき時点で、第2の論理手段90と対話す
る。第2の論理手段90は、オブジェクトのインスタン
スを作成するとともに、これらのオブジェクトの適当な
メソッドを呼び出す。なお、これらのオブジェクト・イ
ンスタンスは、サーバ・アプリケーション100によっ
て必要とされるときに、記憶装置110内に格納されて
いるオブジェクト・クラスの結合フレームワーク120
から作成されるものである。
0上のクライアント・アプリケーション40は、通信ア
ーキテクチャに対し露出されないことになる。また、サ
ーバ・アプリケーション100は、その環境用の標準的
な機構によって呼び出されるので、これが遠隔的に呼び
出されている場合には、そのことを認識しないことにな
る。
(OMG)は、図1に示されているような分散オブジェ
クトを持つ異種のプラットフォーム上で行われるクライ
アント/サーバ計算の種々の側面の標準化及び普及を図
るための国際的な非営利団体である。OMGは、クライ
アント(例えば、10)が(OOP形式で)サーバ(例
えば、20)と通信するための標準仕様を記述した文書
を公開している。これらの標準仕様の一部として定めら
れたオブジェクト・リクエスト・ブローカ(CORBA
−共通オブジェクト・リクエスト・ブローカ・アーキテ
クチャとも呼ばれる)は、クライアントとサーバとの間
のオブジェクト指向ブリッジを提供する。ORBは、ク
ライアント・アプリケーション40及びサーバ・アプリ
ケーション100をオブジェクト指向の実現細目から分
離するとともに、第1の論理手段50及び第2の論理手
段90並びに通信手段80の作業のうち少なくとも一部
を実行する。
て、OMGは、OTS(オブジェクト・トランザクショ
ン・サービス)と呼ばれる処の、「トランザクション」
に関係する標準仕様を定めている。その詳細について
は、"CORBA Object TransactionService Specification
1.0, OMG Document 94.8.4" を参照されたい。コンピ
ュータを使用して実現されたトランザクション処理シス
テムは、多くの産業において重要なビジネス・タスクに
有用である。トランザクションは、完全に完了されるか
又はアクションを伴うことなく完全に除去されねばなら
ない処の、単作業単位を定義する。例えば、顧客が現金
を引き出すための銀行用自動端末装置の場合には、現金
を発行し、当該端末内に置かれている現金の残高を減少
させるとともに、顧客の預金口座の残高を減少させると
いう全てのアクションを完全に行わなければならない
か、又はその何れも全く行ってはならないのである。こ
れらの従属アクションの1つでも失敗すると、記録内容
と実際の事象との間に不一致が生ずることになろう。
理的又は論理的ロケーションにおける資源に影響するよ
うなトランザクションを含んでいる。前述の例では、或
るトランザクションは、ローカルの銀行用自動端末装置
で管理されている資源に影響するだけでなく、その銀行
のメイン・コンピュータによって管理されている預金口
座の残高にも影響する。これらのトランザクションは、
特定のサーバ(例えば、20)によって処理される一連
の顧客要求について、このサーバと通信する特定のクラ
イアント(例えば、10)を含んでいる。OMGのOT
Sは、これらの分散式トランザクションを調整するよう
に策定されたものである。
中のアプリケーションが開始するトランザクションは、
互いに異なる複数のサーバを呼び出すことがある。この
場合、各サーバは、このトランザクションに含まれる命
令に従って、そのローカル・データベースの内容を変更
するためのサーバ・プロセスを開始する。このトランザ
クションが終了するのは、このトランザクションをコミ
ットする(従って、全てのサーバがそれぞれのローカル
・データベースに対する変更を終了する)か、又はこの
トランザクションを打ち切る(従って、全てのサーバが
それぞれのローカル・データベースに対する変更を「ロ
ールバック」若しくは無視する)場合だけである。この
トランザクションの間にこれらのサーバと通信するため
には(即ち、これらのサーバに対し、このトランザクシ
ョンにおけるそれぞれの部分をコミットするか又は打ち
切るように命令するためには)、関係するプロセスのう
ち1つが、このトランザクション用の状態データを維持
しなければならない。こうするために一般に採用されて
いる方法は、特定のプロセスを使用して一連のトランザ
クション・オブジェクトを設定するとともに、そのうち
の1つを種々のサーバに関するトランザクションを調整
するための調整オブジェクトとするというものである。
年5月に発表した製品である「Component Broker Serie
s」(本出願人の商標)の一部として含まれている処
の、OTSの実現例が示されている。トランザクション
(例えば、預金口座からの現金の引き出し)を開始する
ことを望んでいるクライアント・プロセス21は、この
トランザクションの状態を維持するためのトランザクシ
ョン・オブジェクトを作成及び維持可能なプロセスを見
つけなければならない。シン・クライアント(即ち、最
小限の機能だけを有するクライアント)を作成するとい
う最近の傾向に従って、クライアント・プロセス21
は、かかるトランザクション・オブジェクトをローカル
に維持することができないのが普通であるから、この目
的のためにサーバ・プロセスを捜さなければならない。
S(又はCORBAライフサイクル・サービスのような
他のサービス)は、(調整、制御及び終了オブジェクト
を含む)トランザクション・オブジェクト221を作成
すべきサーバ・プロセスを捜索する。この従来技術で
は、同サーバ・プロセス(即ち、図2のサーバAプロセ
ス22)が常に選ばれるようになっている。サーバAプ
ロセス22を見つけると、クライアント・プロセス21
は、サーバAプロセス22にメッセージを送信して(丸
数字1を参照)、トランザクション・オブジェクト22
1を作成するように命令する。次に、サーバAプロセス
22は、トランザクション・オブジェクト221を作成
するとともに、トランザクション・コンテキストを保持
する応答をクライアント・プロセス21に送信する(丸
数字2を参照)。次に、クライアント・プロセス21
は、サーバBプロセス23に預金口座借方記入コマンド
を送信する(丸数字3を参照)。サーバBプロセス23
は、クライアント・プロセス21が現金の引き出しを望
んでいる預金口座オブジェクト231を含んでいる。ま
た、預金口座借方記入コマンドは、サーバAプロセス2
2からクライアント・プロセス21に供給されたトラン
ザクション・コンテキストを保持している。このよう
に、サーバBプロセス23内の預金口座オブジェクト2
31は、それ自体をサーバAプロセス22内のトランザ
クション・オブジェクト221に登録することができる
ので(丸数字4を参照)、トランザクション・オブジェ
クト221は、預金口座オブジェクト231に対し、当
該トランザクションの終わりにコミット又はロールバッ
クを行うように指令することができる(丸数字5を参
照)。
来技術の実現形態は、少なくとも2つの点で非効率的で
ある。第1に、トランザクション・オブジェクトを作成
及び維持するためにクライアント・プロセスが遠隔プロ
セスを捜している場合には、常に同サーバ・プロセスが
使用されるようになっているから、このサーバ・プロセ
スは、直ぐに過負荷となって、それ自体のタスク(例え
ば、ローカル資源の更新)を効率的に行うことが困難と
なる。第2に、各トランザクションに関係する種々のプ
ロセス間に、多数のプロセス間フローが存在する。仮
に、ランダムに選ばれたサーバ上でトランザクション・
オブジェクトを作成及び維持するようにしたとしても、
依然として多数のプロセス間コールが存在するという問
題がある。
発明は、トランザクションを処理するクライアント/サ
ーバ計算システムにおいて使用するためのクライアント
処理装置を提供する。このクライアント処理装置は、ト
ランザクションの開始を通知するために開始コマンドを
発行するための手段と、トランザクション・コマンドを
遠隔サーバに送信するための手段とを備えている。この
トランザクション・コマンドは、トランザクションが開
始されたが当該トランザクションを表すトランザクショ
ン・オブジェクトがまだ作成されていないことを指示す
るための、特定の値を有するトランザクション・コンテ
キストを含んでいる。更に、このクライアント処理装置
は、前記遠隔サーバが前記トランザクション・オブジェ
クトを作成した場合には、前記遠隔サーバから修正済み
のトランザクション・コンテキストを受信するための手
段を備えている。
クションを処理するクライアント/サーバ計算システム
において使用するためのサーバ処理装置を提供する。こ
のサーバ処理装置は、クライアントからトランザクショ
ン・コマンドを受信するための手段を備えている。この
トランザクション・コマンドは、トランザクションが前
記クライアントによって開始されたが当該トランザクシ
ョンを表すトランザクション・オブジェクトがまだ作成
されていないことを指示するための、特定の値を有する
トランザクション・コンテキストを含んでいる。更に、
このサーバ処理装置は、前記トランザクション・コンテ
キスト内の前記特定の値を認識するとともに、前記特定
の値に応答して前記トランザクション・オブジェクトを
ローカルに作成するための手段を備えている。
の側面に関連して記述したクライアントの機能を実行す
るための方法を提供する。
の側面に関連して記述したサーバの機能を実行するため
の方法を提供する。
の側面に関連して記述したクライアントの機能をコンピ
ュータ上で実行するためのコンピュータ・プログラム製
品を提供する。
の側面に関連して記述したサーバの機能をコンピュータ
上で実行するためのコンピュータ・プログラム製品を提
供する。
ブローカ・アーキテクチャ(CORBA)のオブジェク
ト・トランザクション・サービス(OTS)は、「現
行」と呼ばれるインタフェース・オブジェクトを提供す
る。かかる現行インタフェース・オブジェクトは、トラ
ンザクションの開始を下部のソフトウェア層に通知する
ためにクライアント・アプリケーション(ソース・コー
ド)が使用する処の、「開始」メソッドを有している。
本発明の推奨実施例によれば、クライアント・アプリケ
ーションが特定のクライアント・アーキテクチャ上で構
築又は実行されており且つ「開始」メソッドを含んでい
る場合には、その下部にあるソフトウェアは、当該トラ
ンザクションに実質的に関係するサーバ(例えば、当該
トランザクションに関係するサーバ資源を有するような
サーバ)においてトランザクション状態オブジェクトを
設定することにより、当該トランザクションを作成する
ように適当な動作を行う。
プロセス31(図3を参照)内で実行中のアプリケーシ
ョンは、通常のように、現行インタフェース・オブジェ
クト上の「開始」メソッドを呼び出すことにより、トラ
ンザクションを開始する。次に、クライアント・プロセ
ス31は、例えば最小セットのオブジェクトをローカル
に作成することにより、クライアント・プロセス31が
このコマンドを発行したという事実を記録する。前記ア
クションは、図4の流れ図のステップ41に例示されて
いる。この例では、処理中のトランザクションが、クラ
イアントとして銀行用自動端末装置を使用して行われる
処の、預金口座からの現金の引き出しであると仮定す
る。かかるトランザクションは、世界中のどこでも日常
的に行われている。
て、遠隔プロセス22を捜した後、この遠隔プロセス2
2内でトランザクション・オブジェクト221を作成し
ていた。これに対し、本発明は、その後の時点までこれ
らのトランザクション・オブジェクトの作成を遅れさせ
るようにしている(後述)。
行中のアプリケーションは、引き出しトランザクション
の最初の実質的部分として、サーバBプロセス33内の
預金口座オブジェクト331に対し、借方記入コマンド
を発行する。この例では、かかる借方記入コマンドは、
「開始」コマンドを発行した後にクライアント・プロセ
ス31が当該トランザクションにおいて形成する処の、
最初の遠隔フローである。このコマンドを形成するに当
たり、クライアント・プロセス31は、このコマンド内
に或るトランザクション・コンテキストを含めることに
より、預金口座オブジェクト331において、このコマ
ンドが特定のトランザクションの一部であることを認識
し且つそのトランザクションを識別することができるよ
うにしなければならない。
セス21は、遠隔プロセス22内で設定したトランザク
ション・オブジェクト221からトランザクション・コ
ンテキストを受信していた。これに対し、本発明の推奨
実施例では、トランザクション・オブジェクトはまだ作
成されていないので、この段階において、クライアント
・プロセス31に対し、トランザクション・コンテキス
トを提供することができない。かくて、本発明の推奨実
施例では、クライアント・プロセス31が遠隔プロセス
33内の預金口座オブジェクト331に対し借方記入コ
マンドを送信する場合、特定のトランザクション・コン
テキスト(例えば、NULL トランザクション・コンテキ
スト)がこのコマンド内に含められることになる(図3
の丸数字1を参照)。 NULL トランザクション・コンテ
キストとは、その全てのフィールドがゼロにセットされ
ていることを意味する。この特定のトランザクション・
コンテキストは、トランザクションが開始されたが、そ
のトランザクション・オブジェクトがまだ作成されてい
ないことを通知する。この動作は、図4の流れ図のステ
ップ42に例示されている通りである。
ザクション・コンテキスト(例えば、NULL トランザク
ション・コンテキスト)を認識する場合、サーバBプロ
セス33は、トランザクションが開始されたが、そのト
ランザクション・オブジェクトがまだ作成されていない
ことを通知される。そうすると、サーバBプロセス33
は、トランザクション・オブジェクト332をローカル
に作成する(ステップ43)。この時点で、トランザク
ション・オブジェクト332が作成されているので、当
該トランザクションは、有効なトランザクション・コン
テキストを有することになり、そして有効なトランザク
ション・コンテキストが当該トランザクションに割り当
てられる。次に、サーバBプロセス33は、クライアン
ト・プロセス31に応答を送信して(丸数字2を参
照)、クライアント・プロセス31に対し有効なトラン
ザクション・コンテキストを通知する(ステップ4
4)。この時点で、クライアント・プロセス31は、作
成済みのトランザクションについて十分な情報を有する
ことになる。
は、トランザクション・オブジェクト332と通常の態
様で通信する(ステップ45)。但し、このような全て
の通信は、同プロセス内で行われるために、これらの通
信については如何なるプロセス間フローも必要とされな
い。説明中の例では、かかる通信は、預金口座オブジェ
クト331をトランザクション・オブジェクト332に
登録することを含み、そして当該トランザクションが終
了した場合、トランザクション・オブジェクト332
は、預金口座オブジェクト331に対しコミット又はロ
ールバック・コマンドを送信する。
ス33は、NULL トランザクション・コンテキストを受
信した時点で直ちにトランザクション・オブジェクトを
作成するのではなく、その後の時点で、例えば、資源登
録の間に、トランザクション・オブジェクトを作成する
ことができる。
ゼロにセットした)NULL トランザクション・コンテキ
ストが使用されているが、他の特定の値を有するトラン
ザクション・コンテキストも使用可能であることは勿論
である。例えば、かかるトランザクション・コンテキス
トの個別データ・フィールドを特定の値にそれぞれセッ
トすることができる。
ザクションの処理に実質的に関係するサーバ・プロセス
(例えば、当該トランザクションに関係する資源を有す
るようなサーバ・プロセス)に対し、クライアント・プ
ロセスが実質的なトランザクション・コマンドを送信す
るまで、トランザクション・オブジェクトは作成されな
いのであり、これにより、多数のプロセス間フローを減
少させることができる。このことは、図2(従来技術)
と図3(本発明の推奨実施例)を簡単に比較するだけで
も、十分に理解することができる。図2には、5つのプ
ロセス間コールが示されているのに対し、図3には、2
つのプロセス間コールが示されているに過ぎないからで
ある。
・プロセスがトランザクションの作成を専用的な態様で
指令していたが(図2の丸数字1を参照)、本発明のク
ライアント・プロセスは、かかる専用的な態様に伴うオ
ーバヘッドを負っていないという点で有利である。即
ち、クライアントに関する限り、本発明におけるトラン
ザクションの作成は、クライアントの実質的なトランザ
クション・コマンド(例えば、預金口座の借方記入)と
組み合わされているからである。かくして、本発明のク
ライアントは、遠隔のサーバ・プロセスを見つけること
を免除されるだけでなく、この見つけられたプロセス上
でメソッドを作成することからも免除されるのである。
ライアント/サーバ・アーキテクチャのブロック図であ
る。
ク図である。
示すブロック図である。
クライアントが開始コマンドを発行する場合に行われる
各ステップを示す流れ図である。
Claims (6)
- 【請求項1】トランザクションを処理するクライアント
/サーバ計算システムにおいて使用するためのクライア
ント処理装置であって、 トランザクションの開始を通知するために開始コマンド
を発行するための手段と、 トランザクション・コマンドを遠隔サーバに送信するた
めの手段とを備え、 前記トランザクション・コマンドは、トランザクション
が開始されたが当該トランザクションを表すトランザク
ション・オブジェクトがまだ作成されていないことを指
示するための、特定の値を有するトランザクション・コ
ンテキストを含んでおり、 更に、前記遠隔サーバが前記トランザクション・オブジ
ェクトを作成した場合には、前記遠隔サーバから修正済
みのトランザクション・コンテキストを受信するための
手段を備えていることを特徴とする、前記クライアント
処理装置。 - 【請求項2】トランザクションを処理するクライアント
/サーバ計算システムにおいて使用するためのサーバ処
理装置であって、 クライアントからトランザクション・コマンドを受信す
るための手段を備え、 前記トランザクション・コマンドは、トランザクション
が前記クライアントによって開始されたが当該トランザ
クションを表すトランザクション・オブジェクトがまだ
作成されていないことを指示するための、特定の値を有
するトランザクション・コンテキストを含んでおり、 更に、前記トランザクション・コンテキスト内の前記特
定の値を認識するとともに、前記特定の値に応答して前
記トランザクション・オブジェクトをローカルに作成す
るための手段を備えていることを特徴とする、前記サー
バ処理装置。 - 【請求項3】トランザクションを処理するクライアント
/サーバ計算システムにおいて使用するためのクライア
ント処理方法であって、 トランザクションの開始を通知するために開始コマンド
を発行するステップと、 トランザクション・コマンドを遠隔サーバに送信するス
テップとを含み、 前記トランザクション・コマンドは、トランザクション
が開始されたが当該トランザクションを表すトランザク
ション・オブジェクトがまだ作成されていないことを指
示するための、特定の値を有するトランザクション・コ
ンテキストを含んでおり、 更に、前記遠隔サーバが前記トランザクション・オブジ
ェクトを作成した場合には、前記遠隔サーバから修正済
みのトランザクション・コンテキストを受信するステッ
プを含んでいることを特徴とする、前記クライアント処
理方法。 - 【請求項4】トランザクションを処理するクライアント
/サーバ計算システムにおいて使用するためのサーバ処
理方法であって、 クライアントからトランザクション・コマンドを受信す
るステップを含み、 前記トランザクション・コマンドは、トランザクション
が前記クライアントによって開始されたが当該トランザ
クションを表すトランザクション・オブジェクトがまだ
作成されていないことを指示するための、特定の値を有
するトランザクション・コンテキストを含んでおり、 更に、前記トランザクション・コンテキスト内の前記特
定の値を認識するとともに、前記特定の値に応答して前
記トランザクション・オブジェクトをローカルに作成す
るステップを含んでいることを特徴とする、前記サーバ
処理方法。 - 【請求項5】トランザクションを処理するクライアント
/サーバ計算システムにおいて使用するためのクライア
ント処理方法をコンピュータ上で実行するように、コン
ピュータが読み取り可能な記憶媒体に格納されたコンピ
ュータ・プログラム製品であって、前記クライアント処
理方法が、 トランザクションの開始を通知するために開始コマンド
を発行するステップと、 トランザクション・コマンドを遠隔サーバに送信するス
テップとを含み、 前記トランザクション・コマンドは、トランザクション
が開始されたが当該トランザクションを表すトランザク
ション・オブジェクトがまだ作成されていないことを指
示するための、特定の値を有するトランザクション・コ
ンテキストを含んでおり、 更に、前記遠隔サーバが前記トランザクション・オブジ
ェクトを作成した場合には、前記遠隔サーバから修正済
みのトランザクション・コンテキストを受信するステッ
プを含んでいることを特徴とする、前記コンピュータ・
プログラム製品。 - 【請求項6】トランザクションを処理するクライアント
/サーバ計算システムにおいて使用するためのサーバ処
理方法をコンピュータ上で実行するように、コンピュー
タが読み取り可能な記憶媒体に格納されたコンピュータ
・プログラム製品であって、前記サーバ処理方法が、 クライアントからトランザクション・コマンドを受信す
るステップを含み、 前記トランザクション・コマンドは、トランザクション
が前記クライアントによって開始されたが当該トランザ
クションを表すトランザクション・オブジェクトがまだ
作成されていないことを指示するための、特定の値を有
するトランザクション・コンテキストを含んでおり、 更に、前記トランザクション・コンテキスト内の前記特
定の値を認識するとともに、前記特定の値に応答して前
記トランザクション・オブジェクトをローカルに作成す
るステップを含んでいることを特徴とする、前記コンピ
ュータ・プログラム製品。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9800830.3 | 1998-01-16 | ||
GB9800830A GB2333379A (en) | 1998-01-16 | 1998-01-16 | Client/server computing |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11265362A true JPH11265362A (ja) | 1999-09-28 |
JP3548030B2 JP3548030B2 (ja) | 2004-07-28 |
Family
ID=10825335
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP00011899A Expired - Fee Related JP3548030B2 (ja) | 1998-01-16 | 1999-01-04 | サーバ処理装置及びサーバ処理方法 |
Country Status (10)
Country | Link |
---|---|
US (1) | US6301606B1 (ja) |
EP (1) | EP1046107B1 (ja) |
JP (1) | JP3548030B2 (ja) |
KR (1) | KR100403659B1 (ja) |
CN (1) | CN1143207C (ja) |
DE (1) | DE69806065T2 (ja) |
GB (1) | GB2333379A (ja) |
IL (1) | IL136582A0 (ja) |
PL (1) | PL193583B1 (ja) |
WO (1) | WO1999036853A1 (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7213049B2 (en) * | 2001-07-17 | 2007-05-01 | Bea Systems, Inc. | System and method for transaction processing with transaction property feature |
WO2003063009A1 (en) * | 2002-01-18 | 2003-07-31 | Bea Systems, Inc. | System, method and interface for controlling server lifecycle |
US7805333B2 (en) * | 2003-02-14 | 2010-09-28 | Ds-Iq, Inc. | Techniques for using loyalty cards and redeeming accumulated value |
US9110712B2 (en) * | 2005-06-10 | 2015-08-18 | International Business Machines Corporation | Method for encapsulating logical units of work using business objects |
CN100410884C (zh) * | 2005-09-06 | 2008-08-13 | 大连海事大学 | 一种基于pid思想的小组协同处理事务的事务分配方法 |
KR100813013B1 (ko) * | 2007-05-29 | 2008-03-13 | 주식회사 비투엔컨설팅 | 오디엑스 데이타를 이용한 트랜잭션 처리 소프트웨어프레임 웍 |
US9485322B2 (en) | 2007-07-07 | 2016-11-01 | Qualcomm Incorporated | Method and system for providing targeted information using profile attributes with variable confidence levels in a mobile environment |
US9392074B2 (en) | 2007-07-07 | 2016-07-12 | Qualcomm Incorporated | User profile generation architecture for mobile content-message targeting |
US20090124241A1 (en) | 2007-11-14 | 2009-05-14 | Qualcomm Incorporated | Method and system for user profile match indication in a mobile environment |
US20090157512A1 (en) | 2007-12-14 | 2009-06-18 | Qualcomm Incorporated | Near field communication transactions with user profile updates in a mobile environment |
US9984096B2 (en) * | 2015-03-31 | 2018-05-29 | Oracle International Corporation | System and method for reducing communications overhead in a distributed transactions environment by modifying implementation of the transaction start function |
CN112767158A (zh) * | 2018-02-27 | 2021-05-07 | 创新先进技术有限公司 | 基于区块链的交易执行方法及装置、电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5089954A (en) * | 1988-08-08 | 1992-02-18 | Bell Communications Research, Inc. | Method for handling conversational transactions in a distributed processing environment |
JPH0916453A (ja) * | 1995-06-23 | 1997-01-17 | Internatl Business Mach Corp <Ibm> | 同期システム及び同期方法 |
WO1997040457A2 (en) * | 1996-04-19 | 1997-10-30 | Intergraph Corporation | System and method for data access |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3365576B2 (ja) * | 1993-06-14 | 2003-01-14 | インターナショナル・ビジネス・マシーンズ・コーポレーション | オブジェクトの実行方法および装置 |
US5745748A (en) * | 1994-12-09 | 1998-04-28 | Sprint Communication Co. L.P. | System and method for direct accessing of remote data |
JPH08286962A (ja) * | 1994-12-16 | 1996-11-01 | Internatl Business Mach Corp <Ibm> | 処理システム及びオブジェクト活動化をスケジュールする方法 |
EP0737922B1 (en) * | 1995-03-22 | 2003-05-14 | Sun Microsystems, Inc. | Method and apparatus for managing computer processes |
JP3574231B2 (ja) * | 1995-08-21 | 2004-10-06 | 富士通株式会社 | 計算機ネットワークのシミュレータ装置 |
US5937415A (en) * | 1995-12-13 | 1999-08-10 | Sybase, Inc. | Data base development system with methods facilitating copying of data from one data source to another |
GB2308468A (en) * | 1995-12-20 | 1997-06-25 | Ibm | Data processing systems and methods providing interoperability between data processing resources |
JPH09198437A (ja) * | 1996-01-18 | 1997-07-31 | Hitachi Ltd | 電子認証の管理方法 |
US5761507A (en) * | 1996-03-05 | 1998-06-02 | International Business Machines Corporation | Client/server architecture supporting concurrent servers within a server with a transaction manager providing server/connection decoupling |
GB2311391A (en) * | 1996-03-19 | 1997-09-24 | Ibm | Restart and recovery of OMG compliant transaction systems |
US5933816A (en) * | 1996-10-31 | 1999-08-03 | Citicorp Development Center, Inc. | System and method for delivering financial services |
GB2320594A (en) * | 1996-12-20 | 1998-06-24 | Ibm | Dispatching client method calls to parallel execution threads within a server |
US5925095A (en) * | 1997-05-12 | 1999-07-20 | International Business Machines Corporation | Method and a computer program product for client/server computing with support for both recoverable and non-recoverable clients |
US5958004A (en) * | 1997-10-28 | 1999-09-28 | Microsoft Corporation | Disabling and enabling transaction committal in transactional application components |
US5890161A (en) * | 1997-10-28 | 1999-03-30 | Microsoft Corporation | Automatic transaction processing of component-based server applications |
-
1998
- 1998-01-16 GB GB9800830A patent/GB2333379A/en not_active Withdrawn
- 1998-06-09 US US09/094,042 patent/US6301606B1/en not_active Expired - Lifetime
- 1998-12-18 KR KR10-2000-7007505A patent/KR100403659B1/ko not_active IP Right Cessation
- 1998-12-18 IL IL13658298A patent/IL136582A0/xx not_active IP Right Cessation
- 1998-12-18 DE DE69806065T patent/DE69806065T2/de not_active Expired - Lifetime
- 1998-12-18 EP EP98961325A patent/EP1046107B1/en not_active Expired - Lifetime
- 1998-12-18 WO PCT/GB1998/003825 patent/WO1999036853A1/en not_active Application Discontinuation
- 1998-12-18 PL PL98341731A patent/PL193583B1/pl unknown
- 1998-12-30 CN CNB98125957XA patent/CN1143207C/zh not_active Expired - Lifetime
-
1999
- 1999-01-04 JP JP00011899A patent/JP3548030B2/ja not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5089954A (en) * | 1988-08-08 | 1992-02-18 | Bell Communications Research, Inc. | Method for handling conversational transactions in a distributed processing environment |
JPH0916453A (ja) * | 1995-06-23 | 1997-01-17 | Internatl Business Mach Corp <Ibm> | 同期システム及び同期方法 |
WO1997040457A2 (en) * | 1996-04-19 | 1997-10-30 | Intergraph Corporation | System and method for data access |
Also Published As
Publication number | Publication date |
---|---|
US6301606B1 (en) | 2001-10-09 |
CN1225471A (zh) | 1999-08-11 |
IL136582A0 (en) | 2001-06-14 |
PL193583B1 (pl) | 2007-02-28 |
GB9800830D0 (en) | 1998-03-11 |
PL341731A1 (en) | 2001-05-07 |
DE69806065D1 (de) | 2002-07-18 |
JP3548030B2 (ja) | 2004-07-28 |
WO1999036853A1 (en) | 1999-07-22 |
EP1046107B1 (en) | 2002-06-12 |
DE69806065T2 (de) | 2003-02-06 |
GB2333379A (en) | 1999-07-21 |
CN1143207C (zh) | 2004-03-24 |
EP1046107A1 (en) | 2000-10-25 |
KR20010024837A (ko) | 2001-03-26 |
KR100403659B1 (ko) | 2003-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5768587A (en) | Operating a transaction manager with a non-compliant resource manager | |
US5852732A (en) | Heterogeneous operations with differing transaction protocols | |
US6038589A (en) | Apparatus, method and computer program product for client/server computing with a transaction representation located on each transactionally involved server | |
GB2339933A (en) | Client/server computing with improved correspondence between transaction identifiers when supporting subordinate resource manager(s) | |
KR100322224B1 (ko) | 클라이언트/서버 컴퓨터 시스템에서 서버 내의 클라이언트 요청들의 디스패칭시에 시맨틱 동시 제어를 수행하는 장치 및 방법 | |
GB2327134A (en) | Lock requester arbitration in object oriented systems | |
JP3409308B2 (ja) | クライアント/サーバ・コンピューティング・システム及びサーバ処理方法 | |
US6374283B1 (en) | Apparatus, method & computer program product for client/server computing with client selectable location of transaction objects | |
JP3548030B2 (ja) | サーバ処理装置及びサーバ処理方法 | |
US6138169A (en) | System and method for creating an object oriented transaction service that achieves interoperability with encina procedural transactions | |
US6237018B1 (en) | Apparatus method and computer program product for client/server computing with improved transactional interface | |
JP3628577B2 (ja) | サーバ・データ処理装置、操作方法および記憶装置 | |
GB2346990A (en) | Client/server transaction processing system with automatic distributed co-ordinator set-up into a linear chain for use of linear commit optimisation | |
US6324589B1 (en) | Apparatus, method and computer program product for client/server computing with reduced cross-process calls | |
GB2335516A (en) | Failure recovery in distributed transaction avoids heuristic damage | |
US6829632B1 (en) | Apparatus, method and computer program product for client/server computing with timing of creation of coordinator transaction state object being based on triggering events | |
GB2330431A (en) | Client/server computing with failure detection | |
GB2339621A (en) | Client/server computing system provides extension to basic transaction service | |
CZ20002585A3 (cs) | Zařízení, způsob a produkt počítačového programu pro výpočetní operace klient/server s inteligentním hledáním transakčních objektů |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20040406 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040415 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080423 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080423 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090423 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090423 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100423 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110423 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110423 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120423 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130423 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130423 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140423 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |