JP5544521B2 - 状態管理方法、処理装置、および状態管理プログラム - Google Patents
状態管理方法、処理装置、および状態管理プログラム Download PDFInfo
- Publication number
- JP5544521B2 JP5544521B2 JP2011133160A JP2011133160A JP5544521B2 JP 5544521 B2 JP5544521 B2 JP 5544521B2 JP 2011133160 A JP2011133160 A JP 2011133160A JP 2011133160 A JP2011133160 A JP 2011133160A JP 5544521 B2 JP5544521 B2 JP 5544521B2
- Authority
- JP
- Japan
- Prior art keywords
- processing device
- processing
- acquired
- call
- message
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
このような事情に鑑みて、本発明は、分散システムにおける処理装置の呼処理の遅延化を抑制することを目的とする。
まず、本実施形態の構成について説明する。
図1は、分散システムの構成図である。この分散システムは、振り分け装置1、処理装置2、クライアント3およびロードバランサ4を含む。この分散システムは、複数の処理装置2などのコンピュータ資源を仮想化し、複数の処理装置2が協調してセッション制御を行い、クライアント3に所定のサービスを提供するクラスタシステムである。前記セッション制御は、例えば、呼制御であり、SIP(Session Initiation Protocol)を使用して、インターネット電話などのサービスが提供される。
処理装置2は、振り分け装置1から振り分けられたメッセージを呼処理し、クライアント3にサービスを提供する。
クライアント3は、メッセージをロードバランサ4に送信し、処理装置2が提供するサービスを利用する。
ロードバランサ4は、クライアント3から受信したメッセージを、例えばラウンドロビンによって、振り分け装置1のそれぞれに振り分ける。
図2は、(a)振り分け装置で使用されるソフトウェアおよび(b)処理装置で使用されるソフトウェアの構成図である。振り分け装置1は、処理装置検出部101、テーブル取得応答部102および処理装置管理テーブルT1、といった構成要素を備える。また、処理装置2は、増設通知部201、テーブル取得要求部202、呼状態データ取得要求部203、呼状態データ取得応答部204、処理装置管理テーブルT3、および呼状態管理テーブルT2、といった構成要素を備える。
処理装置検出部101は、分散システムに処理装置2が増設された旨を検出する。増設された処理装置2については、所定のアルゴリズムに従って、対応する処理装置識別子が払い出される。前記所定のアルゴリズムは、例えば、処理装置のIPアドレスや処理装置名などに、ハッシュ関数を作用させるものである。払い出された処理装置識別子は、処理装置管理テーブルT1に追加される。振り分け装置1は、増設した処理装置2に対し、自身のIPアドレスを通知する。
増設通知部201は、処理装置2が増設されたとき、マルチキャストにより分散システムを構成するすべての振り分け装置1に対して増設の旨を通知する。増設した処理装置2は、増設の旨を通知する際に、自身のIPアドレスを通知する。また、振り分け装置1は、振り分け装置1自身のIPアドレスを増設した処理装置2に通知する。なお、増設の旨、および場合によっては自身のIPアドレスは、他の処理装置2に通知してもよい。この場合、他の処理装置2は、他の処理装置2自身のIPアドレスを増設した処理装置2に通知してもよい。
呼状態データ取得応答部204は、他の処理装置2からの呼状態データを取得する要求に応答し、当該他の処理装置2に呼状態データを通知する。
呼状態管理テーブルT2は、呼状態データ取得要求部203により、他の処理装置2から取得した呼状態データを管理する。呼状態管理テーブルT2の詳細は、後記する。
図3は、(a)処理装置管理テーブルのデータ構造および(b)呼状態管理テーブルのデータ構造を示す図である。
処理装置管理テーブルT1は、「処理装置識別子」および「処理装置IPアドレス」といったフィールドを含み、処理装置2ごとにレコードが作成される。
「処理装置識別子」フィールドには、処理装置検出部101により払い出された処理装置識別子の値が格納される。
「処理装置IPアドレス」フィールドには、処理装置2のIPアドレスの値が格納される。
呼状態管理テーブルT2は、「データ識別子」および「呼状態」といったフィールドを含み、呼状態データごとにレコードが作成される。
「データ識別子」フィールドには、振り分け装置1から振り分けられたメッセージに含まれるデータ識別子の値が格納される。なお、先述したとおり、データ識別子は、呼処理の対象となるデータの実体を識別する。データ識別子は、例えば、トランザクションID(Identifier)である。あるメッセージの呼処理を担当する処理装置2は、通常、その呼処理の対象となるデータの実体を記憶部に記憶しており、呼処理を実行するときは、そのデータの実体を書き換える。
「呼状態」フィールドには、主に、セッションの状態を示す値が呼状態として格納される。クライアント3から次々と受信するメッセージの呼処理を実行すると、呼状態が変わる。セッションの状態には、例えば、セッションの開始、セッション確立中、セッション解放中などがある。
また、メッセージには、呼状態を遷移させるための情報が含まれている。処理装置2は、その情報を参照して、データ識別子に対応する「呼状態」フィールドに格納される値を変え、呼状態管理テーブルT2を更新する。これらの処理がなされることにより、メッセージの呼処理が実行される。
図4は、処理装置の増設時に、呼状態データを持つ処理装置を特定する様子の説明図である。図4の(a)は、処理装置の増設前の識別子空間の概念図であり、図4の(b)は、処理装置の増設後の識別子空間の概念図である。
なお、処理装置識別子Aの処理装置2は、基本的には、データ識別子Xで識別されるデータの実体を記憶している。よって、処理装置識別子Iの処理装置2は、処理装置識別子Aの処理装置2から、そのデータの実体を取得する。処理装置識別子Iの処理装置2は、呼処理を実行においては、そのデータの実体を書き換える。
なお、処理装置識別子I、Jの処理装置2がそれぞれ持つ処理装置管理テーブルT3には、処理装置識別子I、Jの処理装置2の2つのレコードが追加されている。
処理装置識別子Iの処理装置2は、基本的には、所望の呼状態データを取得できるまで、他の処理装置2への取得要求を繰り返す。
次に、本実施形態の処理について説明する。具体的には、処理装置2の増設に関わる処理について説明する。この処理の主体は、処理装置2の制御部である。
図6は、増設した処理装置における処理を示すフローチャートである。この処理は、処理装置2が分散システムに増設した後に行われる。また、この処理は、増設した後から所定期間経過した後であっても、この処理装置2が分散システムを構成しているうち、つまり生存しているうちは定期的に行ってもよい。この処理は、ステップS01から開始する。
(1)増設した処理装置2自身が図6の処理により、事前にセッション開始メッセージの呼処理をし、該当する呼状態データを生成し、その後ステップS04でセッション開始メッセージ以外のメッセージを取得した場合、
(2)増設した処理装置2自身が図6の処理により、他の処理装置2から該当する呼状態データをすでに取得し、その後ステップS04でセッション開始メッセージ以外のメッセージを取得した場合、がある。
なお、ステップS06の処理では、後記するステップS08で呼状態データを取得しなかった処理装置2に関し、処理装置管理テーブルT3からその処理装置2のレコードも一時的に削除する。
本実施形態によれば、分散システムにおける処理装置2の呼処理の遅延化を抑制することができる。
従来技術によれば、増設した処理装置2は、呼状態データを取得するために、分散システムを構成する処理装置2それぞれに要求を出力していた。このため、呼状態データの取得に要する処理の処理量がO(N)の規模に及んでしまう(Nは、分散システムを構成する処理装置2の数)。結果的に、とりわけ分散システムを構成する処理装置2の数が多くなると、処理装置2の呼処理の遅延化を招いていた。
本実施形態によれば、取得すべき呼状態データを持つ処理装置2を事前に特定するので、呼状態データを取得するための要求は、基本的には1度で済み、呼状態データの取得に要する処理の処理量はO(1)の規模に抑えられる。結果として、分散システムを構成する処理装置2の数が多くなっても、処理装置2の呼処理の遅延化を抑制することができる。
≪その他≫
前記実施形態は、本発明を実施するために好適のものであるが、その実施形式はこれらに限定されるものでなく、本発明の要旨を変更しない範囲内において種々変形することが可能である。
また、本実施形態で説明したソフトウェアをハードウェアとして実現することもでき、ハードウェアをソフトウェアとして実現することもできる。
2 処理装置
3 クライアント
4 ロードバランサ
101 処理装置検出部
102 テーブル取得応答部
201 増設通知部
202 テーブル取得要求部
203 呼状態データ取得要求部
204 呼状態データ取得応答部
T1、T3 処理装置管理テーブル(管理情報)
T2 呼状態管理テーブル
Claims (6)
- クライアントにサービスを提供する複数の処理装置と、コンシステント・ハッシュ法により前記クライアントから得られるメッセージを前記処理装置に振り分ける複数の振り分け装置と、が通信可能に接続されている分散システムの処理装置における状態管理方法であって、
前記分散システムに増設した処理装置が、
前記コンシステント・ハッシュ法により、当該増設した処理装置を含む処理装置ごとに払い出された処理装置識別子を含む管理情報を、前記振り分け装置から取得する管理情報取得ステップと、
前記振り分け装置から前記メッセージを取得すると、前記取得した管理情報から、当該増設した処理装置に払い出された処理装置識別子を削除する削除ステップと、
前記削除後の管理情報に基づいて、前記取得したメッセージの呼処理を担当していた処理装置を特定する担当特定ステップと、
前記特定した処理装置から、前記取得したメッセージの呼処理の進捗を示す呼状態データを取得する呼状態データ取得ステップと、を実行する
ことを特徴とする状態管理方法。 - 前記増設した処理装置は、第1の処理装置と、第2の処理装置と、を少なくとも含み、
前記第1の処理装置が、
前記管理情報取得ステップにおいて、前記第1の処理装置に払い出された処理装置識別子、および前記第2の処理装置に払い出された処理装置識別子を含む前記管理情報を、前記振り分け装置から取得し、
前記削除ステップにおいて、前記第1の処理装置に払い出された処理装置識別子だけでなく、前記呼状態データ取得ステップを実行しても前記振り分け装置から取得したメッセージに対応する呼状態データを取得できなかったことにより、増設した処理装置であると確認された前記第2の処理装置に払い出された処理装置識別子も、前記管理情報から削除する
ことを特徴とする請求項1に記載の状態管理方法。 - クライアントにサービスを提供する複数の処理装置と、コンシステント・ハッシュ法により前記クライアントから得られるメッセージを前記処理装置に振り分ける複数の振り分け装置と、が通信可能に接続されている分散システムの処理装置であって、
前記分散システムに増設した処理装置が、
前記コンシステント・ハッシュ法により、当該増設した処理装置を含む処理装置ごとに払い出された処理装置識別子を含む管理情報を、前記振り分け装置から取得する管理情報取得制御と、
前記振り分け装置から前記メッセージを取得すると、前記取得した管理情報から、当該増設した処理装置に払い出された処理装置識別子を削除する削除制御と、
前記削除後の管理情報に基づいて、前記取得したメッセージの呼処理を担当していた処理装置を特定する担当特定制御と、
前記特定した処理装置から、前記取得したメッセージの呼処理の進捗を示す呼状態データを取得する呼状態データ取得制御と、を実行する
ことを特徴とする処理装置。 - 前記増設した処理装置は、第1の処理装置と、第2の処理装置と、を少なくとも含み、
前記第1の処理装置が、
前記管理情報取得制御において、前記第1の処理装置に払い出された処理装置識別子、および前記第2の処理装置に払い出された処理装置識別子を含む前記管理情報を、前記振り分け装置から取得し、
前記削除制御において、前記第1の処理装置に払い出された処理装置識別子だけでなく、前記呼状態データ取得制御を実行しても前記振り分け装置から取得したメッセージに対応する呼状態データを取得できなかったことにより、増設した処理装置であると確認された前記第2の処理装置に払い出された処理装置識別子も、前記管理情報から削除する
ことを特徴とする請求項3に記載の処理装置。 - クライアントにサービスを提供する複数の処理装置と、コンシステント・ハッシュ法により前記クライアントから得られるメッセージを前記処理装置に振り分ける複数の振り分け装置と、が通信可能に接続されている分散システムの処理装置を、コンピュータとして機能させる状態管理プログラムであって、
前記分散システムに増設した処理装置に、
前記コンシステント・ハッシュ法により、当該増設した処理装置を含む処理装置ごとに払い出された処理装置識別子を含む管理情報を、前記振り分け装置から取得する管理情報取得処理と、
前記振り分け装置から前記メッセージを取得すると、前記取得した管理情報から、当該増設した処理装置に払い出された処理装置識別子を削除する削除処理と、
前記削除後の管理情報に基づいて、前記取得したメッセージの呼処理を担当していた処理装置を特定する担当特定処理と、
前記特定した処理装置から、前記取得したメッセージの呼処理の進捗を示す呼状態データを取得する呼状態データ取得処理と、を実行させる
ことを特徴とする状態管理プログラム。 - 前記増設した処理装置は、第1の処理装置と、第2の処理装置と、を少なくとも含み、
前記第1の処理装置に、
前記管理情報取得処理において、前記第1の処理装置に払い出された処理装置識別子、および前記第2の処理装置に払い出された処理装置識別子を含む前記管理情報を、前記振り分け装置から取得させ、
前記削除処理において、前記第1の処理装置に払い出された処理装置識別子だけでなく、前記呼状態データ取得処理を実行しても前記振り分け装置から取得したメッセージに対応する呼状態データを取得できなかったことにより、増設した処理装置であると確認された前記第2の処理装置に払い出された処理装置識別子も、前記管理情報から削除させる
ことを特徴とする請求項5に記載の状態管理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011133160A JP5544521B2 (ja) | 2011-06-15 | 2011-06-15 | 状態管理方法、処理装置、および状態管理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011133160A JP5544521B2 (ja) | 2011-06-15 | 2011-06-15 | 状態管理方法、処理装置、および状態管理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013003768A JP2013003768A (ja) | 2013-01-07 |
JP5544521B2 true JP5544521B2 (ja) | 2014-07-09 |
Family
ID=47672284
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011133160A Expired - Fee Related JP5544521B2 (ja) | 2011-06-15 | 2011-06-15 | 状態管理方法、処理装置、および状態管理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5544521B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5803957B2 (ja) | 2013-03-05 | 2015-11-04 | 信越化学工業株式会社 | パターン形成方法及びレジスト組成物 |
WO2014199553A1 (ja) * | 2013-06-14 | 2014-12-18 | 日本電気株式会社 | 受付ノードによるデータ格納先の決定方法 |
JP5887371B2 (ja) * | 2014-03-03 | 2016-03-16 | 日本電信電話株式会社 | 分散システムおよび分散処理方法 |
JP2019028672A (ja) * | 2017-07-28 | 2019-02-21 | 日本電信電話株式会社 | 分散処理システムに用いられるサーバ装置、分散処理方法およびプログラム |
-
2011
- 2011-06-15 JP JP2011133160A patent/JP5544521B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2013003768A (ja) | 2013-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6723329B2 (ja) | エッジ位置でのカスタマイズ可能なイベントトリガ型計算のためのシステム、方法、及びコンピュータ可読記憶媒体 | |
JP6984097B2 (ja) | エッジプロキシを持つコンテンツデリバリネットワークアーキテクチャ | |
US10146848B2 (en) | Systems and methods for autonomous, scalable, and distributed database management | |
US10645152B2 (en) | Information processing apparatus and memory control method for managing connections with other information processing apparatuses | |
CN108173774B (zh) | 一种客户端的升级方法及系统 | |
US20140059217A1 (en) | Method for content change notification in a cloud storage system, a corresponding cloud broker and cloud agent | |
US10129152B2 (en) | Setting method, server device and service chain system | |
JP7056893B2 (ja) | アプリケーションプログラミングインタフェースapi要求を伝送するための方法、装置、apiゲートウェイ、及びプログラム | |
CN111212134A (zh) | 一种请求报文处理方法、装置、边缘计算系统和电子设备 | |
US20180013610A1 (en) | File delivery method, apparatus and system | |
TW201711432A (zh) | 對伺服器進行健康檢查的方法及設備 | |
JP6700308B2 (ja) | データ・コピー方法及びデバイス | |
CN109547508B (zh) | 一种实现资源访问的方法、装置及系统 | |
US20230069240A1 (en) | Dynamic cloning of application infrastructures | |
WO2019006775A1 (zh) | 一种数据传输方法及其系统 | |
JP2013097548A (ja) | 情報処理システム、情報処理装置、クライアント端末、情報処理方法、及びプログラム | |
JP6272190B2 (ja) | 計算機システム、計算機、負荷分散方法及びそのプログラム | |
JP5544521B2 (ja) | 状態管理方法、処理装置、および状態管理プログラム | |
US20160226963A1 (en) | Load balancing using predictable state partitioning | |
WO2013186837A1 (ja) | 情報処理システム、方法およびプログラム | |
TWI571077B (zh) | 整合網路裝置及其服務整合方法 | |
JP5658621B2 (ja) | 信号振分複製先決定システム、信号振分複製先決定方法およびプログラム | |
JP5690296B2 (ja) | 負荷分散プログラムおよび負荷分散装置 | |
US10621148B1 (en) | Maintaining multiple object stores in a distributed file system | |
JP6643706B2 (ja) | 配布履歴管理プログラム、配布履歴管理装置および配布履歴管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20130201 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130809 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140311 |
|
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: 20140408 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20140410 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140411 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5544521 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |