JP6310461B2 - 分散型データグリッドクラスタにおけるスケーラブルなメッセージバスをサポートするシステムおよび方法 - Google Patents

分散型データグリッドクラスタにおけるスケーラブルなメッセージバスをサポートするシステムおよび方法 Download PDF

Info

Publication number
JP6310461B2
JP6310461B2 JP2015531256A JP2015531256A JP6310461B2 JP 6310461 B2 JP6310461 B2 JP 6310461B2 JP 2015531256 A JP2015531256 A JP 2015531256A JP 2015531256 A JP2015531256 A JP 2015531256A JP 6310461 B2 JP6310461 B2 JP 6310461B2
Authority
JP
Japan
Prior art keywords
message
data grid
distributed data
cluster members
message bus
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
Application number
JP2015531256A
Other languages
English (en)
Other versions
JP2015531512A5 (ja
JP2015531512A (ja
Inventor
ファルコ,マーク
グレイザー,アレックス
Original Assignee
オラクル・インターナショナル・コーポレイション
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 オラクル・インターナショナル・コーポレイション filed Critical オラクル・インターナショナル・コーポレイション
Publication of JP2015531512A publication Critical patent/JP2015531512A/ja
Publication of JP2015531512A5 publication Critical patent/JP2015531512A5/ja
Application granted granted Critical
Publication of JP6310461B2 publication Critical patent/JP6310461B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • 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/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/547Messaging middleware

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Bus Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Multi Processors (AREA)
  • Information Transfer Between Computers (AREA)

Description

著作権表示
この特許文献の開示の一部には、著作権の保護対象となる資料が含まれている。著作権者は、特許商標庁の特許ファイルまたは記録に記載されたとおりのものについては、特許文献または特許の開示を他人が複製することに異議を唱えないが、他の点については、全ての著作権を確保している。
発明の分野
本発明は、概してコンピュータシステムに関し、特に分散型データグリッドに関する。
背景
特に大きな組織および企業よって採用される現代のコンピューティングシステムは、規模および複雑さが増し続けている。インターネットアプリケーションなどの領域においては、数百万人のユーザーがそのアプリケーションに同時にアクセス可能であるべきという期待がある。これは、ユーザーによって生成および消費されるコンテンツの量ならびにそのコンテンツに関連するトランザクションの指数関数的な増加に効果的に導かれる。また、このような活動は、データベースおよびメタデータストアへのトランザクションコールの数の対応する増加を引き起こし、その要求の受け入れ容量には限界がある。
さらに、現代のアプリケーションは、コスト、スケール、ならびにアプリケーションの信頼性および保守性の課題に対する解決策として、スケールアウトアーキテクチャを包含した。この手法は、巨大化してコストのかかる最高位のサーバーの使用に典型的に依存する従来の手法に対して多くの利点を提供する。しかしながら、この手法では、一般に、入出力(I/O)ボトルネックという1つの持続的かつ困難な制限に悩まされる。したがって、現代の高度な分散型システムの性能および効率は、すべてのシステム構成要素を接続する通信機構によって抑制され得る。
これは、本発明の実施形態によって対処することが意図される一般的な領域である。
概要
本明細書では、分散型データグリッドにおけるスケーラブルなメッセージバスをサポートすることができるシステムおよび方法について記載する。システムは、分散型データグリッドにおいて複数のメッセージバスを提供することができ、分散型データグリッドは、複数のクラスタメンバを含み、複数のサービスを提供する。さらに、システムは、分散型データグリッドにおける前記サービスの各々を前記メッセージバスに対応付けることができ、分散型データグリッドにおける異なるクラスタメンバ上の異なるサービス間でのデータ転送をサポートするために複数のメッセージバスを使用することができる。加えて、システムは、分散型データグリッドにおけるクラスタ化をサポートするためにデータグラム層を使用することができ、データ転送のために分散型データグリッドにおけるデータグラム層をバイパスすることができる。
本発明の実施形態は、分散型データグリッドにおけるスケーラブルなメッセージバスをサポートする装置を提供する。装置は、分散型データグリッドにおける複数のメッセージバスを提供する手段を備える。分散型データグリッドは、複数のクラスタメンバを含み、複数のサービスを提供する。装置はさらに、分散型データグリッドにおける前記サービスの各々を前記メッセージバスに対応付ける手段と、分散型データグリッドにおける異なるクラスタメンバ上の異なるサービス間でのデータ転送をサポートするために複数のメッセージバスを使用する手段とを備える。
例において、装置は、分散型データグリッドにおけるクラスタ化をサポートするためにデータグラム層を使用する手段をさらに備える。
例において、装置は、データ転送のために分散型データグリッドにおけるデータグラム層をバイパスする手段をさらに備える。
例において、装置は、複数のメッセージバスをサポートするためにメッセージバスプロバイダを使用する手段をさらに備える。
例において、装置は、メッセージバスプロバイダをプラガブルプロバイダにする手段をさらに備える。
例において、装置は、複数のバスプロトコルからバスプロトコルを選択するために単一のスイッチを使用する手段をさらに備える。
例において、装置は、メッセージバスに障害が起こった場合にクラスタメンバに対する停止検知を発動する手段をさらに備える。
例において、装置は、ネットワークを介して、分散型データグリッドにおける異なるクラスタメンバ上の異なるメッセージバスを接続する手段をさらに備える。
例において、装置は、ネットワークをリモートダイレクトメモリアクセス(RDMA)プロトコルに基づかせる手段をさらに備える。
例において、装置は、ネットワークをユーザーデータグラムプロトコル(UDP)にフォールバックさせる手段をさらに備える。
本発明の他の実施形態は、分散型データグリッドにおけるスケーラブルなメッセージバスをサポートするシステムを提供する。システムは、分散型データグリッドにおける複数のメッセージバスを提供するように構成されたメッセージバスプロバイダを備える。分散型データグリッドは、複数のクラスタメンバを含み、複数のサービスを提供する。システムはさらに、分散型データグリッドにおける前記サービスの各々を前記メッセージバスに対応付けるように構成された対応付けユニットと、分散型データグリッドにおける異なるクラスタメンバ上の異なるサービス間でのデータ転送をサポートするために複数のメッセージバスを使用するように構成されたデータ転送ユニットとを備える。
例において、システムは、分散型データグリッドにおけるクラスタ化をサポートするように構成されたデータグラム層をさらに備える。
例において、システムは、データ転送のために分散型データグリッドにおけるデータグラム層をバイパスするように構成されたバイパスユニットをさらに備える。
例において、複数のメッセージバスをサポートするためにメッセージバスプロバイダが使用される。
例において、メッセージバスプロバイダはプラガブルプロバイダである。
例において、システムは、複数のバスプロトコルからバスプロトコルを選択するように構成された単一のスイッチをさらに備える。
例において、システムは、メッセージバスに障害が起こった場合にクラスタメンバに対して停止検知を発動するように構成された発動ユニットをさらに備える。
例において、システムは、ネットワークを介して、分散型データグリッドにおける異なるクラスタメンバ上の異なるメッセージバスを接続するように構成された接続ユニットをさらに備える。
例において、ネットワークは、リモートダイレクトメモリアクセス(RDMA)プロトコルに基づく。
他の例において、ネットワークは、ユーザーデータグラムプロトコル(UDP)にフォールバックする。
分散型データグリッドにおけるデータグラム層に基づくメッセージ移送のサポートを示す図である。 本発明の実施形態に従う、分散型データグリッドにおけるメッセージバスの提供を示す図である。 分散型データグリッドにおけるメッセージングをサポートするためのTCP/IPベースのトランスポート層の使用を示す図である。 本発明の実施形態に従う、分散型データグリッドにおけるメッセージングをサポートするためのRDMAベースのトランスポート層の使用を示す図である。 本発明の実施形態に従う、分散型データグリッドにおけるサービスごとのバスのサポートを示す図である。 本発明の実施形態に従う、分散型データグリッドにおけるサービスごとのバスのサポートのための例示的なフローチャートを示す図である。 本発明の実施形態に従う、分散型データグリッドにおける並列メッセージの逆シリアル化のサポートを示す図である。 本発明の実施形態に従う、分散型データグリッドにおける並列メッセージの逆シリアル化をサポートするための例示的なフローチャートを示す図である。 本発明の実施形態に従う、分散型データグリッドにおけるメッセージ前処理のサポートを示す図である。 本発明の実施形態に従う、分散型データグリッドにおけるメッセージ前処理をサポートするための例示的なフローチャートを示す図である。 本発明の実施形態に従う、システムの概略機能ブロック図を示す図である。 本発明の実施形態に従う、分散型データグリッドにおけるスケーラブルなメッセージバスをサポートするシステムの機能ブロック図を示す図である。
詳細な説明
本発明は、同様の参照符号が同様の要素を示す添付の図面において示されるが、これらは例示であって限定ではない。なお、本開示における「ある(an)」実施形態、「1つの(one)」実施形態、または「一部の(some)」実施形態への参照は、必ずしも同じ実施形態への参照とは限らず、このような参照は少なくとも1つを意味する。
以下の本発明の実施形態の記載では、分散型データグリッドの例としてCoherence分散型データグリッドを使用する。限定されることなく他のタイプの分散型データグリッドを使用できることは、当業者にとって明らかである。さらに、以下の本発明の記載では、メッセージング機構の例としてExabusメッセージング機構を使用する。限定されることなく他のタイプのメッセージング機構を使用できることは、当業者にとって明らかである。
本明細書では、分散型データグリッドクラスタにおけるスケーラブルなメッセージバスをサポートすることができるシステムおよび方法について記載する。スケーラブルなメッセージバスは、各サービスに独自のバス(トランスポートエンジン)を設けることができる。分散型データグリッドは、アドレス指定されたサービスへインバウンドメッセージが運ばれる前にインバウンドメッセージを逆シリアル化するために入出力(I/O)スレッドのプールを利用することができ、メッセージタイプが識別されて分散型データグリッド内のスレッドプールにオフロードされる前に、シングルスレッドの方法ですべてのメッセージを逆シリアル化することによって、引き起こされるボトルネックを除去することができる。加えて、分散型データグリッドは、スケーラブルなメッセージバスのためにI/Oスレッド上で入力メッセージを前処理させることができる。
データグリッドの分散
実施形態に従えば、本明細書でいう「データグリッドクラスタ」または「データグリッド」は、分散型またはクラスタ化環境内における情報および計算などの関連動作を管理するために協働する複数のコンピュータサーバーを備えるシステムである。データグリッドクラスタは、サーバー間で共有されるアプリケーションオブジェクトおよびデータを管理するために使用することができる。好ましくは、データグリッドクラスタは、短い応答時間、高いスループット、予測可能なスケーラビリティ、連続的な可用性、および情報信頼性を有するべきである。これらの性能の結果として、データグリッドクラスタは、計算集約的であってステートフルな中間層アプリケーションにおける使用によく適したものとなる。データグリッドクラスタの一部の例、たとえば、Oracle Coherenceデータグリッドクラスタは、高い性能を実現するために情報をインメモリで記憶することができ、複数のサーバー間でその情報のコピーを同期して維持する冗長性を採用することができ、サーバー障害時におけるシステムの回復性およびデータの可用性が確保される。たとえば、Coherenceは、信頼性が高く高度にスケーラブルなピアツーピアクラスタ化プロトコルの上部において、複製および分散(区分化)したデータ管理およびキャッシングサービスを提供する。
インメモリデータグリッドは、協働する複数のサーバーにわたってデータを分散させることによってデータ記憶および管理性能を提供することができる。データグリッドは、アプリケーションサーバーと同じティアにおいて、またはアプリケーションサーバー内において実行されるミドルウェアであり得る。これは、データの管理および処理を提供することができるとともに、グリッドにおいてデータが位置する箇所に対して処理を実行することもできる。加えて、インメモリデータグリッドは、自動的かつ透過的にフェイルオーバーし、サーバーが動作不能になった場合またはサーバーがネットワークから切断された場合にそのクラスタ化データ管理サービスを再分散させることにより、単一障害点を排除することができる。新しいサーバーが加えられた場合、または障害の起こったサーバーが再始動した場合、クラスタを自動的に結合することができ、サービスをそこにフェールバックさせることができ、透過的にクラスタ負荷が再分散される。データグリッドは、ネットワークレベルフォルトトレランス特徴および透過的な再起動能力も含むことができる。
実施形態に従えば、データグリッドクラスタの機能性は、異なるクラスタサービスの使用に基づいている。クラスタサービスは、ルートクラスタサービス、区分化キャッシュサービス、およびプロキシサービスを含み得る。データグリッドクラスタ内において、各クラスタノードは、クラスタサービスの提供および消費の両方の面において、複数のクラスタサービスに関わることができる。各クラスタサービスは、データグリッドクラスタ内のサービスを固有に識別するサービス名と、クラスタサービスができることを規定するサービスタイプとを有する。データグリッドクラスタにおける各クラスタノード上でルートクラスタサービスが実行される他、各サービスタイプには複数の名を持つインスタンスがあってもよい。サービスは、ユーザーによって構成され得る、またはサービスのデフォルトセットとしてデータグリッドクラスタによって提供され得る。
図1は、分散型データグリッドにおけるデータグラム層に基づくメッセージ移送のサポートを示す図である。図1に示されるように、分散型データグリッド100におけるクラスタメンバ101は、1つ以上のクライアント/サービススレッド102を含み得る。クラスタメンバ101上のクライアント/サービススレッド102は、ユーザーデータグラムプロトコル(UDP)を使用し、たとえばイーサネット(登録商標)ネットワーク110などのネットワークを通じて分散型データグリッド100における他のクラスタメンバにメッセージを送ることができる。
本発明の実施形態に従えば、クラスタメンバ101は、分散型データグリッド100における他のクラスタメンバへメッセージを送るために、および応答メッセージを受け取るために、パケット化ロジック、パケット再送信ロジック、およびAck/Nackロジックなどの異なるロジックを採用し得る。
加えて、上記のメッセージング処理には、複数のコンテキストスイッチが伴い得る。図1に示されるように、クライアント/サービススレッド102は、まずメッセージをパブリッシャー103に送り得る。そして、パブリッシャー103は、メッセージをスピーカー104に転送し得る。スピーカー104は、メッセージをネットワーク110に送る役割を有する。
さらに、分散型データグリッド100におけるクラスタメンバ101は、1つ以上のリスナー105を使用して応答メッセージを受け取り得る。リスナー105は、受け取ったメッセージをレシーバー106に転送し得る。そして、レシーバー106は、受け取ったメッセージをクライアント/サービススレッド102に転送し、任意でパブリッシャー103に通知し得る。
スケーラブルなメッセージバス
本発明の実施形態に従えば、スケーラブルなメッセージバスは、様々なレベルでI/Oボトルネックを取り除くために使用され得る。
図2は、本発明の実施形態に従う、分散型データグリッドにおけるメッセージバスの提供を示す図である。図2に示されるように、クラスタメンバ201は、分散型データグリッド200における、たとえばJAVA(登録商標)仮想マシンなどの仮想マシン210上で実行され得る。クラスタメンバ201は、1つ以上のサービス211を伴い得る。サービス211は、メッセージングのために1つ以上のメッセージバス212を使用し得る。
本発明の実施形態に従えば、メッセージバス212は、マルチポイントアドレス指定および信頼性の高い順次伝送を伴うバイナリ低レベルメッセージトランスポート層に基づき得る。また、メッセージバスは、純粋なJava(登録商標)の実施および/またはネイティブ実施に基づき得るとともに、非同期性事象ベースのプログラミングモデルを採用し得る。
さらに、メッセージバス212は、たとえばOracle ExaLogicエンジニアードシステムにおけるExabusなどのネットワーキングハードウェアおよびソフトウェアサブシステムを使用してサポートされ得る。メッセージバスは、アプリケーションの実行をより速くするのみならず、アプリケーションの実行をより効率的にし得る。また、メッセージバスは、数千個のプロセッサコアおよび数テラバイトのメモリを伴う非常に大きなスケールの展開において、および実質的に全てのビジネス用途について、アプリケーションを一貫して予測可能に実行させ得る。
本発明の実施形態に従えば、メッセージバス212の各々は、プロバイダベースのトランスポート層であり得て、これはJRockit/HotSpotなどの仮想マシン210におけるメッセージバスプロバイダ202を使用することによってサポートされ得る。
加えて、メッセージバスプロバイダ202は、プラガブルプロバイダベースのフレームワークに基づき得る。たとえば、メッセージバスプロバイダ202は、TCP/SDPに基づくSocketBus、およびInfiniband RDMAに基づくInfiniBusなどの異なるメッセージバスをサポートし得る。
本発明の実施形態に従えば、メッセージバスプロバイダは、複数のバスプロトコルからバスプロトコルを選択するために単一のスイッチを使用し得る。たとえば、Coherenceにおいて、システムは以下の構成ファイルにおいて単一のスイッチを指定し得る。
Figure 0006310461
加えて、Coherenceにおいて、システムは、以下のバスのうちの1つを選択するために単一のスイッチを使用し得る。
tmb:TCP MessageBus
sdmb:SDP MessageBus
imb:Infiniband MessageBus
データグラム:従来のUDP(デフォルト)
したがって、メッセージバス212は、分散型データグリッド200におけるノード間のスケーラビリティを向上させ得るとともに、分散型データグリッド200をプロトコル非依存にし得る。たとえば、メッセージバス212を使用して、分散型データグリッド200は、効果的に多数のコアを利用し、メッセージングの同時実行を向上させ、スループットを高めてレイテンシーを減少させ得る。また、メッセージバス212は、分散型データグリッド200にコンテキストスイッチを最小化させ、ゼロコピーを利用する。
本発明の実施形態に従えば、システムは、メッセージバスに障害が起こった場合にクラスタメンバに対する停止検知を発動させ得る。
図3は、分散型データグリッドにおけるメッセージングをサポートするためのTCP/IPベースのトランスポート層の使用を示す図である。図3に示されるように、分散型コンピューティング環境300においてアプリケーション301からアプリケーション302へメッセージを送るために、メッセージは、ローカルマシン上のアプリケーションバッファー303、TCP/IPトランスポート層305、およびカーネル層306を通る必要があり得る。そして、メッセージは、リモートマシンにおけるカーネル層306およびTCP/IPトランスポート層305を介して、アプリケーションバッファー304においてリモートマシンで受け取られ得る。
図4は、本発明の実施形態に従う、分散型データグリッドにおけるメッセージングをサポートするためのRDMAベースのトランスポート層の使用を示す図である。図4に示されるように、システムは、RDMAベースのトランスポート層に基づき、ローカルマシン上のアプリケーション401からリモートマシン上のアプリケーション401へ直接メッセージを送ることができる。
サービスごとのバス
本発明の実施形態に従えば、スケーラブルなメッセージバスは、独自のバス(またはトランスポートエンジン)をサービスに設け得る。
図5は、本発明の実施形態に従う、分散型データグリッドにおける様々なサービスのためのスケーラブルなメッセージバスのサポートを示す図である。図5に示されるように、分散型データグリッド500は、たとえばクラスタメンバ501〜504などの複数のクラスタメンバを含み得る。
さらに、各クラスタメンバは異なるサービスを含み得て、サービスの各々は別個のメッセージバスに対応付けられ得る。たとえば、クラスタメンバ501は、区分キャッシュサービス511〜512および呼出しサービス513を含み得て、これらはメッセージバス514〜516に対応付けられ得る。クラスタメンバ502は、区分キャッシュサービス521〜522および呼出しサービス523を含み得て、これらはメッセージバス524〜526に対応付けられ得る。クラスタメンバ503は、区分キャッシュサービス531〜532および呼出しサービス533を含み得て、これらはメッセージバス534〜536に対応付けられ得る。クラスタメンバ504は、区分キャッシュサービス541〜542および呼出しサービス543を含み得て、これらはメッセージバス544〜546に対応付けられ得る。
加えて、ネットワーク510は、分散型データグリッド500における異なるクラスタメンバ501〜504上の異なるメッセージバスを接続し得る。たとえば、ネットワーク510は、リモートダイレクトメモリアクセス(RDMA)プロトコルに基づき得る。また、ネットワーク510は、必要な場合、ユーザーデータグラムプロトコル(UDP)にフォールバックし得る。
本発明の実施形態に従えば、システムは、分散型データグリッドにおける異なるクラスタメンバ間でのデータ転送をサポートするために複数のメッセージバスを使用し得る。加えて、システムは、分散型データグリッドにおけるクラスタ化をサポートするためにデータグラム層520を使用し得るとともに、データ転送のために分散型データグリッドにおけるデータグラム層520をバイパスし得る。
したがって、システムは、エンドユーザーによって構成されたサービスの数に比してCPU利用を高めることができる。従来のネットワーキングモデルとは異なり、単一のトランスポートエンジンがクラスタノードごとの代わりにサービスごとに提供され得て、これにより、非常に多くのプロセッサが単一のクラスタノードを利用しようとした場合に分散型データグリッドがボトルネックを取り除くことができる。
図6は、本発明の実施形態に従う、分散型データグリッドにおけるプロバイダベースのトランスポート層に基づくメッセージ移送をサポートするための例示的なフローチャートを示す図である。図6に示されるように、ステップ601において、システムは、分散型データグリッドにおける複数のメッセージバスを提供することができ、分散型データグリッドは、複数のクラスタメンバを含む。さらに、ステップ602において、システムは、分散型データグリッドにおける各サービスを前記メッセージバスに対応付け得て、ステップ603において、システムは、分散型データグリッドにおける異なるクラスタメンバ間でのデータ転送をサポートするために複数のメッセージバスを使用し得る。
並列メッセージの逆シリアル化
本発明の実施形態に従えば、たとえばCoherenceデータグリッドなどの分散型データグリッドにおけるインバウンドメッセージを取り扱うために、スレッドのプールが使用され、スケーラブルなメッセージバスを駆動するための入出力(I/O)スレッドなどのスレッドが提供される。さらに、分散型データグリッド内のスレッドプールにメッセージをオフロードし、I/Oスレッド上の前方のメッセージを逆シリアル化することにより、システムはサービススレッドボトルネックの影響を最小化することができる。
図7は、本発明の実施形態に従う、分散型データグリッドにおける並列メッセージの逆シリアル化のサポートを示す図である。図7に示されるように、分散型データグリッド700におけるサービススレッド702は、メッセージバス701に対応付けられ得て、メッセージバス701は、たとえばメッセージ703〜704などの1つ以上の入力メッセージを受け取ることができる。
さらに、メッセージバス701は、スレッドプール710に対応付けられ得て、スレッドプール710は、たとえばI/Oスレッド711〜713などの1つ以上のスレッドを含む。分散型データグリッド700は、サービススレッド702において性能ボトルネックを取り除くためにこのスレッドプール710を利用し得る。
本発明の実施形態に従えば、分散型データグリッド700は、入力メッセージ703〜704を並列に処理するために、スレッドプール710における複数の異なるI/Oスレッド711〜713を使用し得る。したがって、システムは、メッセージタイプが識別され得る前に単一のスレッドにおいてすべてのメッセージの逆シリアル化を行うことによって、引き起こされるサービススレッドボトルネックを回避することができる。
たとえば、ダイレクトメモリアクセス(RDMA)プロトコルが使用される場合、メッセージバス701は、入力メッセージ703をサービススレッド702に運ぶ前に、メッセージ703を逆シリアル化するためにI/Oスレッド711を使用し得る。また、メッセージバス701は、入力メッセージ704をサービススレッド702に運ぶ前に、メッセージ704を逆シリアル化するためにI/Oスレッド713を使用し得る。
図8は、本発明の実施形態に従う、分散型データグリッドにおける並列メッセージの逆シリアル化をサポートするための例示的なフローチャートを示す図である。図8に示されるように、ステップ801において、システムは、スケーラブルなメッセージバスを駆動するように動作する複数の入出力(I/O)スレッドを提供するためにスレッドのプールを提供し得る。さらに、ステップ802において、システムは、複数のIOスレッド上の1つ以上のインバウンドメッセージを受け取り得て、ステップ803において、システムは、アドレス指定されたサービスに1つ以上のインバウンドメッセージを運ぶ前に、複数のI/Oスレッド上の1つ以上のインバウンドメッセージを逆シリアル化し得る。
メッセージ前処理
本発明の実施形態に従えば、スケーラブルなメッセージバスは、メッセージ前処理能力を提供し得て、これによって、受け取ったメッセージをサービススレッドに運ぶ前に、たとえば入出力(I/O)スレッド上の受け取ったメッセージの前処理が可能となる。
図9は、本発明の実施形態に従う、分散型データグリッドにおけるメッセージ前処理のサポートを示す図である。図9に示されるように、分散型データグリッド900におけるサービススレッド902は、メッセージバス901に対応付けられ得る。
メッセージバス901は、たとえばメッセージ905などの1つ以上の入力メッセージを受け取るために、たとえばI/Oスレッド903などの1つ以上のI/Oスレッドを使用し得る。加えて、メッセージバス901は、入力メッセージ905を逆シリアル化するために、I/Oスレッド903を使用し得る。
ひとたび入力メッセージ905が逆シリアル化されると、メッセージバス901は、入力メッセージ905をサービススレッド902へ運ぶ前に入力メッセージ905を前処理し得る。そして、サービススレッド902は、前処理された入力メッセージ905の処理をさらに完了させ得て、必要な場合は、入力メッセージ905を送るサービスリクエスターに応答907を戻し得る。
本発明の実施形態に従えば、入力メッセージ905は、前処理方法906を提供することができる。メッセージバス901は、入力メッセージ905を部分的または完全に処理するために、I/Oスレッド903上の入力メッセージ905に対応付けられた前処理方法906を実行し得る。さらに、様々なメッセージタイプのために、完全にメッセージの実行を取扱い(前処理段階において終了/応答907に達する)、サービススレッドの全体を回避することも可能であり得る。
本発明の実施形態に従えば、スケーラブルなメッセージバスのメッセージ前処理能力は、分散型データグリッド900において使用された場合に有益となり得る。第1に、サービススレッドは分散型データグリッドにおいてボトルネックとなり得ることから、メッセージ前処理能力を利用することにより、システムはサービススレッドの過負荷を回避することができる。第2に、メッセージ前処理を使用することにより、I/Oスレッド903とサービススレッド902との間でメッセージを移動させる場合に必要となり得るコンテキストスイッチをシステムが回避する。このようなコンテキストスイッチは、たとえばリモートダイレクトメモリアクセス(RDMA)ベースの移送の場合における全体的なリクエストのレイテンシーの大きな割合を引き起こし得る。第3に、スケーラブルなメッセージバスは、RDMAベースのバスの場合などにおいてスケーラブルなメッセージバスが複数の10個のスレッドを有していると、並列でメッセージを完全に実行させる。
さらに、スケーラブルなメッセージバスは、メッセージ前処理能力と並列メッセージ逆シリアル化能力とを結合させることができ、これにより、複数の入力メッセージが並列に逆シリアル化および前処理され得る。図10は、本発明の実施形態に従う、分散型データグリッドにおけるメッセージ前処理をサポートするための例示的なフローチャートを示す図である。図10に示されるように、ステップ1001において、システムは、分散型データグリッドにおけるクラスタメンバ上のサービススレッドにメッセージバスを対応付けることができる。さらに、ステップ1002において、システムは、入出力(I/O)スレッドを使用してメッセージバスで1つ以上の入力メッセージを受け取ることができ、ステップ1003において、システムは、前記入力メッセージの各々が分散型データグリッドにおけるサービススレッドに運ばれる前に、I/Oスレッド上の前記1つ以上の入力メッセージを前処理することができる。
図11は、本発明の実施形態に従う、分散型データグリッドにおけるスケーラブルなメッセージバスをサポートするためのシステム1100の概略機能ブロック図を示す図である。システム1100は、1つ以上のマイクロプロセッサと、1つ以上のマイクロプロセッサ上で実行される分散型データグリッドとを含む。分散型データグリッドは、複数のクラスタメンバを含み、複数のigure11を提供し、システム1100は、プロバイダモジュール1110と、対応付けモジュール1150と、データ転送モジュール1190とを含む。プロバイダモジュールは、メッセージバス1120,1130,1140などの複数のメッセージバスを提供するように適合される。対応付けモジュールは、分散型データグリッドにおける各サービス1160,1170,1180をそれぞれメッセージバス1120,1130,1140に対応付けるように適合される。データ転送モジュール1190は、メッセージバス1120,1130,1140などの複数のメッセージバスを使用して分散型データグリッドにおける異なるクラスタメンバ上の異なるサービス間でのデータ転送をサポートするように適合される。
図12は、上記のような本発明の原理に従って動作する分散型データグリッドにおけるスケーラブルなメッセージバスをサポートするように構成されたシステム1200の機能ブロック図を示す図である。システム1200の機能ブロックは、本発明の原理を実行するために、ハードウェア、ソフトウェア、またはハードウェアとソフトウェアとの組み合わせによって実施され得る。上記のような本発明の原理を実施するために図12に記載される機能ブロックが組み合わされ得ること、またはサブブロックに分離され得ることは、当業者によって理解される。このため、本明細書の記載は、機能ブロックの可能な組み合わせもしくは分離、またはさらなる定義をサポートし得る。
示されるように、システム1200は、メッセージバスプロバイダ1202と、対応付けユニット1204と、データ転送ユニット1206とを含む。メッセージバスプロバイダ1202は、分散型データグリッドにおける複数のメッセージバスを提供するように構成される。分散型データグリッドは、複数のクラスタメンバを含み、複数のサービスを提供し得る。対応付けユニット1204は、分散型データグリッドにおける各サービスをメッセージバスに対応付けるように構成される。データ転送ユニット1206は、分散型データグリッドにおける異なるクラスタメンバ上の異なるサービス間でのデータ転送をサポートするために、複数のメッセージバスを使用するように構成される。
例において、システム1200は、分散型データグリッドにおけるクラスタ化をサポートするように構成されたデータグラム層1208をさらに備え得る。
例において、システム1200は、データ転送のために分散型データグリッドにおけるデータグラム層1208をバイパスするように構成されたバイパスユニット1210をさらに備え得る。
例において、メッセージバスプロバイダ1202は、メッセージバスをサポートするために使用される。
例において、メッセージバスプロバイダ1202は、プラガブルプロバイダである。
例において、システム1200は、複数のバスプロトコルからバスプロトコルを選択するように構成された単一のスイッチ1212をさらに備え得る。
例において、システム1200は、メッセージバスに障害が起こった場合にクラスタメンバに対して停止検知を発動するように構成された発動ユニット1214をさらに備え得る。
例において、システム1200は、ネットワークを介して、分散型データグリッドにおける異なるクラスタメンバ上の異なるメッセージバスを接続するように構成された接続ユニット1216をさらに備え得る。
例において、ネットワークは、リモートダイレクトメモリアクセス(RDMA)プロトコルに基づく。他の例において、ネットワークは、ユーザーデータグラムプロトコル(UDP)にフォールバックする。
本発明は、本開示の教示に従ってプログラミングされた1つ以上のプロセッサ、メモリ、および/またはコンピュータ可読記憶媒体を含む、1つ以上の従来の汎用もしくは専用デジタルコンピューター、コンピューティング装置、マシン、またはマイクロプロセッサを使用して簡便に実施され得る。適切なソフトウェアコーディングは、ソフトウェア技術の当業者にとって明らかなように、本開示の教示に基づいてスキルを有するプログラマによって容易に準備され得る。
一部の実施形態において、本発明は、本発明の任意の処理を行うようにコンピュータをプログラミングするために使用され得る命令を記憶する記憶媒体もしくはコンピュータ可読媒体であるコンピュータプログラム製品を含む。記憶媒体は、フロッピー(登録商標)ディスク、光ディスク、DVD、CD−ROM、マイクロドライブ、および光磁気ディスクを含む任意のタイプのディスク、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、フラッシュメモリデバイス、磁気もしくは光カード、ナノシステム(分子メモリICを含む)、または命令および/もしくはデータを記憶するのに適した任意のタイプの媒体もしくは装置を含み得るが、これらに限定されない。
本発明の上記の記述は、例示および説明を目的として提供された。これは、完全に網羅すること、または開示されたとおりの正確な形態に本発明を限定することを意図していない。多くの変形および変更が当業者にとって明らかとなる。変形および変更は、開示された特徴の任意の妥当な組み合わせを含む。実施形態は、本発明の原理およびその実用的な用途を最良に説明するために選択および記載され、これによって、当業者は本発明の様々な実施形態、および考えられる特定の使用に適した様々な変形を理解することができる。本発明の範囲は、以下の請求項およびその均等物によって規定されることが意図される。

Claims (12)

  1. 散型データグリッドにおけるスケーラブルなメッセージバスをサポートする方法であって、
    前記分散型データグリッドは複数のクラスタメンバを含み、
    前記複数のクラスタメンバの各々は、1つ以上のマイクロプロセッサ上で動作し、かつ、複数のサービスを提供し、前記方法は、
    前記分散型データグリッド内の前記複数のクラスタメンバの各々において複数のメッセージバスを提供するステップと、
    前記複数のクラスタメンバの各々によって提供された前記複数のサービスのうちの別個のサービスに、前記複数のメッセージバスの各々を対応付けるステップと、
    前記複数のクラスタメンバの各々によって提供された前記複数のサービスと、前記分散型データグリッドにおける複数の異なるクラスタメンバ上の複数の異なるサービスとの間でのネットワークを介したデータ転送をサポートするために前記複数のメッセージバスを使用するステップとを備える、方法。
  2. 前記分散型データグリッドにおける前記複数のクラスタメンバのクラスタ化をサポートするためにデータグラム層を使用するステップをさらに備える、請求項1に記載の方法。
  3. 前記複数のメッセージバスを使用した前記ネットワークを介したデータ転送は、前記分散型データグリッドにおける前記データグラム層をバイパスする、請求項2に記載の方法。
  4. 前記複数のクラスタメンバの各々において前記複数のメッセージバスをサポートするために、前記複数のクラスタメンバの各々においてメッセージバスプロバイダを提供するステップをさらに備える、請求項1から3のいずれか1項に記載の方法。
  5. 前記メッセージバスプロバイダを提供するステップは、プラガブルなメッセージバスプロバイダを提供するステップを備える、請求項4に記載の方法。
  6. 複数のバスプロトコルからバスプロトコルを選択するために単一のスイッチを使用する前記メッセージバスプロバイダに対して、構成ファイルを提供するステップをさらに備える、請求項4または5に記載の方法。
  7. 各前記クラスタメンバの前記複数のメッセージバスのうちのいずれかのメッセージバスに障害が起こった場合に前記複数のクラスタメンバの各々に対して停止検知を発動するステップをさらに備える、請求項1から6のいずれか1項に記載の方法。
  8. 前記ネットワークを介してデータ転送されたメッセージの並列処理のためにスレッドプールを利用するように、各クラスタメンバの前記複数のメッセージバスの各々を構成するステップをさらに備える、請求項1から7のいずれか1項に記載の方法。
  9. 前記複数のメッセージバスを使用した前記ネットワークを介したデータ転送は、リモートダイレクトメモリアクセス(RDMA)プロトコルを使用する、請求項1からのいずれか1項に記載の方法。
  10. 前記ネットワークをユーザーデータグラムプロトコル(UDP)にフォールバックさせるステップをさらに備える、請求項1からのいずれか1項に記載の方法。
  11. マシン可読命令を備えるコンピュータプログラムであって、前記命令は、1つ以上のコンピュータシステムによって実行されると、請求項1から10のいずれか1項に記載の前記方法を前記1つ以上のコンピュータシステムに行わせる、コンピュータプログラム。
  12. 分散型データグリッドにおけるスケーラブルなメッセージバスをサポートするシステムであって、
    各々がマイクロプロセッサとメモリとをなえた複数のコンピュータサーバと
    前記複数のコンピュータサーバを接続するネットワークと、
    前記複数のコンピュータサーバ上で動作する複数のクラスタメンバとを備え、前記複数のクラスタメンバの各々は複数のサービスを提供し、前記システムはさらに、
    前記分散型データグリッド内の前記複数のクラスタメンバの各々における複数のメッセージバスを備え、前記複数のメッセージバスの各々は、前記複数のクラスタメンバの各々によって提供された前記複数のサービスのうちの別個のサービスに対応付けられており、
    前記複数のメッセージバスは、前記複数のクラスタメンバの各々によって提供された前記複数のサービスと、前記分散型データグリッド内の複数の異なるクラスタメンバ上の複数の異なるサービスとの間でのネットワークを介したデータ転送をサポートするために使用される、システム。
JP2015531256A 2012-09-07 2013-09-06 分散型データグリッドクラスタにおけるスケーラブルなメッセージバスをサポートするシステムおよび方法 Active JP6310461B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261698216P 2012-09-07 2012-09-07
US61/698,216 2012-09-07
US201261701453P 2012-09-14 2012-09-14
US61/701,453 2012-09-14
PCT/US2013/058605 WO2014039890A1 (en) 2012-09-07 2013-09-06 System and method for supporting a scalable message bus in a distributed data grid cluster

Publications (3)

Publication Number Publication Date
JP2015531512A JP2015531512A (ja) 2015-11-02
JP2015531512A5 JP2015531512A5 (ja) 2016-10-20
JP6310461B2 true JP6310461B2 (ja) 2018-04-11

Family

ID=49223884

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2015531258A Active JP6276273B2 (ja) 2012-09-07 2013-09-06 分散型データグリッドクラスタにおけるメッセージ前処理をサポートするシステムおよび方法
JP2015531256A Active JP6310461B2 (ja) 2012-09-07 2013-09-06 分散型データグリッドクラスタにおけるスケーラブルなメッセージバスをサポートするシステムおよび方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2015531258A Active JP6276273B2 (ja) 2012-09-07 2013-09-06 分散型データグリッドクラスタにおけるメッセージ前処理をサポートするシステムおよび方法

Country Status (5)

Country Link
US (2) US9535862B2 (ja)
EP (2) EP2893689B1 (ja)
JP (2) JP6276273B2 (ja)
CN (2) CN104620559B (ja)
WO (2) WO2014039895A1 (ja)

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104620559B (zh) * 2012-09-07 2018-03-27 甲骨文国际公司 用于支持分布式数据网格集群中的可伸缩消息总线的系统和方法
US10425386B2 (en) 2016-05-11 2019-09-24 Oracle International Corporation Policy enforcement point for a multi-tenant identity and data security management cloud service
US10341410B2 (en) 2016-05-11 2019-07-02 Oracle International Corporation Security tokens for a multi-tenant identity and data security management cloud service
US10454940B2 (en) 2016-05-11 2019-10-22 Oracle International Corporation Identity cloud service authorization model
US9781122B1 (en) 2016-05-11 2017-10-03 Oracle International Corporation Multi-tenant identity and data security management cloud service
KR101871902B1 (ko) * 2016-05-11 2018-06-27 오라클 인터내셔날 코포레이션 멀티-테넌트 아이덴티티 및 데이터 보안 관리 클라우드 서비스
US9838377B1 (en) 2016-05-11 2017-12-05 Oracle International Corporation Task segregation in a multi-tenant identity and data security management cloud service
US10878079B2 (en) 2016-05-11 2020-12-29 Oracle International Corporation Identity cloud service authorization model with dynamic roles and scopes
US9838376B1 (en) 2016-05-11 2017-12-05 Oracle International Corporation Microservices based multi-tenant identity and data security management cloud service
US10581820B2 (en) 2016-05-11 2020-03-03 Oracle International Corporation Key generation and rollover
US10530578B2 (en) 2016-08-05 2020-01-07 Oracle International Corporation Key store service
US10585682B2 (en) 2016-08-05 2020-03-10 Oracle International Corporation Tenant self-service troubleshooting for a multi-tenant identity and data security management cloud service
US10735394B2 (en) 2016-08-05 2020-08-04 Oracle International Corporation Caching framework for a multi-tenant identity and data security management cloud service
US10255061B2 (en) 2016-08-05 2019-04-09 Oracle International Corporation Zero down time upgrade for a multi-tenant identity and data security management cloud service
US10263947B2 (en) 2016-08-05 2019-04-16 Oracle International Corporation LDAP to SCIM proxy service
US10516672B2 (en) 2016-08-05 2019-12-24 Oracle International Corporation Service discovery for a multi-tenant identity and data security management cloud service
US10505941B2 (en) 2016-08-05 2019-12-10 Oracle International Corporation Virtual directory system for LDAP to SCIM proxy service
US10484382B2 (en) 2016-08-31 2019-11-19 Oracle International Corporation Data management for a multi-tenant identity cloud service
US10846390B2 (en) 2016-09-14 2020-11-24 Oracle International Corporation Single sign-on functionality for a multi-tenant identity and data security management cloud service
US10511589B2 (en) 2016-09-14 2019-12-17 Oracle International Corporation Single logout functionality for a multi-tenant identity and data security management cloud service
US10594684B2 (en) 2016-09-14 2020-03-17 Oracle International Corporation Generating derived credentials for a multi-tenant identity cloud service
US10484243B2 (en) 2016-09-16 2019-11-19 Oracle International Corporation Application management for a multi-tenant identity cloud service
US10791087B2 (en) 2016-09-16 2020-09-29 Oracle International Corporation SCIM to LDAP mapping using subtype attributes
US10445395B2 (en) 2016-09-16 2019-10-15 Oracle International Corporation Cookie based state propagation for a multi-tenant identity cloud service
JP7018437B2 (ja) 2016-09-16 2022-02-10 オラクル・インターナショナル・コーポレイション マルチテナントアイデンティティおよびデータセキュリティ管理クラウドサービスのためのテナントおよびサービス管理
US10567364B2 (en) 2016-09-16 2020-02-18 Oracle International Corporation Preserving LDAP hierarchy in a SCIM directory using special marker groups
US10341354B2 (en) 2016-09-16 2019-07-02 Oracle International Corporation Distributed high availability agent architecture
US10904074B2 (en) 2016-09-17 2021-01-26 Oracle International Corporation Composite event handler for a multi-tenant identity cloud service
US10261836B2 (en) 2017-03-21 2019-04-16 Oracle International Corporation Dynamic dispatching of workloads spanning heterogeneous services
US10454915B2 (en) 2017-05-18 2019-10-22 Oracle International Corporation User authentication using kerberos with identity cloud service
US10348858B2 (en) 2017-09-15 2019-07-09 Oracle International Corporation Dynamic message queues for a microservice based cloud service
US11308132B2 (en) 2017-09-27 2022-04-19 Oracle International Corporation Reference attributes for related stored objects in a multi-tenant cloud service
US11271969B2 (en) 2017-09-28 2022-03-08 Oracle International Corporation Rest-based declarative policy management
US10834137B2 (en) 2017-09-28 2020-11-10 Oracle International Corporation Rest-based declarative policy management
US10705823B2 (en) 2017-09-29 2020-07-07 Oracle International Corporation Application templates and upgrade framework for a multi-tenant identity cloud service
US10715564B2 (en) 2018-01-29 2020-07-14 Oracle International Corporation Dynamic client registration for an identity cloud service
US10659289B2 (en) 2018-03-22 2020-05-19 Servicenow, Inc. System and method for event processing order guarantee
US10931656B2 (en) 2018-03-27 2021-02-23 Oracle International Corporation Cross-region trust for a multi-tenant identity cloud service
US11165634B2 (en) 2018-04-02 2021-11-02 Oracle International Corporation Data replication conflict detection and resolution for a multi-tenant identity cloud service
US10798165B2 (en) 2018-04-02 2020-10-06 Oracle International Corporation Tenant data comparison for a multi-tenant identity cloud service
US11258775B2 (en) 2018-04-04 2022-02-22 Oracle International Corporation Local write for a multi-tenant identity cloud service
US11012444B2 (en) 2018-06-25 2021-05-18 Oracle International Corporation Declarative third party identity provider integration for a multi-tenant identity cloud service
US10764273B2 (en) 2018-06-28 2020-09-01 Oracle International Corporation Session synchronization across multiple devices in an identity cloud service
US11693835B2 (en) 2018-10-17 2023-07-04 Oracle International Corporation Dynamic database schema allocation on tenant onboarding for a multi-tenant identity cloud service
US11321187B2 (en) 2018-10-19 2022-05-03 Oracle International Corporation Assured lazy rollback for a multi-tenant identity cloud service
CN111510469B (zh) * 2019-01-31 2023-04-25 上海哔哩哔哩科技有限公司 一种消息处理方法和装置
US11651357B2 (en) 2019-02-01 2023-05-16 Oracle International Corporation Multifactor authentication without a user footprint
US11061929B2 (en) 2019-02-08 2021-07-13 Oracle International Corporation Replication of resource type and schema metadata for a multi-tenant identity cloud service
US11321343B2 (en) 2019-02-19 2022-05-03 Oracle International Corporation Tenant replication bootstrap for a multi-tenant identity cloud service
US11669321B2 (en) 2019-02-20 2023-06-06 Oracle International Corporation Automated database upgrade for a multi-tenant identity cloud service
US11792226B2 (en) 2019-02-25 2023-10-17 Oracle International Corporation Automatic api document generation from scim metadata
US11423111B2 (en) 2019-02-25 2022-08-23 Oracle International Corporation Client API for rest based endpoints for a multi-tenant identify cloud service
US11870770B2 (en) 2019-09-13 2024-01-09 Oracle International Corporation Multi-tenant identity cloud service with on-premise authentication integration
US11687378B2 (en) 2019-09-13 2023-06-27 Oracle International Corporation Multi-tenant identity cloud service with on-premise authentication integration and bridge high availability
US11611548B2 (en) 2019-11-22 2023-03-21 Oracle International Corporation Bulk multifactor authentication enrollment
US11863469B2 (en) * 2020-05-06 2024-01-02 International Business Machines Corporation Utilizing coherently attached interfaces in a network stack framework

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1185673A (ja) * 1997-09-02 1999-03-30 Hitachi Ltd 共有バスの制御方法とその装置
AU5242600A (en) * 1999-06-15 2001-01-02 Interactive Research Limited A broadband interconnection system
US8099488B2 (en) * 2001-12-21 2012-01-17 Hewlett-Packard Development Company, L.P. Real-time monitoring of service agreements
US7716061B2 (en) * 2003-03-27 2010-05-11 International Business Machines Corporation Method and apparatus for obtaining status information in a grid
JP2005056408A (ja) * 2003-07-23 2005-03-03 Semiconductor Energy Lab Co Ltd マイクロプロセッサ及びグリッドコンピューティングシステム
US20050080982A1 (en) * 2003-08-20 2005-04-14 Vasilevsky Alexander D. Virtual host bus adapter and method
US20060168269A1 (en) * 2004-12-30 2006-07-27 Microsoft Corporation Bus abstraction
US20070168454A1 (en) * 2006-01-19 2007-07-19 International Business Machines Corporation System and method for host-to-host communication
JP2008152594A (ja) * 2006-12-19 2008-07-03 Hitachi Ltd マルチコアプロセッサ計算機の高信頼化方法
US8751626B2 (en) * 2007-10-23 2014-06-10 Microsoft Corporation Model-based composite application platform
JP5047072B2 (ja) * 2008-06-20 2012-10-10 三菱電機株式会社 データ転送システム及び転送装置及び監視装置及び転送プログラム及び監視プログラム
JP2010134724A (ja) * 2008-12-05 2010-06-17 Canon It Solutions Inc メッセージキューイング監視装置、メッセージキューイング監視方法、プログラム、及び記録媒体
JP5236581B2 (ja) * 2009-06-16 2013-07-17 新日鉄住金ソリューションズ株式会社 送信装置、その制御方法、プログラム及び情報処理システム
CN102262557B (zh) * 2010-05-25 2015-01-21 运软网络科技(上海)有限公司 通过总线架构构建虚拟机监控器的方法及性能服务框架
CN103562882B (zh) * 2011-05-16 2016-10-12 甲骨文国际公司 用于提供消息传送应用程序接口的系统和方法
US8805984B2 (en) * 2011-07-14 2014-08-12 Red Hat, Inc. Multi-operational transactional access of in-memory data grids in a client-server environment
CN104620559B (zh) * 2012-09-07 2018-03-27 甲骨文国际公司 用于支持分布式数据网格集群中的可伸缩消息总线的系统和方法

Also Published As

Publication number Publication date
US20140075071A1 (en) 2014-03-13
US9535862B2 (en) 2017-01-03
EP2893688A1 (en) 2015-07-15
CN104620559A (zh) 2015-05-13
US20140075078A1 (en) 2014-03-13
WO2014039895A1 (en) 2014-03-13
CN104620558A (zh) 2015-05-13
JP6276273B2 (ja) 2018-02-07
WO2014039890A1 (en) 2014-03-13
JP2015527681A (ja) 2015-09-17
EP2893688B1 (en) 2018-10-24
US9535863B2 (en) 2017-01-03
JP2015531512A (ja) 2015-11-02
EP2893689A1 (en) 2015-07-15
CN104620559B (zh) 2018-03-27
EP2893689B1 (en) 2019-03-13
CN104620558B (zh) 2018-02-16

Similar Documents

Publication Publication Date Title
JP6310461B2 (ja) 分散型データグリッドクラスタにおけるスケーラブルなメッセージバスをサポートするシステムおよび方法
US10050857B2 (en) System and method for supporting a selection service in a server environment
US10862965B2 (en) System and method for topics implementation in a distributed data computing environment
US9185054B2 (en) System and method for providing zero buffer copying in a middleware machine environment
US8930527B2 (en) High availability enabler
US9749445B2 (en) System and method for updating service information for across-domain messaging in a transactional middleware machine environment
CN105493474B (zh) 用于支持用于同步分布式数据网格中的数据的分区级别日志的系统及方法
EP3087483B1 (en) System and method for supporting asynchronous invocation in a distributed data grid
JP6088528B2 (ja) トランザクションミドルウェアマシン環境においてシングルポイントボトルネックを防止するためのシステムおよび方法
CN105100185B (zh) 事务中间件机器环境中处理数据库状态通知的系统和方法
JP5945543B2 (ja) ミドルウェアマシン環境を含むシステム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160902

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160902

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170731

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170905

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20171205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180205

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180316

R150 Certificate of patent or registration of utility model

Ref document number: 6310461

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250