JP6563807B2 - 情報処理システム、情報処理装置、処理制御方法、及び処理制御プログラム - Google Patents
情報処理システム、情報処理装置、処理制御方法、及び処理制御プログラム Download PDFInfo
- Publication number
- JP6563807B2 JP6563807B2 JP2015254619A JP2015254619A JP6563807B2 JP 6563807 B2 JP6563807 B2 JP 6563807B2 JP 2015254619 A JP2015254619 A JP 2015254619A JP 2015254619 A JP2015254619 A JP 2015254619A JP 6563807 B2 JP6563807 B2 JP 6563807B2
- Authority
- JP
- Japan
- Prior art keywords
- processing
- identification information
- request
- information
- transaction
- 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.)
- Active
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
前記情報処理装置は、前記中継装置から前記生成リクエストを受信した際、自己の識別情報と処理識別情報とを生成する識別情報生成手段と、前記中継装置から前記処理実行リクエストを受信した際、前記処理実行リクエストに含まれる識別情報が、自己の識別情報であるか否かを判定する処理対象判定手段と、前記処理対象判定手段による判定結果、前記自己の識別情報でない場合に、対象の情報処理装置に前記処理実行リクエストを送信する処理実行手段とを有する。
図1は、情報処理システムの概略構成の一例を示す図である。図1に示す情報処理システム10は、ユーザ端末11と、分散サーバ12と、複数のアプリケーションサーバ13−1〜13−n(以下、必要に応じて「アプリケーションサーバ13」という)と、記憶装置の一例としてのデータベース(以下、必要に応じて「DB」という)とを有する。ユーザ端末11と、分散サーバ12とは、インターネットやLAN(Local Area Network)等に代表される通信ネットワーク15−1によりデータの送受信が可能な状態で接続されている。また、分散サーバ12とアプリケーションサーバ13とは、同様の通信ネットワーク15−2によりデータの送受信が可能な状態で接続されている。通信ネットワーク15−1及び通信ネットワーク15−2は、同一のネットワークでもよい。
図2は、ユーザ端末の機能構成例を示す図である。図2の例において、ユーザ端末11は、入力手段21と、出力手段22と、記憶手段23と、識別情報要求手段24と、識別情報取得手段25と、処理要求手段26と、処理結果取得手段27と、通信手段28と、制御手段29とを有する。
次に、上述した情報処理システム10におけるアプリケーションサーバ13機能構成例について、図を用いて説明する。図3は、アプリケーションサーバの機能構成の一例を示す図である。図3の例において、アプリケーションサーバ13は、入力手段31と、出力手段32と、記憶手段33と、識別情報生成手段34と、処理対象判定手段35と、処理実行手段36と、通信手段37と、制御手段38とを有する。
次に、上述したユーザ端末11及びアプリケーションサーバ13におけるハードウェア構成例について図を用いて説明する。図4は、ハードウェア構成の一例を示す図である。図4の例において、ユーザ端末11及びアプリケーションサーバ13等に適用される情報処理装置(コンピュータ)は、入力装置41と、出力装置42と、ドライブ装置43と、補助記憶装置44と、主記憶装置45と、CPU46と、通信制御装置47とを有し、これらはシステムバスBで相互に接続されている。
次に、本実施形態におけるDBトランザクション処理について、シーケンス図を用いて説明する。
図5は、本実施形態におけるDBトランザクション処理の第1の実施例を示すシーケンス図である。図5の例においては、説明の便宜上、ユーザ端末11と、分散サーバ12と、2つのアプリケーションサーバ13−1,13−2を用いて説明するが、アプリケーションサーバの数等については、これに限定されるものではない。
図6は、本実施形態におけるDBトランザクション処理の第2の実施例を示すシーケンス図である。図6の例においても、図5と同様にユーザ端末11と、分散サーバ12と、2つのアプリケーションサーバ13−1,13−2を用いて説明するが、アプリケーションサーバの数等については、これに限定されるものではない。
ここで、上述した本実施形態におけるDBトランザクション処理の具体例について、説明する。
「SELECT ZAIKO_COUNT FROM ITEM WHERE ITEM_ID=1 FOR UPDATE」(処理A)
また、生成したトランザクションにて、以下のSQLを実行するものとする。
「UPDATE ITEM SET ZAIKO_COUNT = 99 WHERE ITEM_ID=1」(処理B)
更に、ユーザ端末は、生成したトランザクションをコミットする(処理C)。ここで、アプリケーションサーバ13として、2つのアプリケーションサーバ13−1,13−2を有する場合、例えば以下のような順序で処理が行われる。
(1)アプリケーションサーバ13−1が、トランザクション生成リクエストを受け取る。アプリケーションサーバ13−1は、DB14とのトランザクションを生成し、それを表すID(トランザクションID)として「TX1」を割り当てる。また、アプリケーションサーバ13−1は、自己の装置を表す文字列(APP1)と、トランザクションIDとを、自己のテーブル(記憶手段33又はDB14)に保存する。また、アプリケーションサーバ13−1は、装置識別情報の文字列(APP1)と、トランザクションIDとを結合した「APP1_TX1」をユーザ端末11に送信する。なお、「APP1_TX1」は、装置の識別情報を含めたトランザクションIDと言い換えることもでき、トランザクションIDを含めた装置の識別情報と言い換えることもできる。
(2)次に、ユーザ端末11は、上述した「APP1_TX1」を取得し、トランザクションにてSQL(例えば、上述の処理A)を実行するリクエストに、取得した「APP1_TX1」を付加して、分散サーバ12に送信する。
(3)アプリケーションサーバ13−1は、アプリケーションサーバ13−2から受け取ったリクエストに含まれる「APP1_」の部分を見て自分の処理対象のリクエストであると判断し、「TX1」を割り当てたトランザクションにてSQLを実行し、その結果をアプリケーションサーバ13−2に返す。
(4)その後、アプリケーションサーバ13−2は、アプリケーションサーバ13−1からのレスポンス(処理実行結果)をユーザ端末11へのレスポンスとして、分散サーバ12を介して、対象のユーザ端末11に送信する。
(5)次に、ユーザ端末11は、トランザクションにてSQL(例えば、上述の処理B)を実行するリクエストに「APP1_TX1」を付加して分散サーバ12に送信する。分散サーバ12による振り分け処理により、このリクエストを、例えばアプリケーションサーバ13−1が受け取ったとする。アプリケーションサーバ13−1は、リクエストに含まれる「APP1_」の部分を見て自分の担当であることを判断し、「TX1」を割り当てたトランザクションにてSQLを実行し、そのレスポンスを分散サーバ12を介してユーザ端末11に送信する。
(6)次に、ユーザ端末11は、トランザクションをコミットするリクエスト(例えば、上述の処理C)に、「APP1_TX1」を含めて分散サーバ12に送信する。分散サーバ12による振り分け処理により、このリクエストを、例えばアプリケーションサーバ13−2が受け取ったとする。この場合、上述した処理Aのときの処理と同様、アプリケーションサーバ13−2は、これがアプリケーションサーバ13−1の担当であると判断し、同じリクエストをアプリケーションサーバ13−1に送信する。アプリケーションサーバ13−1は「TX1」に割り当てたトランザクションをコミットし、その結果をアプリケーションサーバ13−2に送信する。その後、アプリケーションサーバ13−2は、アプリケーションサーバ13−1から受け取った結果(レスポンス)を分散サーバ12を介してユーザ端末11に送信する。なお、上述した処理Cにおいて、レスポンスの結果から処理A又は処理Bのトランザクションが正常に終了しなかった場合には、コミットではなく、ロールバックする処理を行ってもよい。
次に、アプリケーションサーバ13又はDB14に保存して、管理されるテーブル例(データ例)について、図を用いて説明する。図7は、アプリケーションサーバ又はDB内で管理されるテーブルの一例を示す図である。図7の例において、アプリケーションサーバ13又はDB14内で管理されるテーブルの項目としては、例えば「装置ID」、「トランザクションID」、「処理番号」、「フラグ」等であるがこれに限定されるものではない。
上述したトランザクション処理は、DB14を対象にしているが、本実施形態では、これに限定されるものではない。例えば、DBトランザクションに限らず、特定のサーバでしかアクセスできないリソース(例えば、ファイル)に関するリクエストを処理したい場合等にも適用することができる。
上述したように、本発明によれば、複数の情報処理装置を用いた場合であっても適切なトランザクション処理(例えば、DBに対するトランザクション処理又はリソースに対する処理を含む)を実現することができる。また、上述した本実施形態によれば、既存の分散サーバ12やDB14のプログラムは修正せずに、アプリケーションサーバ13の機能を追加することで、適切なトランザクション処理を実現することができる。
11 ユーザ端末(情報処理装置の一例)
12 分散サーバ(中継装置の一例)
13 アプリケーションサーバ(情報処理装置の一例)
14 DB
15 通信ネットワーク
21,31 入力手段
22,32 出力手段
23,33 記憶手段
24 識別情報要求手段
25 識別情報取得手段
26 処理要求手段
27 処理結果取得手段
28,37 通信手段
29,38 制御手段
34 識別情報生成手段
35 処理対象判定手段
36 処理実行手段
41 入力装置
42 出力装置
43 ドライブ装置
44 補助記憶装置
45 主記憶装置
46 CPU
47 通信制御装置
48 記録媒体
Claims (8)
- ユーザ端末と、該ユーザ端末からの処理実行リクエストに対する処理を実行する複数の情報処理装置と、前記複数の情報処理装置に対して前記処理実行リクエストを振り分けて前記処理を分散させる中継装置とを有する情報処理システムにおいて、
前記ユーザ端末は、
前記複数の情報処理装置に対して前記処理実行リクエストを実行する情報処理装置の識別情報の生成リクエストを前記中継装置に送信する識別情報要求手段と、
前記識別情報要求手段により得られる前記識別情報を前記処理実行リクエストに付加して前記中継装置に送信する処理要求手段とを有し、
前記情報処理装置は、
前記中継装置から前記生成リクエストを受信した際、自己の識別情報と処理識別情報とを生成する識別情報生成手段と、
前記中継装置から前記処理実行リクエストを受信した際、前記処理実行リクエストに含まれる識別情報が、自己の識別情報であるか否かを判定する処理対象判定手段と、
前記処理対象判定手段による判定結果、前記自己の識別情報でない場合に、対象の情報処理装置に前記処理実行リクエストを送信する処理実行手段とを有することを特徴とする情報処理システム。 - 前記処理実行手段は、
前記対象の情報処理装置からの実行結果を取得し、取得した結果を前記中継装置を介して前記ユーザ端末に送信することを特徴とする請求項1に記載の情報処理システム。 - 前記処理実行手段は、
前記処理対象判定手段による判定結果、前記自己の識別情報である場合に、前記処理実行リクエストを実行することを特徴とする請求項1又は2に記載の情報処理システム。 - 前記処理要求手段は、前記処理実行リクエストに処理番号を付加して送信し、
前記処理実行手段は、前記処理番号に対応させた順序で、前記処理実行リクエストを実行することを特徴とする請求項1乃至3の何れか1項に記載の情報処理システム。 - 前記処理実行リクエストは、
データベースに対するトランザクション処理又はリソースに対する処理を含むことを特徴とする請求項1乃至4の何れか1項に記載の情報処理システム。 - 中継装置から得られるユーザ端末からの処理実行リクエストに対する処理を実行する情報処理装置において、
前記中継装置から自己の識別情報の生成リクエストを受信した場合に、自己の識別情報と処理識別情報とを生成する識別情報生成手段と、
前記中継装置から前記処理実行リクエストを受信した際、前記処理実行リクエストに含まれる識別情報が、自己の識別情報であるか否かを判定する処理対象判定手段と、
前記処理対象判定手段による判定結果、前記自己の識別情報でない場合に、対象の情報処理装置に前記処理実行リクエストを送信する処理実行手段とを有することを特徴とする情報処理装置。 - 中継装置から得られるユーザ端末からの処理実行リクエストに対する処理を実行する情報処理装置における処理制御方法において、
前記中継装置から自己の識別情報の生成リクエストを受信した場合に、自己の識別情報と処理識別情報とを生成する識別情報生成ステップと、
前記中継装置から前記処理実行リクエストを受信した際、前記処理実行リクエストに含まれる識別情報が、自己の識別情報であるか否かを判定する処理対象判定ステップと、
前記処理対象判定ステップによる判定結果、前記自己の識別情報でない場合に、対象の情報処理装置に前記処理実行リクエストを送信する処理実行ステップとを有することを特徴とする処理制御方法。 - 中継装置から得られるユーザ端末からの処理実行リクエストに対する処理を実行する処理制御プログラムにおいて、
コンピュータを、
前記中継装置から自己の識別情報の生成リクエストを受信した場合に、自己の識別情報と処理識別情報とを生成する識別情報生成手段、
前記中継装置から前記処理実行リクエストを受信した際、前記処理実行リクエストに含まれる識別情報が、自己の識別情報であるか否かを判定する処理対象判定手段、及び、
前記処理対象判定手段による判定結果、前記自己の識別情報でない場合に、対象の情報処理装置に前記処理実行リクエストを送信する処理実行手段として機能させるための処理制御プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015254619A JP6563807B2 (ja) | 2015-12-25 | 2015-12-25 | 情報処理システム、情報処理装置、処理制御方法、及び処理制御プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015254619A JP6563807B2 (ja) | 2015-12-25 | 2015-12-25 | 情報処理システム、情報処理装置、処理制御方法、及び処理制御プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017117355A JP2017117355A (ja) | 2017-06-29 |
JP6563807B2 true JP6563807B2 (ja) | 2019-08-21 |
Family
ID=59234533
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015254619A Active JP6563807B2 (ja) | 2015-12-25 | 2015-12-25 | 情報処理システム、情報処理装置、処理制御方法、及び処理制御プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6563807B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112162846B (zh) | 2020-11-27 | 2021-04-09 | 腾讯科技(深圳)有限公司 | 事务处理方法、设备及计算机可读存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4208556B2 (ja) * | 2002-11-27 | 2009-01-14 | 富士通株式会社 | 中継装置 |
WO2009034994A1 (ja) * | 2007-09-13 | 2009-03-19 | Nec Corporation | 負荷分散システム、サービス処理サーバ、負荷分散方法及び負荷分散プログラム |
JP5458688B2 (ja) * | 2009-03-19 | 2014-04-02 | 富士通株式会社 | 一意性保証支援プログラム、サービス提供システム、及び一意性保証実現方法 |
JP5338555B2 (ja) * | 2009-08-11 | 2013-11-13 | 富士通株式会社 | 負荷分散装置、負荷分散方法および負荷分散プログラム |
JP6204256B2 (ja) * | 2014-04-23 | 2017-09-27 | 日本電信電話株式会社 | 分散処理システム、分散データ管理装置および分散データ管理方法 |
WO2016104537A1 (ja) * | 2014-12-24 | 2016-06-30 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 負荷分散装置、負荷分散方法及びプログラム |
-
2015
- 2015-12-25 JP JP2015254619A patent/JP6563807B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017117355A (ja) | 2017-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11829742B2 (en) | Container-based server environments | |
US11032140B2 (en) | Using a template to update a stack of resources | |
US10491700B2 (en) | Application managed service instances | |
US9348709B2 (en) | Managing nodes in a distributed computing environment | |
US20190034460A1 (en) | Co-locating Microservice Persistence Containers within Tenant-Specific Database | |
US11463509B2 (en) | Rolling capacity upgrade control | |
TW201229795A (en) | Web service patterns for globally distributed service fabric | |
US10832309B2 (en) | Inventory data model for large scale flash sales | |
US10838798B2 (en) | Processing system for performing predictive error resolution and dynamic system configuration control | |
WO2018035799A1 (zh) | 数据查询方法、应用和数据库服务器、中间件及系统 | |
US20190187968A1 (en) | Distribution and execution of instructions in a distributed computing environment | |
JP2016508349A (ja) | クラスタ境界にわたるサービス移行 | |
US10558449B2 (en) | Distribution and execution of instructions in a distributed computing environment | |
CN106302640A (zh) | 数据请求处理方法及装置 | |
US8930518B2 (en) | Processing of write requests in application server clusters | |
US20220382601A1 (en) | Configuration map based sharding for containers in a machine learning serving infrastructure | |
US11275601B2 (en) | System and method for auto recovery of deleted virtual machines identified through comparison of virtual machine management application snapshots and having corresponding backups at a storage device | |
US20200012520A1 (en) | Methods for scheduling multiple batches of concurrent jobs | |
WO2018188607A1 (zh) | 流处理方法及装置 | |
JP6563807B2 (ja) | 情報処理システム、情報処理装置、処理制御方法、及び処理制御プログラム | |
US9600271B2 (en) | System, method, and computer-readable medium | |
JP2017515236A (ja) | ハードディスクがアプリケーションコードを実行するための方法および装置 | |
JP2017123040A (ja) | サーバー装置、分散ファイルシステム、分散ファイルシステム制御方法、および、プログラム | |
JP6568232B2 (ja) | 計算機システム、及び、装置の管理方法 | |
US12081625B2 (en) | Session based data persistency |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180921 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190618 |
|
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: 20190723 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190725 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6563807 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |