JP2008047096A - キューイングを行うコンピュータシステム、方法、及びプログラム - Google Patents

キューイングを行うコンピュータシステム、方法、及びプログラム Download PDF

Info

Publication number
JP2008047096A
JP2008047096A JP2007137469A JP2007137469A JP2008047096A JP 2008047096 A JP2008047096 A JP 2008047096A JP 2007137469 A JP2007137469 A JP 2007137469A JP 2007137469 A JP2007137469 A JP 2007137469A JP 2008047096 A JP2008047096 A JP 2008047096A
Authority
JP
Japan
Prior art keywords
cluster
queue
probability value
request
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.)
Granted
Application number
JP2007137469A
Other languages
English (en)
Other versions
JP5050649B2 (ja
Inventor
Cheng-Jia Lai
ライ チェン−チャ
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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
Priority claimed from US11/504,314 external-priority patent/US7730186B2/en
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Publication of JP2008047096A publication Critical patent/JP2008047096A/ja
Application granted granted Critical
Publication of JP5050649B2 publication Critical patent/JP5050649B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】クラスタ環境においてキューイングを行うコンピュータシステム、方法、プログラムを提供する。
【解決手段】本発明のコンピュータシステム(100)は、少なくとも1つのサーバ(104)及び第1キュー(102)を備えると共にサービス要求(103)に応じてサービスを提供するように動作可能な第1クラスタ(101)と、第2キューを備えると共にサービス要求に応じてサービスを提供するように動作可能な第2クラスタとを備える。第1クラスタは、サービス要求を受信し、第1クラスタにアイドルサーバがあるかどうか判別し、第1クラスタにアイドルサーバがある場合には、このアイドルサーバに受信した要求を割り当て、第1クラスタにアイドルサーバがない場合には、少なくとも第1確率値に基づいたアルゴリズムに従って、受信した要求を第1キューに入れるか、或いは、受信した要求を第2クラスタに転送するように動作可能である。
【選択図】図1

Description

本発明は、コンピュータのネットワーク化に関し、より具体的には、コンピュータのクラスタ環境におけるキューイングに関する。即ち、本発明は、このようなキューイングを行うコンピュータシステム、方法、及びプログラムに関する。
グリッド及びクラスタコンピューティングを用いる分散システムにおいて計算量の多いタスクを処理するには、負荷バランシングがますます重要な問題となってきた。1990年代からこのような分散システムの使用が増加したのには、いくつかの理由がある。まず、科学者たちは、並列アルゴリズムを効果的に用いることにより、複数のワークステーション及びパーソナルコンピュータにおいて、スーパーコンピュータと同じぐらいの速さで、複雑な計算タスクを処理することができるようになった。スーパーコンピュータは卓越した計算力を備えるとこれまでは考えられてきたが、1台のスーパーコンピュータを購入するよりも複数のワークステーション及びパーソナルコンピュータを共用した方がはるかにコストは安い。2番目に、インターネット、無線ネットワーク、及びモバイルコンピューティングが急成長したことによって、データ及びユーザの場所が分散しているために分散コンピューティング環境を必要とするアプリケーションが多数生じた。最後に重要なことであるが、インターネットのような広域ネットワークではユーザの数が急激に増加し得るので、短時間でサーバに高負荷がかかる可能性があり、そうすると、サーバは「ホットスポット」となって、キューにおけるユーザ要求の待ち時間が大幅に長くなることにより、ユーザに対する平均サービス時間が非合理的に増加する。
従って、グリッド及びクラスタコンピューティング環境では、1種類のユーザ要求を処理するのに複数個(複数インスタンス)のサーバがインストールされており、これをサーバプール若しくはクラスタと呼ぶことがある。クラスタにおけるサーバはいずれも、計算タスクである要求を処理することができ、要求はそれを処理するのに使用可能な1つのサーバが割り当てられるまで、キューに並んでいなければならない。このクラスタに使用可能なサーバがない場合、その要求を別のクラスタに転送することは可能であるが、これらのクラスタをネットワーク化することは、効率、スケーラビリティ(拡張可能性)、及びセキュリティの点で困難である。例えば2004年には、世界的に、37,790のホストを含む956のコンドルプール(Condor pool:計算資源、即ちサーバのホストコンピュータのクラスタ)があった。伝えられるところによると、グーグル(Google)(登録商標)のようなサービスプロバイダは、そのクラスタに約10万台のコンピュータを備えている。2005年12月8日の報告によると、グリッド(Grid)は、世界に、350万台のコンピュータデバイス及び130万人のメンバーを包含している。
非特許文献1〜非特許文献3には、このような従来のグリッド・クラスタコンピューティング技術が記載されている。また非特許文献4には、従来のキューイング技術が記載されている。
一般的には、待ち行列理論において広く研究されてきたように、複数のサーバに対して共通キューを用いる方が、1つのサーバに対してそれぞれ別個のキューを用いるよりも効率が良い。その理由は、共通キューによれば、キューが空でない(即ち、要求が待っている)ときは常に、いずれのアイドルサーバにもタスクを割り当てることができるからである。しかしながら、サーバがネットワーク上の地理的に分散した場所(即ち、別々のクラスタ)にインストールされている場合(特に、イントラネットが地球上の複数の場所に及ぶ世界的ビジネスの場合)、このような共通キューを実施することは実際には非常に困難である。例えば、コンドルプールは、フロッキング(flocking)及びグライディングイン(gliding in)を用いて、クラスタ外部にある使用可能なサーバを探し出すが、世界的ネットワークではスケーラビリティ及び性能に限りがある。
従って、従来のキューイング技法では、サーバの共同クラスタ用の共通キューを作成するスケーラブル(拡張可能)なキューイングアルゴリズムを提供することができない。
IAN FOSTER, et al., "Computational Grids", Chapter 2 of The Grid: Blueprint for a New Computing Infrastructure, Morgan-Kaufman, 1999(イアン・フォスター他著「コンピュータグリッド」、『グリッド:新しいコンピュータインフラの青写真』第2章、モーガン−カウフマン版、1999年) Shouji Ogura, et al., "Evaluation of the inter-cluster data transfer on Grid environment", Proceedings of the 3rd IEEE/ACM Int'l Symposium on Cluster Computing on the Grid, IEEE Computer Science, 2003(小倉章嗣他著「グリッド環境におけるクラスタ間データ転送の評価」、第3回IEEE/ACMグリッドにおけるクラスタコンピューティングに関する国際シンポジウム会報、IEEEコンピュータサイエンス、2003年) Sang-Min Park, et al., "Chameleon: A Resource Scheduler in A Data Grid Environment*", Proceedings of the 3rd IEEE/ACM Int'l Symposium on Cluster Computing on the Grid, IEEE Computer Science, 2003(サンミン・パク他著「カメレオン:データグリッド環境におけるリソーススケジューラ」、第3回IEEE/ACMグリッドにおけるクラスタコンピューティングに関する国際シンポジウム会報、IEEEコンピュータサイエンス、2003年) Peterson Davie, "Queuing Disciplines", Chapter 6 of Computer Networks: A System Approach, pgs. 457-464, Morgan Kaufman, San Francisco, 2000(ピーターソン・デヴィー著「キューイング統御」、『コンピュータネットワーク:システムアプローチ』第6章、457〜464ページ、モーガン−カウフマン版、サンフランシスコ、2000年)
本発明の手法は、従来のキューイング技法に関する上記及びその他の問題のうちの1つ以上を実質的に取り除くシステム、方法、及びプログラムを提供する。
本発明の請求項1に係る発明は、a.少なくとも1つのサーバ及び第1キューを備えると共に、サービス要求に応じてサービスを提供するように動作可能な、第1クラスタと、b.第2キューを備えると共に、サービス要求に応じてサービスを提供するように動作可能な、第2クラスタと、を備える、コンピュータシステムであって、前記第1クラスタが、i. サービス要求を受信し、ii. 前記第1クラスタにアイドルサーバがあるかどうか判別し、iii.前記第1クラスタにアイドルサーバがある場合には、該アイドルサーバに前記受信した要求を割り当て、iv. 前記第1クラスタにアイドルサーバがない場合には、少なくとも第1確率値に基づいたアルゴリズムに従って、前記受信した要求を前記第1キューに入れるか、又は前記受信した要求を前記第2クラスタに転送するように動作可能であることを特徴とする。
本発明の請求項2に係る発明は、請求項1のシステムにおいて、前記第1確率値が、前記第1キューに待機しているサービス要求の数に基づいて決定されることを特徴とする。
本発明の請求項3に係る発明は、請求項1のシステムにおいて、前記第1確率値が、前記第1クラスタにおけるサーバの数に基づいて決定されることを特徴とする。
本発明の請求項4に係る発明は、請求項1のシステムにおいて、前記第1確率値が、前記第1キューに待機しているサービス要求の数及び前記第1クラスタにおけるサーバの数に基づいて決定されることを特徴とする。
本発明の請求項5に係る発明は、請求項1のシステムにおいて、前記アルゴリズムが、少なくとも前記第2キューに待機しているサービス要求の数に基づいて決定された第2確率値に更に基づいていることを特徴とする。
本発明の請求項6に係る発明は、請求項1のシステムにおいて、前記第1クラスタの前記第1キューと前記第2クラスタの前記第2キューとの間のリンクをさらに備えることを特徴とする。
本発明の請求項7に係る発明は、請求項1のシステムにおいて、前記第1クラスタが、ローカル状態情報を前記第2クラスタに定期的に提供するように動作可能であることを特徴とする。
本発明の請求項8に係る発明は、請求項7のシステムにおいて、前記ローカル状態情報が、前記第1確率値を含むことを特徴とする。
本発明の請求項9に係る発明は、請求項8のシステムにおいて、前記ローカル状態情報が、下の式で表される第2確率値を更に含み、
Figure 2008047096
式中、Pkは前記第1確率値であり、Φkは前記第1クラスタの隣接クラスタのセットであることを特徴とする。
本発明の請求項10に係る発明は、少なくとも1つのクラスタ化されたサーバを含むシステムにおけるキューイング方法であって、a.第1キューを備える第1クラスタにおいてサービス要求を受信し、b.前記第1クラスタにアイドルサーバがあるかどうか判別し、c.前記第1クラスタにアイドルサーバがある場合には、該アイドルサーバに前記受信した要求を割り当て、d.前記第1クラスタにアイドルサーバがない場合には、少なくとも第1確率値に基づいたアルゴリズムに従って、前記受信した要求を前記第1キューに入れるか、又は前記受信した要求を第2クラスタに転送することを特徴とする。
本発明の請求項11に係る発明は、請求項10の方法において、前記第1確率値が、前記第1キューに待機しているサービス要求の数に基づいて決定されることを特徴とする。
本発明の請求項12に係る発明は、請求項10の方法において、前記第1確率値が、前記第1クラスタにおけるサーバの数に基づいて決定されることを特徴とする。
本発明の請求項13に係る発明は、請求項10の方法において、前記第1確率値が、前記第1キューに待機しているサービス要求の数及び前記第1クラスタにおけるサーバの数に基づいて決定されることを特徴とする。
本発明の請求項14に係る発明は、請求項10の方法において、前記アルゴリズムが、少なくとも第2キューに待機しているサービス要求の数に基づいて決定された第2確率値に更に基づいていることを特徴とする。
本発明の請求項15に係る発明は、請求項10の方法において、ローカル状態情報を前記第2クラスタに定期的に提供することを更に含むことを特徴とする。
本発明の請求項16に係る発明は、請求項15の方法において、前記ローカル状態情報が、前記第1確率値を含むことを特徴とする。
本発明の請求項17に係る発明は、請求項16の方法において、前記ローカル状態情報が、下の式で表される第2確率値を更に含み、
Figure 2008047096
式中、Pkは前記第1確率値であり、Φkは前記第1クラスタの隣接クラスタのセットであることを特徴とする。
本発明の請求項18に係る発明は、少なくとも1つのクラスタ化されたサーバを含むシステムにおいて、コンピュータにキューイング処理を実行させるためのコードを含むプログラムであって、前記コードは、a.第1キューを備える第1クラスタにおいてサービス要求を受信し、b.前記第1クラスタにアイドルサーバがあるかどうか判別し、前記第1クラスタにアイドルサーバがある場合には、該アイドルサーバに前記受信した要求を割り当て、前記第1クラスタにアイドルサーバがない場合には、少なくとも第1確率値に基づいたアルゴリズムに従って、前記受信した要求を前記第1キューに入れるか、又は前記受信した要求を第2クラスタに転送すること、を含む処理をコンピュータに実行させることを特徴とする。
本発明の請求項19に係る発明は、請求項18のプログラムにおいて、前記第1確率値が、前記第1キューに待機しているサービス要求の数に基づいて決定されることを特徴とする。
本発明の請求項20に係る発明は、請求項18のプログラムにおいて、前記第1確率値が、前記第1クラスタにおけるサーバの数に基づいて決定されることを特徴とする。
本発明の請求項21に係る発明は、請求項18のプログラムにおいて、前記第1確率値が、前記第1キューに待機しているサービス要求の数及び前記第1クラスタにおけるサーバの数に基づいて決定されることを特徴とする。
本発明の請求項22に係る発明は、請求項18のプログラムにおいて、前記アルゴリズムが、少なくとも第2キューに待機しているサービス要求の数に基づいて決定された第2確率値に更に基づいていることを特徴とする。
本発明の請求項23に係る発明は、請求項18のプログラムにおいて、ローカル状態情報を前記第2クラスタに定期的に提供する処理を更にコンピュータに実行させることを特徴とする。
本発明の請求項24に係る発明は、請求項23のプログラムにおいて、前記ローカル状態情報が、前記第1確率値を含むことを特徴とする。
本発明の請求項25に係る発明は、請求項24のプログラムにおいて、前記ローカル状態情報が、下の式で表される第2確率値を更に含み、
Figure 2008047096
式中、Pkは前記第1確率値であり、Φkは前記第1クラスタの隣接クラスタのセットであることを特徴とする。
本発明に関する更なる態様について、一部は以下の説明で述べられ、一部は以下の説明から明らかとなるか或いは本発明の実施により理解されるであろう。本発明の態様は、以下の詳細な説明及び添付の特許請求の範囲により特に示される原理、並びに、様々な原理と態様との組み合わせによって、実現され、達成され得る。
当然のことながら、上記及び下記記述は共に、単なる例示及び説明であり、いかなる形においても、特許請求の範囲に記載されている発明又はその特許出願を限定することを意図しない。
本発明によるシステム、方法、プログラムにより、複数のクラスタ間での共有キューを効率よく、かつ容易にシステムを拡張可能な形態で維持することができるという効果がある。
本明細書中に組み込まれ且つ本明細書の一部を構成する添付の図面は、本発明の実施形態を例示しており、以下の記述と共に、本発明の技法の原理を説明及び図示する機能を果たす。
以下の詳細な説明において、添付の図面を参照するが、これらの図面では、全く同一機能の要素は同じ参照番号で示されている。添付の図面は、限定の目的ではなく、例示の目的で、本発明の原理に従った具体的な実施形態及び実施例を示している。これらの実施例は、当業者が本発明を実施することができるように詳細に説明されており、当然のことながら、他の実施例を用いてもよく、本発明の範囲及び精神を逸脱しない限り、構造的な変更や様々な要素の置き換えを行ってもよい。従って、以下の詳細な説明は、限定された意味で解釈されるものではない。更に、説明する本発明の様々な実施形態は、汎用コンピュータで実行するソフトウェアの形態で実施されても、専用ハードウェアの形態で実施されても、ソフトウェアとハードウェアを組み合わせた形態で実施されてもよい。
本発明の手法の一態様は、サーバの連携クラスタ若しくはグリッド用の共通キューを実施するように設計された、高性能のキューイング方法及びシステムである。本発明の手法の一実施形態では、サーバの各クラスタがローカルキューを保持し、これらのキューがネットワーク化されることによって、これらのクラスタにおける全サーバ用の統一(若しくは共通)キューが形成される。過密なキューによって受信された受信サービス要求は、キューの長さ及び/又はその他の状態に応じて決定され且つ慎重に設定された確率を用いるランダムアルゴリズムに基づいて、他のキューへ転送される。本発明のシステムの一実施形態は、クラスタ間におけるサポートの優先順位を表すように動作可能な、ネットワークキュー間における定期的メッセージ交換アルゴリズムを備える。
当業者には理解されるように、本発明の手法によれば、ローカルキューがネットワーク化されてサポートの合意が行われ、これにより、サービスのグリッドが、事業提携に適応可能となると共に参加者の数に合わせて拡張可能となる。また、理解されるように、本発明のキューイング方法は、ローカル性認識(locality awareness)及び負荷バランスを備えた状態で、キュー間において要求を転送することができ、この方法によって、各クラスタは、ローカルで発生する要求を高速処理するためのローカルキューを、サーバファームのように低いオーバヘッドで保持することができる。
従って、本発明の概念の一実施形態によれば、連携されたサーバクラスタ用の共通キューを実施する、高性能のキューイング方法が提供される。サーバの各クラスタがローカルキューを保持すると同時に、これらのキューはネットワーク化されて、これらのクラスタにおける全サーバ用の統一(若しくは共通)キューが形成される。また、ランダムアルゴリズム及びネットワークキュー間におけるメッセージ交換アルゴリズムによって、過密キューにおける要求を他のキューへ転送する方法が提案される。
次に、本発明のキューイングシステム及び方法を、添付の図面を参照しながら詳細に説明する。図1を参照すると、本発明のシステム100は、クラスタ101にインストールされた複数インスタンスのサービスを含む。このシステム100において、各クラスタ101はキュー102を含み、受信したサービス要求103を保持する。当業者には理解されるように、本発明の概念は、クラスタ101によって提供されるいずれの特定タイプのサービスにも限定されない。このようなサービスは、あらゆる既知の若しくはこれから開発されるサービスプロトコル(例えば、HTTP、FTP、SOAP、SMTP、IMAP、POPなどが挙げられるが、これらに限定されない)によるサービスを含み得る。
クラスタ101はそれぞれ、前記サービスを提供するように動作可能な1つ以上のサーバ104を含む。これらのサーバ104は、高いサービスアベイラビリティ(サービス提供性)及び/又はフォールトトレランス(耐障害性)を提供する技法であれば、いずれの既知の若しくはこれから開発される技法を用いて、クラスタ101に構成されることができる。クラスタはそれぞれ、クライアント(図示省略)からのサービス要求を受信するように動作可能である。クラスタに向けられたこのようなサービス要求は、ローカルサービス要求と呼ばれる。本発明の概念によれば、クラスタ101のうちの1つによって受信されたローカルサービス要求は、この受信クラスタ101におけるアイドルサーバに割り当てられるか、この受信クラスタのキューに入れられるか、この受信クラスタによって別のクラスタ101へ転送される。
クラスタ101のうちの1つによってローカルサービス要求が受信された際、この受信クラスタ101内に使用可能な(即ち、アイドル状態の)サーバ104がまだ少なくとも1つある場合には、この使用可能なアイドルサーバのうちの1つがすぐに割り当てられ、受信された要求が処理される。逆に受信クラスタ内の全サーバ104が他の要求を処理するのに使用中である場合には、このクラスタ内のサーバ104のうちの1つがアイドル状態となるまで、要求103はこの受信クラスタ101のローカルキューに入れられる。或いは、受信された要求は、別のクラスタ101に転送されてもよく、この場合、この受信された要求は転送された別のクラスタ101において、アイドルサーバに割り当てるか、キュー102に入れるか、更に別のクラスタに転送されることができる。
本発明のシステムは、新しい要求103をキュー102に入れるのに確率アルゴリズムを用いることに注意されたい。具体的には、受信クラスタにアイドルサーバがない場合、要求は、ローカルキュー102の長さに応じて決定される確率により、受信クラスタのローカルキュー102の最後に追加される。そうでなければ、受信された要求103は、ネットワーク化された全てのキューの長さ及び/又はその他の状態によって決定される確率により、別のクラスタ101に属するネットワークキュー102に転送される。
以下の記載では、コンピュータシステム内における全く同一のクラスタ101には1、2…で始まる数字が付与されているものとする。本発明の概念の一実施形態によれば、クラスタkのローカルキューが要求を受け入れる確率Pkは、Nk(クラスタkのキューに待機しているその他のサービス要求の数)及びmk(クラスタkにおけるサーバ104の数)の関数である。一例としての実施形態では、このPkの値は以下のように計算される。
Figure 2008047096
本発明の概念の別の態様によれば、クラスタ101のネットワークキュー102は各々、隣接する一対のキュー間のリンクを保持する。このようなリンクは、クラスタのいずれかがそのキューに非常に多くの数の要求を急に受信したとき、2つのクラスタ101が最優先で互いに「サポート(支援)する」ように構成されている場合に作成される。要求103は、遠くのキューまでクラスタ101間を2回以上(即ち、複数のホップにわたり)転送することが可能であるため、直接的にリンクされていないキュー102であっても、それらのサーバ104をやはり共用することができることに留意されたい。
図2は、一例として、1つの要求がクラスタ101間を2回以上転送される構造を示している。図2は、一例としての要求の転送経路を示しており、要求はクラスタ101のキュー102−1〜102−k間を複数回にわたって転送される。この実施形態では、要求が訪れるk番目のキュー102−kは、その要求を受け入れて記憶するか、或いは、Pkによりその要求を次のキューへ転送するか、個別に判断する。具体的には、キュー102−1は確率P1でその要求を受け入れ、キュー102−2は確率P2で要求を受け入れる、という具合になる。
図3は、クラスタ101−kが要求103をそのキュー102−kに受け入れるかどうかを決定する決定過程301を示している。この決定過程は、以下の3つのステップを含む。まず、受信キュー102−kは確率Pkで、単純にその要求を受け入れる。そうでなければ、過程は第2ステップへ続き、この第2ステップでは、受信キュー102−kは、それに直接的にリンクされた隣接キューのうちの1つのみに、その要求を以下に説明するようにランダムに転送しようと試みる。本発明のシステムの一実施形態では、各キュー102は、その「ローカル状態」を全ての隣接キューと定期的に交換することに留意されたい。このローカル状態とは、そのキューに対する1組の数(Pk,Rk)であり、ここで、Pkは先に定義されたとおりであり、Rkは以下のように定義される。
Figure 2008047096
上記式において、Φkは、k番目のクラスタにおけるキュー102−kの全ての隣接キューのセットである。このキュー102−kが要求を転送しようと試みる場合、この要求は以下の式で表される確率で隣接キュー102−yへ転送される。
Figure 2008047096
上記式において、Ryは、キュー102−kが知っているキュー102−yの最新状態における値であり、|Φk|は、キュー102−kの隣接キューの数である。(1−Pk)で正規化するのは、キュー102−yに関して先に計算するRyに値Pkが関与しており、これを相殺すべきだからである。
最後に、前記第2ステップで要求103を転送しようとする試みが全て確率によって拒否された場合、この要求はk番目のキュー102−kに単に留まる。本発明の概念の一実施形態では、所定の時間が経つと、k番目のキュー102−kの長さが長いままで確率Pkが引き続き低い場合、このキュー102−kは要求103を再度転送しようとすることができる。
要求103は、現キューの負荷以外の理由(例えば、遠隔ユーザ認証の失敗や、序列ネゴシエーションの失敗)で、ローカルキューによって拒否されることもあることに留意されたい。実際には、このような要因によって、確率Pkはより小さくなる。しかし、当業者には理解されるように、このような追加の作用は本発明にとってそれほど重要なものではない。
以下に説明するように、要求103がより早い順序でクラスタ101を訪れるほど、且つ、クラスタ自体の受信要求を受け入れる確率がより高いほど、要求103はより高い確率でクラスタ101によって受け入れられる。更に、本発明の概念の一態様によれば、要求103が無限長経路(例えば、サイクル)で転送されることはまずない。
本発明の一実施形態を、シミュレーションによってテストした。このシミュレーションの結果によれば、ポアソン過程にユーザが出入りする動的環境では、作成された共通キューの方が分離キューよりも効率が良かったことが示された。このシミュレーションの結果は、オンザフライ(動的)キューの長さが短くなり、且つ、要求の平均待ち時間も短くなる、ということで目に見えるかたちで現れる。
当業者には理解されるように、本発明のランダム転送アルゴリズムによれば、要求は、最初の受信クラスタにより近く且つ確率がより高いキューによって確実に受け入れられる。これにより、必要とされる要求転送動作の数が最小限に抑えられる。以下の説明において、Qkは、要求がk番目に訪れたインスタンスによって受け入れられる確率を示している。k=1,2,3…という全ての値に関し、Qkの値は以下の式によって計算される。
Figure 2008047096
理想的な負荷バランシングアルゴリズムでは、全てのkに関してQk/Pk比率が同じになると推測され得るが、当業者には理解されるように、インスタンスの場所も重要な要素と考えるべきである。つまり、要求元に「より近い」インスタンスは、所定の同じ負荷を受け入れる確率も「より高い」。本発明の方法によれば、「負荷バランス」要件と「ローカル性認識」要件との両方が満たされる。
図3に示されている例としての実施形態では、Pkの値は、k番目に訪れたクラスタ101−kに関し、閉区間0〜0.6(平均0.3)からランダムに選択される。図4は、Pk、Qk、受け入れ率、及びkの関数であるQk/Pk比率の値の例示的グラフを示している。この図4を参照すると、結果として得られたQk曲線にはPk曲線との類似性が見られるが、Qk/Pk比率は実際にはkが大きくなるにつれて減少している。分析すると、1回目に訪れたkの範囲内における受け入れ率は、以下のとおりである。
Figure 2008047096
また、当業者には理解されるように、要求がより早い順序でクラスタを訪れるほど、且つ、クラスタ自体の受信要求を受け入れる確率がより高いほど、要求はより高い確率でクラスタによって受け入れられる。ゆえに、本発明の技法によれば、要求は、長さがより短く(従って先入れ先出しの場合には待ち時間がより短く)且つ最初のクラスタにより近く確率がより高いキューに確実に転送される。このようにローカルキューがネットワーク化されてサポートの合意が行われ、これにより、サービスのグリッドが、事業提携に柔軟且つ適応可能となると共に、そのサービスグリッドにおける参加者の数に合わせて拡張可能となる。
本発明は、クラスタ化された複数のサーバコンピュータを含むシステムにおいて、上述したキューイング処理を行う方法、及び該システムに上述のキューイング処理を実行させるコード(命令)を含むプログラムとしても実現できる。
図5は、本発明のクラスタ101の一実施形態が実施され得る、コンピュータ/サーバシステム500の一実施形態を示すブロック図である。
各クラスタ101は、上述したように相互接続されたプラットフォーム501のうちの1つ以上を含み得る。このシステム500は、コンピュータ/サーバプラットフォーム501、周辺装置502、及びネットワーク資源503を含む。
コンピュータプラットフォーム501は、データバス504、又は、このコンピュータプラットフォーム501の様々な部分間にわたり情報を通信するその他の通信メカニズムと、このバス504に接続されて情報を処理し且つその他の計算及び制御タスクを行うプロセッサ505とを含み得る。また、コンピュータプラットフォーム501は、バス504に接続されて様々な情報及びプロセッサ505により実行される命令を記憶する、揮発性記憶装置506(例えば、ランダムアクセスメモリ(RAM)や、その他の動的記憶装置)も含む。この揮発性記憶装置506は、プロセッサ505による命令の実行中に、一時的数値変数又はその他の中間情報を記憶するのに用いることができる。更に、コンピュータプラットフォーム501は、バス504に接続されて静的情報及びプロセッサ505(例えば、基本入出力システム(BIOS))への命令並びに様々なシステム構成パラメータを記憶する、読み出し専用メモリ(ROM若しくはEPROM)507又はその他の静的記憶装置も含み得る。また、固定記憶装置508(例えば、磁気ディスク、光ディスク、固体フラッシュメモリ素子)が設けられバス504に接続されて、情報及び命令が記憶される。これらの記憶装置には、本発明のシステムに上述したキューイング処理を実行させるためのコードからなるプログラムが記憶されることができる。
コンピュータプラットフォーム501は、バス504を介して、情報をこのコンピュータプラットフォーム501のシステム管理責任者又はユーザに表示するディスプレイ509(例えば、陰極線管(CRT)、プラズマディスプレイ、液晶ディスプレイ(LCD))に接続され得る。英数字及びその他のキーを含む入力装置(キーボード)510がバス504に接続されて、情報及びコマンドの選択がプロセッサ505に伝送される。別のタイプのユーザ入力装置として、方向情報及びコマンドの選択をプロセッサ505に伝送し且つディスプレイ509におけるカーソルの動きを制御するカーソル制御装置511(例えば、マウス、トラックボール、カーソル方向キー等の位置ポイント装置)がある。一般的に、このような入力装置では、2つの軸(即ち、第1軸(例えば、x)及び第2軸(例えば、y))における2つの自由度を有することにより、平面における位置を特定することができる。
コンピュータプラットフォーム501にバス504を介して外部記憶装置512を接続することにより、コンピュータプラットフォーム501に追加の若しくは取り外し可能(リムーバブル)な記憶容量を設けてもよい。コンピュータシステム500の一実施形態では、この外部リムーバブル記憶装置512を用いて、他のコンピュータシステムとのデータ交換を支援してもよい。
本発明は、コンピュータシステム500を用いて本明細書中に記載の技法を実施することに関する。一実施形態では、本発明のシステムは、コンピュータプラットフォーム501のような装置に備えられ得る。本発明の一実施形態によれば、本明細書中に記載の技法は、コンピュータシステム500により、揮発性記憶装置506に収容された1つ以上の命令のうちの1つ以上のシーケンスをプロセッサ505が実行することにより実施される。このような命令は、別のコンピュータ可読媒体(例えば、固定記憶装置508)から揮発性記憶装置506に読み込まれてもよい。揮発性記憶装置506に収容された命令のシーケンスを実行することにより、プロセッサ505は、本明細書中に記載の処理ステップを行う。これにより、コンピュータシステム500を上述したキューイング処理を実行するシステムとして機能させることができる。
別の実施形態では、ソフトウェア命令の代わりに、又はソフトウェア命令と組み合わせて組み込み回路を用いて、本発明を実施してもよい。このように、本発明の実施形態は、ハードウェア回路とソフトウェアとのいずれの特定の組み合わせにも限定されない。
本明細書中で用いる「コンピュータ可読媒体」という語は、プロセッサ505に命令を与えて実行させることに関するあらゆる媒体を指す。このコンピュータ可読媒体は、本明細書中に記載の方法及び技法のいずれも実施する命令を保持し得る、機械可読媒体の単なる一例である。このような媒体は、多数の形態を取ることができ、例として、不揮発性媒体、揮発性媒体、及び伝送媒体が挙げられるが、これらに限定されない。不揮発性媒体としては、例えば、固定記憶装置508のような、光ディスク若しくは磁気ディスクが挙げられる。揮発性媒体としては、揮発性記憶装置506のような、動的記憶装置が挙げられる。伝送媒体としては、データバス504を含むワイヤのような、同軸ケーブル、銅線、及び光ファイバーが挙げられる。また、この伝送媒体は、電波や赤外線によるデータ通信で生成されるような、音波や光波の形態を取ることもできる。
コンピュータ可読媒体の一般的な形態としては、例えば、フロッピー(登録商標)ディスク、フレキシブルディスク、ハードディスク、磁気テープ、あらゆるその他の磁気媒体、又は、CD−ROM、あらゆるその他の光媒体、又は、パンチカード、紙テープ、孔パターンを備えたあらゆるその他の物理的媒体、又は、RAM、PROM、EPROM、フラッシュEPROM、フラッシュドライブ、メモリカード、あらゆるその他のメモリチップ若しくはカートリッジ、又は、後で説明するような搬送波、又は、コンピュータが読み取ることのできるあらゆるその他の媒体が挙げられる。
1つ以上の命令のうちの1つ以上のシーケンスをプロセッサ505に伝送して実行するのに、様々な形態のコンピュータ可読媒体を用いてもよい。例えば命令は、まずリモートコンピュータから磁気ディスクに伝送されることができる。或いは、リモートコンピュータは、命令をその動的記憶装置にロードし、モデムを用い電話回線を介してこの命令を転送することができる。コンピュータシステム500のローカルなモデムは、電話回線上でデータを受信し、赤外線送信機を用いてこのデータを赤外線信号に変換することができる。赤外線検出器がこの赤外線信号に保持されたデータを受信することができると共に、適切な回路がこのデータをデータバス504上に載せることができる。バス504はこのデータを揮発性記憶装置506に伝送し、プロセッサ505がこの揮発性記憶装置506から命令を読み出して実行する。揮発性記憶装置506によって受信された命令は、必要に応じて、プロセッサ505によって実行される前か或いは後に、固定記憶装置508に記憶されてもよい。また、この命令は、当業界では周知の様々なネットワークデータ通信プロトコルを用い、インターネットを介して、コンピュータプラットフォーム501にダウンロードされてもよい。
コンピュータプラットフォーム501は、データバス504に接続されたネットワークインタフェースカード513のような、通信インタフェースも含む。この通信インタフェース513は、ローカルネットワーク515に接続されたネットワークリンク514への双方向データ通信接続をもたらす。例えば、この通信インタフェース513は、対応するタイプの電話回線へのデータ通信接続をもたらす総合デジタル通信網(ISDN)カード又はモデムであってもよい。別の例として、この通信インタフェース513は、互換LANへのデータ通信接続をもたらすローカルエリアネットワークインタフェースカード(LANNIC)であってもよい。また、無線リンク(例えば、周知の802.11a、802.11b、802.11g、ブルートゥース等)を用いて、ネットワークを実現してもよい。このような実現方法ではいずれも、通信インタフェース513は、様々なタイプの情報を表すデジタルデータストリームを保持する、電気信号、電磁信号、又は光信号を送受信する。
一般的に、ネットワークリンク514は、1つ以上のネットワークを介して、他のネットワーク資源へのデータ通信をもたらす。例えば、ネットワークリンク514は、ローカルネットワーク515を介して、ホストコンピュータ516又はネットワーク記憶装置/サーバ522への接続をもたらし得る。更に若しくは或いは、このネットワークリンク514は、ゲートウェイ/ファイアウォール517を介して、広域若しくは大域ネットワーク518(例えば、インターネット)へ接続し得る。従って、コンピュータプラットフォーム501は、インターネット518上のいずれに位置するネットワーク資源(例えば、遠隔ネットワーク記憶装置/サーバ519)にもアクセスすることができる。一方、コンピュータプラットフォーム501も、ローカルエリアネットワーク515及びインターネット518上のいずれに位置するクライアントによってもアクセスされ得る。これらのネットワーククライアント520及び521自体は、プラットフォーム501と同様のコンピュータプラットフォームに基づいて実装されてもよい。
ローカルネットワーク515及びインターネット518は共に、デジタルデータストリームを保持する電気信号、電磁信号、又は光信号を用いる。コンピュータプラットフォーム501とデジタルデータを送受信する、様々なネットワークを介する信号及びネットワークリンク514上にあり通信インタフェース513を介する信号は、情報(データ信号)を搬送する搬送波の例示的形態である。
コンピュータプラットフォーム501は、様々なネットワーク(例えば、インターネット518、ローカルネットワーク(LAN)515、ネットワークリンク514、通信インタフェース513)を介して、メッセージを送信しデータ、例えばプログラムコードを受信することができる。インターネットの例において、コンピュータプラットフォーム(システム)501がネットワークサーバとして機能する場合、クライアント520及び521の少なくとも1つで動作するアプリケーションプログラムに必要なコード又はデータを、インターネット518、ゲートウェイ/ファイアウォール517、ローカルエリアネットワーク515、及び通信インタフェース513を介して送信し得る。同様に、コンピュータプラットフォーム501は、他のネットワーク資源からコードを受信し得る。このような送受信され得るコード又はデータは、システム500内のサーバ(コンピュータプラットフォーム501及び他のネットワークサーバ等)が本発明のキューイング処理を実施するためのプログラムコードであってもよい。
受信されたコードは、受信され次第プロセッサ505によって実行されるか、又は後で実行されるために、固定記憶装置508又は揮発性記憶装置506又は他の不揮発性記憶装置に記憶され得る。このように、コンピュータプラットフォーム(システム)501は、本発明のキューイング処理を実施するためのアプリケーションコードを搬送波の形態で取得し得る。
最後に、本明細書中に記載の処理及び技法は、本質的にいかなる特定の装置にも関連せず、コンポーネントのいかなる適切な組み合わせによっても実施され得ることを理解されたい。更に、本明細書中に記載の教示に従って、様々なタイプの汎用装置を用いてもよい。また、本明細書中に記載の方法及びプログラムの各ステップを行う専用装置を構築することは有益であることも明らかであろう。本発明を特定の例に関して説明してきたが、これらの例は、全ての点において、制限ではなく例示を意図したものである。当業者にはハードウェア、ソフトウェア、及びファームウェアの多数の異なる組み合わせが、本発明を実施するのに適していることが理解されよう。例えば、説明したソフトウェアは、様々なプログラミング言語又はスクリプト言語(例えば、アセンブリ言語、C/C++、perl、シェル、PHP、Java(登録商標)など)で実施され得る。
更に、当業者には、本明細書中に開示した本発明の具体例及び実施例を考慮することにより、本発明のその他の実施例が明らかとなるであろう。データ複製機能を備えたコンピュータ制御の記憶装置に、本明細書中に説明した実施形態の様々な態様及びコンポーネントの少なくとも1つを、単独で或いは任意の組み合わせで用いてもよい。これらの具体例及び実施例は単なる例と見なし、本発明の真の範囲及び精神は添付の特許請求の範囲により示されることが意図されている。
本発明の概念が実施され得る、ネットワークキューを備えるクラスタシステムの、一例としての実施形態を示す図である。 本発明の概念による、キュー間において要求を転送する際の確率的な受け入れを示す図である。 本発明の概念による、受信要求を受け入れるか又は転送するかの決定過程を示す図である。 0〜0.6のランダムなPkで要求を受け入れる例示的確率を示すグラフである。 本発明のシステムが実施され得るコンピュータプラットフォームの、一例としての実施形態を示す図である。
符号の説明
100 キューイングシステム
101 クラスタ
102 キュー
104 サーバ
301 決定過程
500 コンピュータシステム
501 コンピュータプラットフォーム
502 周辺装置
503 ネットワーク資源
514 ネットワークリンク

Claims (25)

  1. a.少なくとも1つのサーバ及び第1キューを備えると共に、サービス要求に応じてサービスを提供するように動作可能な、第1クラスタと、
    b.第2キューを備えると共に、サービス要求に応じてサービスを提供するように動作可能な、第2クラスタと、
    を備える、コンピュータシステムであって、
    前記第1クラスタが、
    i. サービス要求を受信し、
    ii. 前記第1クラスタにアイドルサーバがあるかどうか判別し、
    iii.前記第1クラスタにアイドルサーバがある場合には、該アイドルサーバに前記受信した要求を割り当て、
    iv. 前記第1クラスタにアイドルサーバがない場合には、少なくとも第1確率値に基づいたアルゴリズムに従って、前記受信した要求を前記第1キューに入れるか、又は前記受信した要求を前記第2クラスタに転送する
    ように動作可能な、コンピュータシステム。
  2. 前記第1確率値が、前記第1キューに待機しているサービス要求の数に基づいて決定される、請求項1に記載のコンピュータシステム。
  3. 前記第1確率値が、前記第1クラスタにおけるサーバの数に基づいて決定される、請求項1に記載のコンピュータシステム。
  4. 前記第1確率値が、前記第1キューに待機しているサービス要求の数及び前記第1クラスタにおけるサーバの数に基づいて決定される、請求項1に記載のコンピュータシステム。
  5. 前記アルゴリズムが、少なくとも前記第2キューに待機しているサービス要求の数に基づいて決定された第2確率値に更に基づいている、請求項1に記載のコンピュータシステム。
  6. 前記第1クラスタの前記第1キューと前記第2クラスタの前記第2キューとの間のリンクをさらに備える、請求項1に記載のコンピュータシステム。
  7. 前記第1クラスタが、ローカル状態情報を前記第2クラスタに定期的に提供するように動作可能である、請求項1に記載のコンピュータシステム。
  8. 前記ローカル状態情報が、前記第1確率値を含む、請求項7に記載のコンピュータシステム。
  9. 前記ローカル状態情報が、下の式で表される第2確率値を更に含み、
    Figure 2008047096
    式中、Pkは前記第1確率値であり、Φkは前記第1クラスタの隣接クラスタのセットである、請求項8に記載のコンピュータシステム。
  10. 少なくとも1つのクラスタ化されたサーバを含むシステムにおけるキューイング方法であって、
    a.第1キューを備える第1クラスタにおいてサービス要求を受信し、
    b.前記第1クラスタにアイドルサーバがあるかどうか判別し、
    c.前記第1クラスタにアイドルサーバがある場合には、該アイドルサーバに前記受信した要求を割り当て、
    d.前記第1クラスタにアイドルサーバがない場合には、少なくとも第1確率値に基づいたアルゴリズムに従って、前記受信した要求を前記第1キューに入れるか、又は前記受信した要求を第2クラスタに転送すること、
    を含む方法。
  11. 前記第1確率値が、前記第1キューに待機しているサービス要求の数に基づいて決定される、請求項10に記載の方法。
  12. 前記第1確率値が、前記第1クラスタにおけるサーバの数に基づいて決定される、請求項10に記載の方法。
  13. 前記第1確率値が、前記第1キューに待機しているサービス要求の数及び前記第1クラスタにおけるサーバの数に基づいて決定される、請求項10に記載の方法。
  14. 前記アルゴリズムが、少なくとも第2キューに待機しているサービス要求の数に基づいて決定された第2確率値に更に基づいている、請求項10に記載の方法。
  15. ローカル状態情報を前記第2クラスタに定期的に提供することを更に含む、請求項10に記載の方法。
  16. 前記ローカル状態情報が、前記第1確率値を含む、請求項15に記載の方法。
  17. 前記ローカル状態情報が、下の式で表される第2確率値を更に含み、
    Figure 2008047096
    式中、Pkは前記第1確率値であり、Φkは前記第1クラスタの隣接クラスタのセットである、請求項16に記載の方法。
  18. 少なくとも1つのクラスタ化されたサーバを含むシステムにおいて、コンピュータにキューイング処理を実行させるためのコードを含むプログラムであって、前記コードは、
    a.第1キューを備える第1クラスタにおいてサービス要求を受信し、
    b.前記第1クラスタにアイドルサーバがあるかどうか判別し、前記第1クラスタにアイドルサーバがある場合には、該アイドルサーバに前記受信した要求を割り当て、前記第1クラスタにアイドルサーバがない場合には、少なくとも第1確率値に基づいたアルゴリズムに従って、前記受信した要求を前記第1キューに入れるか、又は前記受信した要求を第2クラスタに転送すること、
    を含む処理をコンピュータに実行させる、プログラム。
  19. 前記第1確率値が、前記第1キューに待機しているサービス要求の数に基づいて決定される、請求項18に記載のプログラム。
  20. 前記第1確率値が、前記第1クラスタにおけるサーバの数に基づいて決定される、請求項18に記載のプログラム。
  21. 前記第1確率値が、前記第1キューに待機しているサービス要求の数及び前記第1クラスタにおけるサーバの数に基づいて決定される、請求項18に記載のプログラム。
  22. 前記アルゴリズムが、少なくとも第2キューに待機しているサービス要求の数に基づいて決定された第2確率値に更に基づいている、請求項18に記載のプログラム。
  23. ローカル状態情報を前記第2クラスタに定期的に提供する処理を更にコンピュータに実行させる、請求項18に記載のプログラム。
  24. 前記ローカル状態情報が、前記第1確率値を含む、請求項23に記載のプログラム。
  25. 前記ローカル状態情報が、下の式で表される第2確率値を更に含み、
    Figure 2008047096
    式中、Pkは前記第1確率値であり、Φkは前記第1クラスタの隣接クラスタのセットである、請求項24に記載のプログラム。
JP2007137469A 2006-08-14 2007-05-24 キューイングを行うコンピュータシステム、方法、及びプログラム Expired - Fee Related JP5050649B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/504,314 US7730186B2 (en) 2006-05-25 2006-08-14 Networked queuing system and method for distributed collborative clusters of services
US11/504314 2006-08-14

Publications (2)

Publication Number Publication Date
JP2008047096A true JP2008047096A (ja) 2008-02-28
JP5050649B2 JP5050649B2 (ja) 2012-10-17

Family

ID=39180731

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007137469A Expired - Fee Related JP5050649B2 (ja) 2006-08-14 2007-05-24 キューイングを行うコンピュータシステム、方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP5050649B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111259227A (zh) * 2020-01-16 2020-06-09 北京旷视科技有限公司 用于在多个检索集群之间共享目标检索服务的方法和装置
CN111930502A (zh) * 2020-07-31 2020-11-13 苏州交驰人工智能研究院有限公司 一种服务器管理方法、装置、设备及存储介质
CN114390104A (zh) * 2022-01-26 2022-04-22 杭州趣链科技有限公司 过程取证系统、方法、装置、计算机设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06195317A (ja) * 1992-12-22 1994-07-15 Mitsubishi Electric Corp データ処理システム
JPH08305671A (ja) * 1995-04-28 1996-11-22 Nec Corp ジョブスケジューリング方式
JP2006048680A (ja) * 2004-07-30 2006-02-16 Hewlett-Packard Development Co Lp 複数のインスタンスアプリケーションに対し負荷分散装置を動作させるシステムおよび方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06195317A (ja) * 1992-12-22 1994-07-15 Mitsubishi Electric Corp データ処理システム
JPH08305671A (ja) * 1995-04-28 1996-11-22 Nec Corp ジョブスケジューリング方式
JP2006048680A (ja) * 2004-07-30 2006-02-16 Hewlett-Packard Development Co Lp 複数のインスタンスアプリケーションに対し負荷分散装置を動作させるシステムおよび方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111259227A (zh) * 2020-01-16 2020-06-09 北京旷视科技有限公司 用于在多个检索集群之间共享目标检索服务的方法和装置
CN111259227B (zh) * 2020-01-16 2023-11-10 北京旷视科技有限公司 用于在多个检索集群之间共享目标检索服务的方法和装置
CN111930502A (zh) * 2020-07-31 2020-11-13 苏州交驰人工智能研究院有限公司 一种服务器管理方法、装置、设备及存储介质
CN114390104A (zh) * 2022-01-26 2022-04-22 杭州趣链科技有限公司 过程取证系统、方法、装置、计算机设备及介质

Also Published As

Publication number Publication date
JP5050649B2 (ja) 2012-10-17

Similar Documents

Publication Publication Date Title
EP3637733B1 (en) Load balancing engine, client, distributed computing system, and load balancing method
US7730186B2 (en) Networked queuing system and method for distributed collborative clusters of services
JP3480794B2 (ja) サーバコンピュータシステム及び予測レスポンスを生成する方法
US10567303B2 (en) System and method for routing service requests
JP4144897B2 (ja) 共通作業キュー環境における最適格サーバ
US20060277278A1 (en) Distributing workload among DNS servers
JP2019522293A (ja) アクセラレーション・リソース処理方法及び装置
CA2367800C (en) Communication architecture for distributed computing environment
JP5281160B2 (ja) コンピュータ・ネットワーク内の複数のユーザ・デバイス間の資源共用のための方法および装置
US20100293268A1 (en) Efficient message consumption in a point-to-point messaging environment
US20170220385A1 (en) Cross-platform workload processing
JP2005346573A (ja) Webサービス提供方法、Webサービスシステムにおけるサーバ装置およびクライアント端末、Webサービスシステム、ならびに、Webサービスプログラムおよび記録媒体
EP4050902A1 (en) Real-time detection of completion of sensor wrap completion in gnmi telemetry of a network device
JP5050649B2 (ja) キューイングを行うコンピュータシステム、方法、及びプログラム
US20080168125A1 (en) Method and system for prioritizing requests
CN111049915A (zh) 一种容器云下消息队列代理网格及方法
US11683400B1 (en) Communication protocol for Knative Eventing's Kafka components
EP3539278B1 (en) Method and system for affinity load balancing
US9626226B2 (en) Cross-platform workload processing
CN114666263A (zh) 高动态的智能路由确定方法、装置、电子设备及存储介质
US8989184B2 (en) Message relay apparatus and method
CN108696598B (zh) 一种微服务架构下将无状态服务接收到的消息通过长连接透传的方法和装置
US11546405B2 (en) Methods for exposing mainframe data as a web service and devices thereof
US20090094314A1 (en) Reroute of a web service in a web based application
KR102367017B1 (ko) 통신 네트워크 시스템 및 그것의 제어방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100423

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110823

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110906

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111104

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: 20120626

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120709

R150 Certificate of patent or registration of utility model

Ref document number: 5050649

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150803

Year of fee payment: 3

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees