【手続補正書】
【提出日】平成30年11月29日(2018.11.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
メッセージを処理するメッセージブローカコンピュータシステムの方法であって、
マスタブローカコンピュータシステムが、クライアントプロデューサからメッセージを受信するステップと、
前記マスタブローカコンピュータシステムが、前記クライアントプロデューサからの前記メッセージの受信に応じて、メッセージイベントを生成するステップであって、前記メッセージイベントは、前記マスタブローカコンピュータシステムに関連付けられたエポック値と前記メッセージに関連付けられたシーケンス番号とで前記メッセージを固有に識別し、複数のイベントストアのうちの少なくとも２つによって関連持続ストレージシステムに記憶された最終メッセージへのポインタをさらに含むメッセージイベントである、ステップと、
前記マスタブローカコンピュータシステムが、前記メッセージイベントを、複数のイベントストアおよび複数のスレーブブローカコンピュータシステムへ配信するステップであって、各イベントストアは、関連持続ストレージシステム内に前記メッセージイベントを記憶し、各スレーブブローカコンピュータシステムは、関連メモリ内に前記メッセージイベントを保持する、ステップと、
前記マスタブローカコンピュータシステムが、少なくとも２つのイベントストアからの安定通知を受信するステップであって、各安定通知は前記メッセージイベントがそれぞれのイベントストアに記憶されたことを示す、ステップと、
前記マスタブローカコンピュータシステムが、前記安定通知の受信に応じて、関連持続ストレージに前記メッセージイベントを記憶し、通知を前記クライアントプロデューサへ送信するステップと、
前記マスタブローカコンピュータシステムが、前記メッセージイベントが安定化したことを示す別のメッセージイベントを生成するステップと、
前記マスタブローカコンピュータシステムが、前記別のメッセージイベントを、前記複数のイベントストアおよび前記複数のスレーブブローカコンピュータシステムへ配信するステップであって、前記別のメッセージイベントは、各スレーブブローカコンピュータシステムに、前記メッセージイベントをその関連メモリからそれぞれの持続ストレージシステムに送信させるステップとを含む、方法。
【請求項２】
各メッセージングブローカコンピュータシステムのブローカコンピュータシステム状態を記憶するステップをさらに含み、
前記ブローカコンピュータシステム状態は、前記ブローカコンピュータシステムで持続したメッセージイベントストリームを表す、請求項１に記載の方法。
【請求項３】
さらに、前記マスタブローカコンピュータシステムからメッセージイベントを受信すると、各メッセージングブローカコンピュータシステムのブローカコンピュータシステム状態を更新するステップを含み、
前記ブローカコンピュータシステム状態の更新では、前記持続ストレージからメッセージイベントを削除することと、前記メッセージイベントを前記マスタブローカコンピュータシステムから受信したメッセージイベントで上書きすることとのうちの少なくとも１つを行う、請求項２に記載の方法。
【請求項４】
さらに、前記マスタブローカコンピュータシステムが、前記メッセージイベントが安定化すると、前記メッセージイベントを前記マスタブローカコンピュータシステムの内部メモリから削除するステップを含む、請求項１に記載の方法。
【請求項５】
各スレーブブローカシステムは、前記マスタブローカコンピュータシステムからの別のメッセージイベントと前記マスタブローカコンピュータシステムからの安定メッセージイベントとのうちの少なくとも１つを受信すると、前記メッセージイベントをスレーブブローカコンピュータシステムの内部メモリから削除するよう構成され、
前記安定メッセージイベントは、前記マスタブローカコンピュータシステムでの最終既知安定メッセージイベントに関連付けられた情報を含む、請求項１に記載の方法。
【請求項６】
前記別のメッセージイベントは、メッセージイベントと、最終安定メッセージイベントに関連付けられたシーケンス番号と、前記最終安定メッセージイベントを送信した前記マスタブローカコンピュータシステムに関連付けられたエポック値と、前記メッセージイベントに関連付けられたシーケンス番号と、前記マスタブローカコンピュータシステムに関連付けられたエポック値とを含む、請求項１に記載の方法。
【請求項７】
前記マスタブローカコンピュータシステムは、前記メッセージイベントを、前記複数のスレーブブローカコンピュータシステムおよび前記複数のイベントストアへ並列に配信する、請求項１に記載の方法。
【請求項８】
１つまたは複数のプロセッサと、
前記１つまたは複数のプロセッサの少なくとも１つに動作可能に結合され、前記少なくとも１つまたは複数のプロセッサによって実行されたときに、前記少なくとも１つまたは複数のプロセッサに処理を実行させる命令を記憶した１つまたは複数のメモリとを備えた装置であって、
前記処理は、
クライアントからメッセージを受信するステップと、
前記クライアントプロデューサからのメッセージの受信に応じてメッセージイベントを生成するステップであって、前記メッセージイベントは、マスタブローカコンピュータシステムに関連付けられたエポック値と前記メッセージに関連付られたシーケンス番号とで前記メッセージを固有に識別し、前記メッセージイベントは、前記関連接続ストレージシステム内の複数のイベントストアの少なくとも２つに記憶された最終メッセージへのポインタをさらに含む、ステップと、
前記メッセージイベントを複数のイベントストアと複数のスレーブブローカコンピュータシステムへ配信するステップであって、各イベントストアは関連接続ストレージシステムにメッセージイベントを記憶し、各スレーブブローカコンピュータシステムは、関連メモリに前記メッセージイベントを保持する、ステップと、
少なくとも２つのイベントストアから安定通知を受信するステップであって、各安定通知は、前記メッセージイベントがそれぞれのイベントストアに記憶されたことを示す、ステップと、
前記安定通知の受信に対応して、前記メッセージイベントを関連持続ストレージに記憶し、前記クライアントプロデューサへ通知を送信するステップと、
前記メッセージイベントが安定化したことを示す別のメッセージイベントを生成するステップと、
前記別のメッセージイベントを前記複数のイベントストアと複数のスレーブブローカコンピュータシステムとへ配信するステップであって、前記別のメッセージイベントは、各スレーブブローカコンピュータシステムに、前記メッセージイベントをその関連メモリからそれぞれの持続ストレージシステムへ送信させる、ステップとを含む、装置。
【請求項９】
前記１つまたは複数のメモリの少なくとも１つが、前記１つまたは複数のプロセッサの少なくとも１つに実行されたときに、前記１つまたは複数のプロセッサの少なくとも１つに、各メッセージングブローカコンピュータシステムのブローカコンピュータシステム状態を記憶させるステップを実行させる命令をさらに含み、
ブローカコンピュータシステム状態は、前記ブローカコンピュータシステムで持続したメッセージイベントストリームを表す、請求項８に記載の装置。
【請求項１０】
前記１つまたは複数のメモリの少なくとも１つが、前記１つまたは複数のプロセッサの少なくとも１つに実行されたときに、前記１つまたは複数のプロセッサの少なくとも１つに、前記マスタブローカコンピュータシステムからメッセージイベントを受信すると、各メッセージングブローカコンピュータシステムのブローカコンピュータシステム状態を更新させるステップを実行させる命令をさらに含み、
前記ブローカコンピュータシステム状態の更新では、前記持続ストレージからメッセージイベントを削除することと、前記メッセージイベントを前記マスタブローカコンピュータシステムから受信したメッセージイベントで上書きすることとのうちの少なくとも１つを行う、請求項９に記載の装置。
【請求項１１】
前記１つまたは複数のメモリの少なくとも１つが、前記１つまたは複数のプロセッサの少なくとも１つに実行されたときに、前記１つまたは複数のプロセッサの少なくとも１つに、前記メッセージイベントが安定化すると、前記メッセージイベントを前記マスタブローカコンピュータシステムの内部メモリから削除させるステップを実行させる命令をさらに含む、請求項８に記載の装置。
【請求項１２】
各スレーブブローカシステムは、前記マスタブローカコンピュータシステムからの別のメッセージイベントと前記マスタブローカコンピュータシステムからの安定メッセージイベントとのうちの少なくとも１つを受信すると、前記メッセージイベントをスレーブブローカコンピュータシステムの内部メモリから削除するよう構成され、
前記安定メッセージイベントは、前記マスタブローカコンピュータシステムでの最終既知安定メッセージイベントに関連付けられた情報を含む、請求項８に記載の装置。
【請求項１３】
前記別のメッセージイベントは、メッセージイベントと、最終安定メッセージイベントに関連付けられたシーケンス番号と、前記最終安定メッセージイベントを送信した前記マスタブローカコンピュータシステムに関連付けられたエポック値と、前記メッセージイベントに関連付けられたシーケンス番号と、前記マスタブローカコンピュータシステムに関連付けられたエポック値とを含む、請求項８に記載の装置。
【請求項１４】
マスタブローカコンピュータシステムは、前記メッセージイベントを、前記複数のスレーブブローカコンピュータシステムおよび前記複数のイベントストアへ並列に配信する、請求項８に記載の装置。
【請求項１５】
１つまたは複数のコンピュータ装置の少なくとも１つによって実行されたとき、前記１つまたは複数のコンピュータ装置の少なくとも１つに処理を実行させるコンピュータ可読命令を含むコンピュータプログラムであって、
前記処理は、
クライアントからメッセージを受信するステップと、
前記クライアントプロデューサからのメッセージの受信に応じてメッセージイベントを生成するステップであって、前記メッセージイベントは、マスタブローカコンピュータシステムに関連付けられたエポック値と前記メッセージに関連付られたシーケンス番号とで前記メッセージを固有に識別し、前記メッセージイベントは、前記関連接続ストレージシステム内の複数のイベントストアの少なくとも２つに記憶された最終メッセージへのポインタをさらに含む、ステップと、
前記メッセージイベントを複数のイベントストアと複数のスレーブブローカコンピュータシステムへ配信するステップであって、各イベントストアは関連接続ストレージシステムにメッセージイベントを記憶し、各スレーブブローカコンピュータシステムは、関連メモリに前記メッセージイベントを保持する、ステップと、
少なくとも２つのイベントストアから安定通知を受信するステップであって、各安定通知は、前記メッセージイベントがそれぞれのイベントストアに記憶されたことを示す、ステップと、
前記安定通知の受信に対応して、前記メッセージイベントを関連持続ストレージに記憶し、前記クライアントプロデューサへ通知を送信するステップと、
前記メッセージイベントが安定化したことを示す別のメッセージイベントを生成するステップと、
前記別のメッセージイベントを前記複数のイベントストアと複数のスレーブブローカコンピュータシステムとへ配信するステップであって、前記別のメッセージイベントは、各スレーブブローカコンピュータシステムに、前記メッセージイベントをその関連メモリからそれぞれの持続ストレージシステムへ送信させる、ステップとを含む、コンピュータプログラム。
【請求項１６】
前記１つまたは複数のコンピュータ装置の少なくとも１つに実行されたときに、前記１つまたは複数のコンピュータ装置の少なくとも１つに、各メッセージングブローカコンピュータシステムのブローカコンピュータシステム状態を記憶させるステップを実行させるコンピュータ可読命令をさらに含み、
ブローカコンピュータシステム状態は、前記ブローカコンピュータシステムで持続したメッセージイベントストリームを表す、請求項１５に記載のコンピュータプログラム。
【請求項１７】
前記１つまたは複数のコンピュータ装置の少なくとも１つに実行されたときに、前記１つまたは複数のコンピュータ装置の少なくとも１つに、前記マスタブローカコンピュータシステムからメッセージイベントを受信すると、各メッセージングブローカコンピュータシステムのブローカコンピュータシステム状態を更新させるステップを実行させるコンピュータ可読命令をさらに含み、
前記ブローカコンピュータシステム状態の更新では、前記持続ストレージからメッセージイベントを削除することと、前記メッセージイベントを前記マスタブローカコンピュータシステムから受信したメッセージイベントで上書きすることとのうちの少なくとも１つを行う、請求項１６に記載のコンピュータプログラム。
【請求項１８】
前記１つまたは複数のコンピュータ装置の少なくとも１つに実行されたときに、前記１つまたは複数のコンピュータ装置の少なくとも１つに、前記メッセージイベントが安定化すると、前記メッセージイベントを前記マスタブローカコンピュータシステムの内部メモリから削除させるステップを実行させるコンピュータ可読命令をさらに含む、請求項１５に記載のコンピュータプログラム。
【請求項１９】
各スレーブブローカシステムは、前記マスタブローカコンピュータシステムからの別のメッセージイベントと前記マスタブローカコンピュータシステムからの安定メッセージイベントとのうちの少なくとも１つを受信すると、前記メッセージイベントをスレーブブローカコンピュータシステムの内部メモリから削除するよう構成され、
前記安定メッセージイベントは、前記マスタブローカコンピュータシステムでの最終既知安定メッセージイベントに関連付けられた情報を含む、請求項１５に記載のコンピュータプログラム。
【請求項２０】
前記別のメッセージイベントは、メッセージイベントと、最終安定メッセージイベントに関連付けられたシーケンス番号と、前記最終安定メッセージイベントを送信した前記マスタブローカコンピュータシステムに関連付けられたエポック値と、前記メッセージイベントに関連付けられたシーケンス番号と、前記マスタブローカコンピュータシステムに関連付けられたエポック値とを含む、請求項１５に記載のコンピュータプログラム。
【請求項２１】
マスタブローカコンピュータシステムは、前記メッセージイベントを、前記複数のスレーブブローカコンピュータシステムおよび前記複数のイベントストアへ並列に配信する、請求項１５に記載のコンピュータプログラム。
【請求項２２】
請求項１５〜２１のいずれか一項に記載のコンピュータプログラムを記憶した１つまたは複数のコンピュータ可読媒体。