JP2011514087A - publish/subscribeメッセージ・ブローカ - Google Patents

publish/subscribeメッセージ・ブローカ Download PDF

Info

Publication number
JP2011514087A
JP2011514087A JP2010549097A JP2010549097A JP2011514087A JP 2011514087 A JP2011514087 A JP 2011514087A JP 2010549097 A JP2010549097 A JP 2010549097A JP 2010549097 A JP2010549097 A JP 2010549097A JP 2011514087 A JP2011514087 A JP 2011514087A
Authority
JP
Japan
Prior art keywords
message
topic
sequence
new
messages
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
JP2010549097A
Other languages
English (en)
Other versions
JP5270697B2 (ja
Inventor
ジョーンズ、ガレス、エドワード
ホワイトヘッド、マシュー、ロバート
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2011514087A publication Critical patent/JP2011514087A/ja
Application granted granted Critical
Publication of JP5270697B2 publication Critical patent/JP5270697B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/526Mutual exclusion algorithms
    • 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/542Event management; Broadcasting; Multicasting; Notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services

Abstract

【課題】
【解決手段】publish/subscribeメッセージ・ブローカを操作する方法が、パブリッシャからトピックに関するメッセージを受信すること、メッセージをメッセージのシーケンスの開始として識別すること、トピックに対する1つまたは複数の既存のサブスクライバにメッセージを送信すること、トピックに対して新しいサブスクライバを登録すること、トピックに関する別のメッセージをパブリッシャから受信すること、およびトピックに対する1つまたは複数の既存のサブスクライバにその別のメッセージを送信するが、トピックに対する登録済みの新しいサブスクライバには送信しないことを含む。これを達成することのできる一方式は、メッセージをメッセージのシーケンスの開始として識別するステップに続いて、メッセージ・ブローカが、メッセージのシーケンスに対応する新しいサブトピックを作成し、新しいトピックに対して1つまたは複数の既存のサブスクライバを加入させることである。シーケンスに関係する、受信された任意の新しいメッセージが、サブトピックに対して発行されるが、元のトピックに対しては発行されない。トピックに対するいかなる新しいサブスクライバも、サブトピックには加入させられない。
【選択図】図1

Description

本発明は、publish/subscribeメッセージ・ブローカを操作する方法、メッセージ・ブローカ自体、およびpublish/subscribeメッセージ・ブローカを操作するコンピュータ可読媒体上のコンピュータ・プログラム製品に関する。
publish/subscribe(pub/sub)は、非同期メッセージングパラダイムである。pub/subシステムでは、パブリッシャがメッセージ・ブローカにメッセージをポストし、サブスクライバがそのブローカにサブスクリプションを登録する。トピック・ベースのシステムでは、ブローカによってホストされるトピックスに対してメッセージが発行される。トピック・ベースのシステムでのサブスクライバは、サブスクライバが加入するトピックスに対して発行されたすべてのメッセージを受信し、トピックに対するすべてのサブスクライバが同一のメッセージを受信する。pub/subは非常に有用なパラダイムであり、各pub/subメッセージが、メッセージ自体のプロパティ(通常はトピック、時には内容)に従ってルーティングされる。各メッセージが到着するときに、第1ステップとして、ブローカはメッセージを解析し、正しいサブスクライバのセットを求め、第2ステップで、それに応じてメッセージが配布される。システムは非同期式である。現在、publish subscribe環境では、パブリッシャは、サブスクライバがそれに関するメッセージを受信することのできるトピックに対してメッセージを発行することができる。あるシナリオでは、発行とサブスクリプションの両方を、指定のトピックから別のトピックにリダイレクトすることが有用となる。
何らかの意味をなすためにはすべてが受信されなければならないメッセージのシーケンスを発行するとき、すなわち1つを除いたすべてのメッセージを受信することが有用とはならないときがある。従って、この発明の目的は、トピックが既にシーケンスを開始している場合に、新しいサブスクライバがそのトピックからメッセージを受信しないようにトピックを操作するメッセージ・ブローカを提供することにある。
本発明の第1の態様によれば、publish/subscribeメッセージ・ブローカを操作する方法であって、パブリッシャからトピックに関するメッセージを受信すること、メッセージをメッセージのシーケンスの開始として識別すること、トピックに対する1つまたは複数の既存のサブスクライバにメッセージを送信すること、トピックに対して新しいサブスクライバを登録すること、トピックに関する別のメッセージをパブリッシャから受信すること、およびトピックに対する1つまたは複数の既存のサブスクライバにその別のメッセージを送信するが、トピックに対する登録済みの新しいサブスクライバには送信しないことを含む方法が提供される。
本発明の第2の態様によれば、パブリッシャからトピックに関するメッセージを受信し、メッセージをメッセージのシーケンスの開始として識別し、トピックに対する1つまたは複数の既存のサブスクライバにメッセージを送信し、トピックに対する新しいサブスクライバを登録し、トピックに関する別のメッセージをパブリッシャから受信し、トピックに対する1つまたは複数の既存のサブスクライバにその別のメッセージを送信するが、トピックに対する登録済みの新しいサブスクライバには送信しないように構成されたpublish/subscribeメッセージ・ブローカが提供される。
本発明の第3の態様によれば、publish/subscribeメッセージ・ブローカを操作するコンピュータ可読媒体上のコンピュータ・プログラム製品であって、パブリッシャからトピックに関するメッセージを受信する命令と、メッセージをメッセージのシーケンスの開始として識別する命令と、トピックに対する1つまたは複数の既存のサブスクライバにメッセージを送信する命令と、トピックに対して新しいサブスクライバを登録する命令と、トピックに関する別のメッセージをパブリッシャから受信する命令と、トピックに対する1つまたは複数の既存のサブスクライバにその別のメッセージを送信するが、トピックに対する登録済みの新しいサブスクライバには送信しない命令とを含む製品が提供される。
好ましい実施形態により、トピックが既にシーケンスを開始している場合に、新しいサブスクライバがそのトピックからメッセージを受信しないようにトピックを操作するメッセージ・ブローカを提供することが可能となる。好ましい実施形態は、パブリッシャとサブスクライバの両方によって使用されるトピックをクライアント知識なしに1つまたは多数の異なるトピックスにどのようにリダイレクトすることができるかを記述する。
これが有用となる特定の一状況は、何らかの意味をなすためにはすべてが受信されなければならないメッセージのシーケンスを発行するとき、すなわち1つを除いたすべてのメッセージを受信することが有用とはならないときである。パブリッシャがゲームでのそれぞれの動きを特定のトピックに対して発行するチェスのゲームを考慮する。サブスクライバがこうした発行をゲームの途中で受信することは意味をなさない。そうしたことは、(サブスクライバが盤上のすべての駒の現在位置を理解するためには)前のメッセージなしでは意味をなさないからである。
好適な場合として、メッセージ・ブローカを操作する方法では、メッセージをメッセージのシーケンスの開始として識別するステップは、受信したメッセージの内容にアクセスすること、およびアクセスしたメッセージの内容から、メッセージをメッセージのシーケンスの開始として識別することを含む。メッセージ・ブローカは、メッセージの新しいシーケンスが開始した時を識別しなければならない。このことを容易に達成することのできる一方法は、メッセージが新しいシーケンスの開始であることを示す、メッセージの内容の中の明示的または暗黙的マーカについて、受信したメッセージの内容を調べることである。例えば、パブリッシャは、メッセージの本文内に、このメッセージが新しいシーケンスの第1メッセージであることをメッセージ・ブローカに示す所定のフラグを含めることができる。フラグがない場合、メッセージの内容からメッセージがシーケンスの開始であることを判定するように、メッセージ・ブローカをインテリジェントに構成することができる。例えば、チェス・ゲームの動きに関して維持されるトピックの上記の例では、例えば「1.e4」または同様の何かの存在が、新しいシーケンスを示す。メッセージを新しいシーケンスの開始として識別することは、メッセージの内容以外の何か、例えばパブリッシャの位置、または(恐らくは過去のメッセージが送信された時間に対する)メッセージが送信された時間に基づくことができる。
好ましくは、メッセージ・ブローカを操作する方法は、トピックに関するさらに別のメッセージを受信すること、そのさらに別のメッセージをメッセージのシーケンスの終了として識別すること、ならびにトピックに対する1つまたは複数の既存のサブスクライバ、およびトピックに対する登録済みの新しいサブスクライバに、トピックに関する将来のすべてのメッセージを送信することをさらに含む。メッセージ・ブローカは、シーケンスの終了を識別し、シーケンス条件に関連する特別な操作手順を効果的に終了させるように構成することもできる。終了が判定された後は、すべてのサブスクライバが同じ立場に戻り、トピックに関して受信される任意の新しいメッセージは、古いサブスクライバであっても、新しいサブスクライバであっても、すべてのサブスクライバに送信されるようになる。新しいシーケンスを開始する別のメッセージが受信される場合、プロセスを再び開始することができる。
理想的には、メッセージ・ブローカを操作する方法は、メッセージをメッセージのシーケンスの開始として識別するステップに続いて、メッセージのシーケンスに対応する新しいトピックを作成すること、および新しいトピックに対して1つまたは複数の既存のサブスクライバを加入させることをさらに含む。次いでこれは、トピックに関して受信されるすべての将来のメッセージについて、トピックに関して各メッセージを発行するか、それとも新しいトピックに関して各メッセージを発行するかを判定することをさらに含むことができる。これは、メッセージ・ブローカがメッセージの既存のシーケンスからの新しいサブスクライバの分離を実施することのできる一方式である。メッセージ・ブローカは、メッセージのシーケンスに対応する新しいサブトピックを作成し、新しいトピックに1つまたは複数の既存のサブスクライバを加入させる。シーケンスに関係する、受信された任意の新しいメッセージは、元のトピックに対してではなく、サブトピックに対して発行される。トピックに対するいかなる新しいサブスクライバも、サブトピックには加入させられない。
これから、添付の図面を参照しながら、単なる例示として本発明の実施形態を説明する。
publish/subscribeシステムの略図である。 publish/subscribeシステムの別の略図である。 publish/subscribeシステムのメッセージ・ブローカを操作する方法の流れ図である。 publish/subscribeシステムの第2実施形態の略図である。 publish/subscribeシステムの第2実施形態の略図である。 publish/subscribeシステムの第2実施形態の略図である。
publish/subscribeシステムの単純な実施形態が、図1に示されている。このシステムは、メッセージ・ブローカ10、パブリッシャ12、および2つのサブスクライバ14を含む。メッセージ・ブローカ10は、適切なネットワークを介してアクセスされるサーバで実装される。パブリッシャ12およびサブスクライバ14は、ブローカ10を実行するサーバに接続する能力を有する任意のコンピューティング機能でよい。パブリッシャ12およびサブスクライバ14は、デスクトップ・コンピュータ、または例えば携帯電話やPDAなどのモバイル装置でよい。接続装置のパブリッシャまたはサブスクライバとしての指定は、論理ステータスであり、実際には、任意の接続装置は、異なる時間にパブリッシャとサブスクライバのどちらにもなることができる。
ブローカ10は、トピックス16のリストを維持し、この例では、トピックス16は第1トピックT1および第2トピックT2である。周知のインターフェースを介して、接続装置は、ブローカ10によって維持されるトピックスを発見することができ、望む通りにトピックスに参加し、脱退することができる。接続装置はまた、ブローカ10によって維持される適切な許可ポリシーに対する接続装置のステータスに応じて、トピックスを作成することもできる。サブスクライバS1は、トピックT1とトピックT2のどちらにも加入する。ブローカ10は、こうしたトピックス16にそのサブスクライバ14を登録したと言われる。一方、サブスクライバS2は、トピックT1に関するサブスクライバであるだけである。一般には、トピックス16は、より記述的である「ゲーム」などの指定を有し、トピックス16の存在を照会する装置は、トピック16についての情報も見つけることができる。
図1は、publish/subscribeシステムの非常に単純な実施形態を示し、実際には、ブローカ10は、非常に多数のトピックスをそのサブスクライバと共に格納する。ブローカ10で格納される各サブスクライバは、アドレスを有する。このアドレス(IPアドレスなど)は、関連するサブスクライビング装置へのルーティングを定義する。
メッセージ18が図1に示されており、メッセージ18は、それが関係するトピックについての情報をその中に含む。単純なシステムでは、ブローカ10に送信される各メッセージ18は、ヘッダおよび本文を含む。ヘッダは、トピック指定(例えばT1)を含み、またはトピック指定からなり、本文は、メッセージ18のテキストを含む。ブローカ10は、関連するサブスクライバ14へのメッセージ18のルーティングを実現する。この場合、メッセージ18はトピックT1に関係するので、ブローカ10は、そのメッセージ18を2つのサブスクライバS1およびS2にルーティングする。一般には、ブローカ10は、メッセージ18のどんなコピーも維持しないが、ブローカ10に対する管理アクセスを介してこのことを適合させることができる。例えば、ブローカ10は、トピック16に対する任意の新しいサブスクライバに各トピック16に関する最後のメッセージ18を送信するために、そのメッセージを格納することができる。
図2は、新しいサブスクライバS3がトピックT1に加入した後にpublish/subscribeシステムに何が生じるかを示す。新しいサブスクライバ14は、ブローカ10に適切な管理メッセージを送信することにより、トピックT1に加入することを望むことをブローカ10に登録する。図からわかるように、ブローカ10は、そのトピックT1に関してブローカ10のリスト16内に新しいサブスクライバを登録している。パブリッシャ12から新しいメッセージ18’を受信したとき、ブローカ10は、そのトピックに対する現サブスクライバのすべてにそのメッセージ18’を配布し、現サブスクライバは、サブスクライバS1、S2、およびS3である。ブローカ10によって維持されるリスト16は、サブスクライバが特定のトピックス16に加入し、脱退することに伴って定期的に変化する。
しかし、標準メッセージング・ブローカの動作は、図3の流れ図に従って改善することができる。これは、標準構成では、新しいサブスクライバ14がトピック16に加入するとすぐにメッセージ18の受信を首尾よく開始することができ、その結果、新しいサブスクライバ14がシーケンスの先の部分を形成するメッセージ18を受信していないときに、シーケンスの一部を形成するメッセージ18を受信することがあるからである。この後のメッセージ内容は、後者のサブスクライバ14にとって紛らわしい可能性があり、または無意味である可能性が考えられる。この状況に対処するために、図1および2のメッセージ・ブローカ10が、図3のプロセス流れ図に従って動作するように構成される。
publish/subscribeメッセージ・ブローカを操作する方法は、第1に、パブリッシャ12からトピック16に関するメッセージ18を受信するステップS1と、第2に、メッセージ18をメッセージのシーケンスの開始として識別するステップS2とを含む。ブローカ10は、受信したメッセージ18をメッセージの新しいシーケンスとの開始として識別しなければならない。これを達成する一方式は、メッセージ18が新しいシーケンスの開始であることを示す、メッセージ18の内容の中のマーカ(明示的または暗黙的でよい)について、受信したメッセージ18の内容をブローカ10が調べることである。
例えば、メッセージ18の元のパブリッシャ12は、メッセージの本文内に、メッセージ18がメッセージの新しいシーケンスの開始であることをメッセージ・ブローカ10に示すフラグを所定のプロトコルに従って含めることができる。フラグがない場合、メッセージの内容からメッセージ18がメッセージのシーケンスの最初であることを(1つまたは複数の処理アルゴリズムによって)判定するように、メッセージ・ブローカ10を構成することができる。例えば、トピック16が1つまたは複数のチェス・ゲームの動きに関して維持される場合、例えば「1.e4」または同様の何かの存在が、新しいシーケンスが始まったことを示す。
メッセージを新しいシーケンスの開始として識別することは、メッセージ18の内容以外の何かに基づくことができる。例えば、特定のパブリッシャ12をメッセージ18の新しいシーケンスのソースとして識別するようにメッセージ・ブローカ10を構成することができ、その場合、ステップS2でのメッセージ18の識別は、パブリッシャ12の位置に基づく。ブローカ10によって実装される別の実現可能な方式は、絶対時間(その日の第1メッセージ)、または例えば以前のメッセージが送信された時間に関係する相対時間としての、メッセージが送信された時間に関係付けることができる。
メッセージ18を受信した後、ステップS3で、メッセージ・ブローカ10が、トピック16に対する(1つまたは複数の)既存のサブスクライバ14にメッセージ18を送信するように構成される。この時点で、ブローカ10は、受信したメッセージをまさにあたかも通常のメッセージ18であるかのように扱っており、それぞれのトピック16に登録する現在のサブスクライバ14のすべてにそのメッセージ18を送信する。実際、メッセージ18のシーケンスが始まった後に新しいサブスクライバ14がトピック16に参加しない場合、メッセージ・ブローカ10の動作で変更は行われない。
しかし、ステップS4で、メッセージ・ブローカ10は、トピック16に対する新しいサブスクライバ14を登録する。新しいサブスクライバ14がトピック16に追加された後は、ステップS5で、パブリッシャ12からトピック16に関する別のメッセージ18を受信するとき、メッセージ・ブローカ10は、トピック16に対する既存のサブスクライバ14にその別のメッセージ18を送信するが、トピック16に対する登録済みの新しいサブスクライバ14には送信しないように構成される(ステップS6)。実際に、新しいシーケンスが始まった後にトピック16に参加するサブスクライバ14は、トピック16に関するどんな別のメッセージ18も受信しない。既存のサブスクライバ14だけが新しいメッセージ18を受信する。
ブローカ10はまた、トピック16に関するさらに別のメッセージ18を受信し、そのさらに別のメッセージ18をメッセージのシーケンスの終了として識別し、トピック16に対する既存のサブスクライバ14、およびトピック16に対する登録済みの新しいサブスクライバ14に、トピック16に関するすべての将来のメッセージ18を送信するように構成される。ブローカ10は、シーケンスを閉じ、通常動作モードに戻る手順を実装している。シーケンスに対して終了メッセージが検出された後、シーケンスが進行中にトピック16に登録された新しいサブスクライバ(複数可)14は、今度は、トピック16に対して発行されるすべての新しいメッセージ18を受信する。
既存のサブスクライバと新しいサブスクライバの分離を実装するようにブローカ10を構成することのできる一方式は、シーケンスを管理するために、バックグラウンドで新しいサブトピックを作成することである。パブリッシャ12およびサブスクライバ14は、サブトピックの存在に気付いていないが、メッセージ18をメッセージのシーケンスの開始として識別するステップ(ステップS2)に続いて、ブローカ10は、メッセージのシーケンスに対応する新しいトピックを作成し、新しいトピックに1つまたは複数の既存のサブスクライバ14を加入させるように構成される。
これがどのように機能するかについての概要が、図4を参照しながら以下で説明される。この図では、サブスクライバS1がトピック16に加入しており、トピック16は名前「ゲーム」を有する。ブローカ10は、トピック16に対するサブスクライバS1のサブスクリプションを登録する。次いで、パブリッシャP1が、Game1に関する第1メッセージ18をトピック「ゲーム」に対して発行する。ブローカ10は、発行されたメッセージ18を受信して、このメッセージ18をメッセージ18の新しいシーケンスの開始として識別する。ブローカ10は、実際には新しいサブトピック20を作成し、「ゲーム/game1」と題する、トピック20に関するメッセージ18を発行する。発行したメッセージ18を送信する前に、ブローカ10は、サブトピック20に対するすべての既存のサブスクライバ14(すなわちサブスクライバS1)に関するサブスクリプションを作成する。そのときサブスクライバS1は、トピック「ゲーム」およびサブトピック「ゲーム/game1」に加入し、Game1に関する最初の発行されたメッセージ18を受信する。
図5は、新しいサブスクライバS2がトピック「ゲーム」に加入するときに何が生じるかを示す。ブローカ10は、トピック「ゲーム」に対するサブスクライバS2のサブスクリプションを登録するが、新しいサブスクライバS2がメッセージ・ブローカ10によって登録されたときに既に存在し、動作中であったサブトピック20に対するサブスクライバS2のサブスクリプションは登録しない。パブリッシャP1がGame1に関する別のメッセージ18をトピック「ゲーム」に対して発行するとき、ブローカ10は、発行されたメッセージ18を受信し、それをトピック「ゲーム/game1」に対して発行する。既存のサブスクライバ(S1)は、新しいメッセージ18を受信するが、新しいサブスクライバS2は受信しない。サブスクライバS1は、Game1に関する第2メッセージを受信するが、サブスクライバS2は受信しない。
メッセージのシーケンスのネスティングが起こり得る。例えば、第1シーケンスが進行中に、メッセージの新しいシーケンスを新しいサブトピック20として開始する可能性がある。このことが図6に示される。この例では、パブリッシャP2が、Game2に関する第1メッセージ18をトピック「ゲーム」に対して発行する。ブローカ10は、発行されたメッセージ18を受信し、メッセージ18をメッセージ18の新しいシーケンスの開始として識別し、したがって第2サブトピック20を作成する。ブローカ10は、実際にはトピック「ゲーム/game2」に関するメッセージ18を発行する。発行されたメッセージ18を送信する前に、ブローカは、サブトピック「ゲーム/game2」に対するすべての既存のサブスクライバ(すなわちサブスクライバS1およびサブスクライバS2)に関するサブスクリプションを作成する。そのときサブスクライバS1は、トピック「ゲーム」およびサブトピックス「ゲーム/game1」および「ゲーム/game2」に加入し、そのときサブスクライバS2は、トピック「ゲーム」およびサブトピック「ゲーム/game2」に加入する。サブスクライバS1およびサブスクライバS2はどちらも、Game2に関する第1メッセージ18を受信する。
サブトピック20の名前を求めることのできる様々な方式がある。例えば、サブトピック20の名前は、例えばブローカ10上で管理可能とすることができ、または新しいシーケンスの開始を示すメッセージ18のタイムスタンプに基づくことができる(実際には、サブトピック20の名前は人間が読取り可能である必要はなく、名前は任意の文字の構成を含むことができる)。
このことを実装し、拡張することのできる多数の方式がある。すべてのシナリオは、トピックごとのものであり、複数のトピックスに関するメッセージ・シーケンスについては許可されない(どのクライアントも知る限り、異なるトピックスが明らかにブローカによって使用される)。
メッセージのシーケンスの開始および終了を判定するのに多数の異なる方式がある。例えば、パブリッシャ・クライアントIDによってメッセージ・シーケンスを分割することが可能である。この場合、パブリッシャはメッセージ・シーケンスに気付いておらず、現パブリッシャ実装に対する変更は不要である。別の方法では、パブリッシャがブローカ10にAPI呼出しを行い、メッセージ・シーケンスの開始および終了を指定することを可能にすることもできる(パブリッシャは、一度に単一のメッセージ・シーケンスを管理することができる)。第3の代替実施形態は、パブリッシャがメッセージ・ヘッダでシーケンスIDを指定することを可能にすることであり、これにより、パブリッシャが一度に複数のメッセージ・シーケンスを管理することが可能となり、インターリーブすることができる。競合を回避するために固有シーケンスIDを得る方法がブローカから要求されることがあることに留意されたい。
トピックスからサブトピックスにサブスクライバをいつリダイレクトするかを判定することは、いくつかのポリシーに基づくことができる。例えば、サブトピックスが作成される(メイン)トピックからサブスクライバが加入解除するまで、サブスクライバは、後で作成されたすべてのサブトピックスに加入する。サブスクライバは、どんなリダイレクションも気付かず、実際には、単一の既知のサブスクリプションを介して複数のトピックスに加入し、すなわち現サブスクライバ実装に対する変更はない。あるいは、サブスクライバは、次に新しく作成されたサブトピック(その時点で、サブスクライバのメイン・サブスクリプションが除去される)にだけ加入し、この場合もサブスクライバはどんなリダイレクションも気付かず、すなわち現サブスクライバ実装に対する変更はない。サブスクライバは、上記の1つをAPIサブスクリプション呼出しの一部として選択することができ、その場合、サブスクライバは、トピック・リダイレクションが行われることに気付くが、サブスクライバがリダイレクトされる実際のトピックスには気付かない。
サブトピックス20を使用する本発明の実施形態では、サブトピック20が作成された後は、サブスクライバ14がベース・トピック16から加入解除することが可能である。これにより、サブスクライバ14にとって有用な機能が与えられる。例えば、メッセージ・ブローカ10の動作に対する拡張は、サブスクライバ14にこの機能を気付かせることであり、これにより、サブスクライバがメッセージ・ブローカ10に効果的に指令すること−「ベース・トピックに関する第1トランザクションに加入し、将来のトランザクションについては知りたくはなく、現れる最初のトランザクションだけについて知りたい」−が可能となり、これは、新しいサブトピック20が作成され、サブスクライバ14が自動的に新しいサブトピック20に加入するとすぐに、ベース・トピック16に対するサブスクライバ14のサブスクリプションを除去するようにブローカ10に命令することになる。
既存のpublish/subscribeシステムと同じく、切断に続いて、サブスクライバがサブスクライバの実際のサブスクリプションを維持するために、サブスクリプションは耐久性のあるものでなければならない。耐久性のないサブスクライバ再接続は、以前のどんなサブトピックスにもリダイレクトされない。サブスクライバがメイン・トピックから加入解除するとき、すべての関連するサブトピック・サブスクリプションも除去されなければならない。こうした関連付けをブローカによって維持しなければならないことに留意されたい。
メイン構成の他の拡張も可能である。例えば、パブリッシャがサブトピックにリダイレクトすべきサブスクライバの数を指定することができるようにシステムを構成することができる。1つ(またはn個)だけのサブスクライバ(複数可)が所与のメッセージのシーケンスを受信することをパブリッシャが指定することが有用であることがある。

Claims (19)

  1. publish/subscribeメッセージ・ブローカを操作する方法であって、
    パブリッシャからトピックに関するメッセージを受信すること、
    前記メッセージをメッセージのシーケンスの開始として識別すること、
    前記トピックに対する1つまたは複数の既存のサブスクライバに前記メッセージを送信すること、
    新しいサブスクライバが前記トピックに登録したこと、および前記トピックに関して前記シーケンスに関連する別のメッセージがパブリッシャから受信されたことに応答して、前記トピックに対する1つまたは複数の既存のサブスクライバに前記別のメッセージを送信するが、前記トピックに対する前記登録済みの新しいサブスクライバには送信しないこと
    を含む方法。
  2. 前記メッセージをメッセージのシーケンスの開始として識別することが、受信したメッセージの内容にアクセスすること、およびアクセスした前記メッセージの内容に従って、前記メッセージをメッセージのシーケンスの開始として識別することを含む請求項1に記載の方法。
  3. 前記トピックに関するさらに別のメッセージを受信すること、前記さらに別のメッセージをメッセージの前記シーケンスの終了として識別すること、ならびに前記トピックに対する1つまたは複数の既存のサブスクライバに、および前記トピックに対する前記登録済みの新しいサブスクライバに、前記トピックに関する前記シーケンスに関連しないそれぞれの別のメッセージを送信することをさらに含む請求項1または2に記載の方法。
  4. 前記シーケンスに関連しないメッセージを受信したことに応答して、前記シーケンスに関連しない前記メッセージに関連する新しいトピックを作成すること、および前記新しいトピックに対して前記新しいサブスクライバを加入させることをさらに含む請求項1ないし3のいずれかに記載の方法。
  5. 前記メッセージをメッセージのシーケンスの開始として識別することに続いて、メッセージの前記シーケンスに対応する新しいトピックを作成すること、および前記新しいトピックに対して前記1つまたは複数の既存のサブスクライバを加入させることをさらに含む請求項1ないし4のいずれかに記載の方法。
  6. 前記トピックに関して受信されるメッセージについて、前記トピックに関して前記メッセージを発行するか、それとも前記新しいトピックに関して前記メッセージを発行するかを判定することをさらに含む請求項4または5に記載の方法。
  7. パブリッシャからトピックに関するメッセージを受信し、
    前記メッセージをメッセージのシーケンスの開始として識別し、
    前記トピックに対する1つまたは複数の既存のサブスクライバに前記メッセージを送信し、
    新しいサブスクライバが前記トピックに登録したことに応答し、かつ前記トピックに関して前記シーケンスに関連する別のメッセージをパブリッシャから受信したことに応答して、前記トピックに対する1つまたは複数の既存のサブスクライバに前記別のメッセージを送信するが、前記トピックに対する前記登録済みの新しいサブスクライバには送信しないように構成されたpublish/subscribeメッセージ・ブローカ。
  8. 前記メッセージ・ブローカが、前記メッセージをメッセージのシーケンスの開始として識別するときに、受信したメッセージの内容にアクセスし、アクセスした前記メッセージの内容に従って、前記メッセージをメッセージのシーケンスの開始として識別するように構成される請求項7に記載のメッセージ・ブローカ。
  9. 前記メッセージ・ブローカがさらに、前記トピックに関するさらに別のメッセージを受信し、前記さらに別のメッセージをメッセージのシーケンスの終了として識別し、前記トピックに対する1つまたは複数の既存のサブスクライバに、および前記トピックに対する前記登録済みの新しいサブスクライバに、前記トピックに関する前記シーケンスに関連しないそれぞれの別のメッセージを送信するように構成される請求項7または8に記載のメッセージ・ブローカ。
  10. 前記メッセージ・ブローカがさらに、前記シーケンスに関連しないメッセージを受信したことに応答して、前記シーケンスに関連しない前記メッセージに関連する新しいトピックを作成し、前記新しいトピックに対して前記新しいサブスクライバを加入させるように構成される請求項7ないし9のいずれかに記載のメッセージ・ブローカ。
  11. 前記メッセージ・ブローカが、前記メッセージをメッセージのシーケンスの開始として識別することに続いて、メッセージの前記シーケンスに対応する新しいトピックを作成し、前記新しいトピックに対して前記1つまたは複数の既存のサブスクライバを加入させるように構成される請求項7ないし10のいずれかに記載のメッセージ・ブローカ。
  12. 前記メッセージ・ブローカがさらに、前記トピックに関して受信したメッセージについて、前記トピックに関して前記メッセージを発行するか、それとも前記新しいトピックに関して前記メッセージを発行するかを判定するように構成される請求項10または11に記載のメッセージ・ブローカ。
  13. publish/subscribeメッセージ・ブローカを操作するコンピュータ可読媒体上のコンピュータ・プログラム製品であって、
    パブリッシャからトピックに関するメッセージを受信する命令と、
    前記メッセージをメッセージのシーケンスの開始として識別する命令と、
    前記トピックに対する1つまたは複数の既存のサブスクライバに前記メッセージを送信する命令と、
    新しいサブスクライバが前記トピックに登録したこと、および前記トピックに関して前記シーケンスに関連する別のメッセージがパブリッシャから受信されたことに応答して、前記トピックに対する1つまたは複数の既存のサブスクライバに前記別のメッセージを送信するが、前記トピックに対する前記登録済みの新しいサブスクライバには送信しない命令と
    を含む製品。
  14. 前記メッセージをメッセージのシーケンスの開始として識別する前記命令が、受信したメッセージの内容にアクセスする命令と、アクセスした前記メッセージの内容に従って、前記メッセージをメッセージのシーケンスの開始として識別する命令とを含む請求項13に記載のコンピュータ・プログラム製品。
  15. 前記トピックに関するさらに別のメッセージを受信する命令と、前記さらに別のメッセージをメッセージの前記シーケンスの終了として識別する命令と、前記トピックに対する1つまたは複数の既存のサブスクライバに、および前記トピックに対する前記登録済みの新しいサブスクライバに、前記トピックに関する前記シーケンスに関連しないそれぞれの別のメッセージを送信する命令とをさらに含む請求項13または14に記載のコンピュータ・プログラム製品。
  16. 前記シーケンスに関連しないメッセージを受信したことに応答して、前記シーケンスに関連しない前記メッセージに関連する新しいトピックを作成する命令と、前記新しいトピックに対して前記新しいサブスクライバを加入させる命令とをさらに含む請求項13ないし15のいずれかに記載のコンピュータ・プログラム製品。
  17. 前記メッセージをメッセージのシーケンスの開始として識別する前記命令に続いて、メッセージの前記シーケンスに対応する新しいトピックを作成する命令と、前記新しいトピックに対して前記1つまたは複数の既存のサブスクライバを加入させる命令とをさらに含む請求項13ないし16のいずれかに記載のコンピュータ・プログラム製品。
  18. 前記トピックに関して受信されるメッセージについて、前記トピックに関して前記メッセージを発行するか、それとも前記新しいトピックに関して前記メッセージを発行するかを判定する命令をさらに含む請求項16または17に記載のコンピュータ・プログラム製品。
  19. publish/subscribeメッセージ・ブローカと共に使用される装置であって、
    パブリッシャからトピックに関するメッセージを受信する受信構成要素と、
    前記メッセージをメッセージのシーケンスの開始として識別する識別構成要素と、
    前記トピックに対する1つまたは複数の既存のサブスクライバに前記メッセージを送信する第1送信機と、
    新しいサブスクライバが前記トピックに登録したことに応答し、かつ前記トピックに関して前記シーケンスに関連する別のメッセージをパブリッシャから受信したことに応答して、前記トピックに対する1つまたは複数の既存のサブスクライバに前記別のメッセージを送信するが、前記トピックに対する前記登録済みの新しいサブスクライバには送信しない第2送信機と
    を備える装置。
JP2010549097A 2008-03-05 2009-02-25 publish/subscribeメッセージ・ブローカ Active JP5270697B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP08152331 2008-03-05
EP08152331.8 2008-03-05
PCT/EP2009/052221 WO2009109497A1 (en) 2008-03-05 2009-02-25 A publish/subscribe message broker

Publications (2)

Publication Number Publication Date
JP2011514087A true JP2011514087A (ja) 2011-04-28
JP5270697B2 JP5270697B2 (ja) 2013-08-21

Family

ID=40640336

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010549097A Active JP5270697B2 (ja) 2008-03-05 2009-02-25 publish/subscribeメッセージ・ブローカ

Country Status (6)

Country Link
US (1) US8140630B2 (ja)
EP (1) EP2250790B1 (ja)
JP (1) JP5270697B2 (ja)
KR (1) KR20100126786A (ja)
CN (1) CN101960825B (ja)
WO (1) WO2009109497A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018190015A1 (ja) 2017-04-12 2018-10-18 ソニー株式会社 情報処理装置及び情報処理方法、並びにコンピュータ・プログラム
KR20190057818A (ko) * 2017-11-20 2019-05-29 광운대학교 산학협력단 차등적인 IoT 서비스를 제공하는 우선순위 기반의 MQTT 시스템 및 방법
KR20190064065A (ko) * 2017-11-30 2019-06-10 한림대학교 산학협력단 IoT 서비스를 위한 메시지 관리 장치 및 방법

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7801864B2 (en) 2005-11-28 2010-09-21 Commvault Systems, Inc. Systems and methods for using metadata to enhance data identification operations
US20200257596A1 (en) 2005-12-19 2020-08-13 Commvault Systems, Inc. Systems and methods of unified reconstruction in storage systems
US7882077B2 (en) 2006-10-17 2011-02-01 Commvault Systems, Inc. Method and system for offline indexing of content and classifying stored data
US8370442B2 (en) 2008-08-29 2013-02-05 Commvault Systems, Inc. Method and system for leveraging identified changes to a mail server
US8977673B2 (en) 2008-08-29 2015-03-10 Red Hat, Inc. Information on availability of services provided by publish-subscribe service
US9077750B2 (en) * 2009-02-27 2015-07-07 Red Hat, Inc. Using forums as a message transport in an enterprise service bus
KR101198686B1 (ko) * 2009-11-11 2012-11-12 김현수 구독자 기반의 주제별 정보중개방법 및 그 시스템
US9026567B2 (en) * 2010-05-14 2015-05-05 2236008 Ontario Inc. Publish-subscribe system
US8874667B2 (en) * 2010-05-18 2014-10-28 International Business Machines Corporation Linking topics in a publish/subscribe messaging environment
US9367595B1 (en) * 2010-06-04 2016-06-14 Software AG USA Inc. Method and system for visual wiring tool to interconnect apps
US8505033B2 (en) * 2010-08-26 2013-08-06 Verizon Patent And Licensing Inc. Universal registration in broker-based messaging systems and methods
US8793322B2 (en) * 2011-02-20 2014-07-29 International Business Machines Corporation Failure-controlled message publication and feedback in a publish/subscribe messaging environment
US8843580B2 (en) 2011-02-20 2014-09-23 International Business Machines Corporation Criteria-based message publication control and feedback in a publish/subscribe messaging environment
US8959162B2 (en) 2011-02-23 2015-02-17 International Business Machines Corporation Publisher-based message data cashing in a publish-subscription environment
US8874666B2 (en) 2011-02-23 2014-10-28 International Business Machines Corporation Publisher-assisted, broker-based caching in a publish-subscription environment
US8725814B2 (en) 2011-02-24 2014-05-13 International Business Machines Corporation Broker facilitated peer-to-peer publisher collaboration in a publish-subscription environment
US8489694B2 (en) 2011-02-24 2013-07-16 International Business Machines Corporation Peer-to-peer collaboration of publishers in a publish-subscription environment
US8719264B2 (en) 2011-03-31 2014-05-06 Commvault Systems, Inc. Creating secondary copies of data based on searches for content
US8935330B2 (en) 2011-05-11 2015-01-13 International Business Machines Corporation Redirecting messages in a publish/subscribe messaging system
WO2012156851A1 (en) 2011-05-18 2012-11-22 International Business Machines Corporation Managing a message subscription in a publish/subscribe messaging system
US8473419B1 (en) 2011-09-26 2013-06-25 Google Inc. Dependency resolution in publish/subscribe
US8990301B2 (en) * 2012-08-22 2015-03-24 International Business Machines Corporation Broker designation and selection in a publish-subscription environment
US9888086B1 (en) * 2013-03-15 2018-02-06 Google Llc Providing association recommendations to users
CN104079614B (zh) 2013-03-29 2017-09-12 国际商业机器公司 用于分布式发布订阅系统消息有序获取的方法和系统
BR112015029222A2 (pt) * 2013-05-20 2017-07-25 Packsize Llc método e sistema para composição de nó flexível em sistemas computacionais distribuídos ou locais
WO2014194452A1 (zh) * 2013-06-03 2014-12-11 华为技术有限公司 消息发布与订阅的方法及装置
GB2520514A (en) 2013-11-22 2015-05-27 Ibm Message delivery in a messaging system
US9544356B2 (en) * 2014-01-14 2017-01-10 International Business Machines Corporation Message switch file sharing
CN105338014A (zh) * 2014-06-26 2016-02-17 青岛海尔智能家电科技有限公司 一种基于订阅机制的通信方法和主题服务器
US10554709B2 (en) * 2014-07-08 2020-02-04 Microsoft Technology Licensing, Llc Stream processing utilizing virtual processing agents
GB2532490B (en) * 2014-11-21 2017-02-22 Ibm Publish/subscribe messaging using message structure
US10225219B2 (en) * 2016-02-22 2019-03-05 International Business Machines Corporation Message delivery in a message system
US10540516B2 (en) 2016-10-13 2020-01-21 Commvault Systems, Inc. Data protection within an unsecured storage environment
JP6584440B2 (ja) * 2017-01-27 2019-10-02 キヤノン株式会社 情報処理システム、情報処理ステムの制御方法およびそのプログラム。
US10439963B2 (en) * 2017-03-09 2019-10-08 Citrix Systems, Inc. Increasing capacity in a topic-subscription messaging system
US10984041B2 (en) 2017-05-11 2021-04-20 Commvault Systems, Inc. Natural language processing integrated with database and data storage management
US10891798B2 (en) 2017-06-05 2021-01-12 2689090 Canada Inc. System and method for displaying an asset of an interactive electronic technical publication synchronously in a plurality of extended reality display devices
KR102031726B1 (ko) * 2017-11-16 2019-10-14 경북대학교 산학협력단 분산된 게시-구독 기법을 이용한 CoAP 기반 사물 인터넷 시스템의 작동 방법
US11159469B2 (en) 2018-09-12 2021-10-26 Commvault Systems, Inc. Using machine learning to modify presentation of mailbox objects
US10917458B2 (en) 2018-11-12 2021-02-09 Pivotal Software, Inc. Message broker configuration
US11201937B2 (en) 2018-11-22 2021-12-14 Jeffrey Alan Carley Message broker customization with user administered policy functions
KR102200590B1 (ko) * 2019-10-15 2021-01-08 에이치투오시스템테크놀로지(주) 엠큐티티 프로토콜 기반 긴급 메시지 처리 장치 및 방법
WO2021201870A1 (en) * 2020-04-02 2021-10-07 Hewlett-Packard Development Company, L.P. Configuring a publisher device of a publish-subscribe system
US11494417B2 (en) 2020-08-07 2022-11-08 Commvault Systems, Inc. Automated email classification in an information management system
US11340828B2 (en) 2020-08-10 2022-05-24 Bank Of America Corporation Restoring messages to a memory utilized by a topic in a publish-subscribe environment
US11354161B2 (en) 2020-08-10 2022-06-07 Bank Of America Corporation Controlling memory utilization by a topic in a publish-subscribe environment
KR102422229B1 (ko) 2020-12-18 2022-07-18 주식회사 비카누스 메시지 브로커 기반 데이터 처리 시스템
US11392433B1 (en) 2021-01-26 2022-07-19 Red Hat, Inc. Generation of asynchronous application programming interface specifications for messaging topics
US11722451B2 (en) * 2021-12-07 2023-08-08 Dell Products L.P. Distributing event messages from a first service to additional services using a message store
JP7284908B1 (ja) 2022-06-29 2023-06-01 17Live株式会社 データ処理方法、システム及びコンピュータプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007134885A1 (en) * 2006-05-19 2007-11-29 International Business Machines Corporation Method, apparatus and computer program for controlling retention of data messages
JP2008124977A (ja) * 2006-11-15 2008-05-29 Hitachi Ltd メッセージ配送方法、装置及びプログラム
JP2008533564A (ja) * 2005-02-24 2008-08-21 ゼラウンド システムズ リミテッド データ管理のための方法および装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6425012B1 (en) * 1998-12-28 2002-07-23 Koninklijke Philips Electronics N.V. System creating chat network based on a time of each chat access request
US6651086B1 (en) * 2000-02-22 2003-11-18 Yahoo! Inc. Systems and methods for matching participants to a conversation
US7502825B2 (en) * 2001-02-21 2009-03-10 Adobe Systems Incorporated Populating online forums
US7406537B2 (en) * 2002-11-26 2008-07-29 Progress Software Corporation Dynamic subscription and message routing on a topic between publishing nodes and subscribing nodes
JP2004102547A (ja) * 2002-09-06 2004-04-02 Nec Corp コミュニケーションシステム、コミュニケーションサーバ、及び、コミュニケーション方法
GB0426846D0 (en) * 2004-12-08 2005-01-12 Ibm Method and system for administration of a broker-based publish/subscribe messaging system
US7684815B2 (en) * 2005-04-21 2010-03-23 Microsoft Corporation Implicit group formation around feed content for mobile devices
GB0613195D0 (en) * 2006-07-01 2006-08-09 Ibm Methods, apparatus and computer programs for managing persistence in a messaging network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008533564A (ja) * 2005-02-24 2008-08-21 ゼラウンド システムズ リミテッド データ管理のための方法および装置
WO2007134885A1 (en) * 2006-05-19 2007-11-29 International Business Machines Corporation Method, apparatus and computer program for controlling retention of data messages
JP2008124977A (ja) * 2006-11-15 2008-05-29 Hitachi Ltd メッセージ配送方法、装置及びプログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSNB200500424001; Bill Dudney他著,トップスタジオ訳: J2EEアンチパターン , 20040426, 第391-398頁, 日経BP社 *
JPN6013007167; Bill Dudney他著,トップスタジオ訳: J2EEアンチパターン , 20040426, 第391-398頁, 日経BP社 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018190015A1 (ja) 2017-04-12 2018-10-18 ソニー株式会社 情報処理装置及び情報処理方法、並びにコンピュータ・プログラム
US11218535B2 (en) 2017-04-12 2022-01-04 Sony Corporation Information processing apparatus, information processing method, and computer program
KR20190057818A (ko) * 2017-11-20 2019-05-29 광운대학교 산학협력단 차등적인 IoT 서비스를 제공하는 우선순위 기반의 MQTT 시스템 및 방법
KR101996598B1 (ko) 2017-11-20 2019-07-04 광운대학교 산학협력단 차등적인 IoT 서비스를 제공하는 우선순위 기반의 MQTT 시스템 및 방법
KR20190064065A (ko) * 2017-11-30 2019-06-10 한림대학교 산학협력단 IoT 서비스를 위한 메시지 관리 장치 및 방법
KR102036154B1 (ko) 2017-11-30 2019-10-24 한림대학교 산학협력단 IoT 서비스를 위한 메시지 관리 장치 및 방법

Also Published As

Publication number Publication date
EP2250790A1 (en) 2010-11-17
JP5270697B2 (ja) 2013-08-21
EP2250790B1 (en) 2016-12-14
WO2009109497A1 (en) 2009-09-11
KR20100126786A (ko) 2010-12-02
CN101960825A (zh) 2011-01-26
CN101960825B (zh) 2013-10-23
US20090228563A1 (en) 2009-09-10
US8140630B2 (en) 2012-03-20

Similar Documents

Publication Publication Date Title
JP5270697B2 (ja) publish/subscribeメッセージ・ブローカ
US8065372B2 (en) Publish/subscribe messaging
KR101344203B1 (ko) 프레즌스 서버로부터 발행된 프레즌스 정보를 만료시키는 시스템 및 그 방법을 수행하는 명령어들을 포함하는 컴퓨터판독가능 매체, 프레즌스 서버에 프레즌스 정보를 발행하는 시스템
US8606859B2 (en) Method and system to communicate messages in a computer network
KR101414337B1 (ko) 단일의 요청으로 다수의 프레즌스 발행들을 업데이트하기 위한 시스템 및 그 방법을 수행하는 명령어를 포함하는 컴퓨터 판독가능 매체, 단일의 요청으로 다수의 발행 유형들을 구독하기 위한 시스템
US7949704B2 (en) Administration of a broker-based publish/subscribe messaging system
US8447808B2 (en) Virtual presence server
US20080034078A1 (en) Presence information management system, presence server device, gateway device and client device
JP5104591B2 (ja) バスシステム
KR20140035531A (ko) 멤버 리스트를 갖는 모음들로 발행되는 프레즌스 정보로의 액세스를 수정하는 방법 및 상기 방법을 수행하기 위한 명령어들을 포함하는 컴퓨터 판독가능 매체
JP2000066982A (ja) 通信方法及び通信ネットワ―ク
KR20110055688A (ko) 액티브 프레즌스 프로파일에 기초한 자동화된 콜 라우팅
CN102202078A (zh) 用于远程呈现会话服务器场的集中式管理工具
JP2006221423A (ja) データ配布方法、装置、及び記憶媒体
US8694462B2 (en) Scale-out system to acquire event data
JP2005346573A (ja) Webサービス提供方法、Webサービスシステムにおけるサーバ装置およびクライアント端末、Webサービスシステム、ならびに、Webサービスプログラムおよび記録媒体
JP2014038483A (ja) データ配信システム、データ配信方法、およびプログラム
JP6402077B2 (ja) 中継システム、中継方法、及びプログラム
WO2008010666A1 (en) System and method for managing domain-state information
KR102020112B1 (ko) 데이터 분산 서비스 기반 iec61850 요청-응답 통신 방법 및 플랫폼
JP5099239B2 (ja) 状態情報管理システム、状態情報管理サーバ及び状態情報管理方法
JPH11232126A (ja) イベント通知方法及びノティフィケーションネットワーク
Hunter II et al. Service Discovery
JP6364262B2 (ja) サーバ、メッセージ処理システム、メッセージ処理方法及びプログラム
KR20200036181A (ko) Dds를 위한 게이트웨이 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130212

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130313

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130509

R150 Certificate of patent or registration of utility model

Ref document number: 5270697

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150