JP6594271B2 - Dispersing apparatus and dispersing method - Google Patents
Dispersing apparatus and dispersing method Download PDFInfo
- Publication number
- JP6594271B2 JP6594271B2 JP2016165773A JP2016165773A JP6594271B2 JP 6594271 B2 JP6594271 B2 JP 6594271B2 JP 2016165773 A JP2016165773 A JP 2016165773A JP 2016165773 A JP2016165773 A JP 2016165773A JP 6594271 B2 JP6594271 B2 JP 6594271B2
- Authority
- JP
- Japan
- Prior art keywords
- processing request
- server
- key
- distribution
- information
- 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
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Retry When Errors Occur (AREA)
- Computer And Data Communications (AREA)
Description
本発明は、分散処理システムにおける輻輳制御技術に関する。 The present invention relates to a congestion control technique in a distributed processing system.
分散処理システムでは、処理が均等になるように、外部からの処理要求を複数のサーバに振り分ける工夫がされている。また、分散処理システムでは、分散処理システムを構成するサーバの使用状況に応じて、リソースプールへのサーバの追加、あるいはリソースプールからサーバの削除を行うことで、柔軟なスケーラビリティを確保している。 In the distributed processing system, a device for distributing processing requests from the outside to a plurality of servers is devised so that processing is uniform. In the distributed processing system, flexible scalability is ensured by adding a server to the resource pool or deleting a server from the resource pool according to the usage status of the servers constituting the distributed processing system.
急激な利用増(バーストトラヒック等)により処理能力を超える要求が一部のサーバに偏った場合、そのサーバ上で動作するアプリケーションはシステムダウンを防止するため、輻輳規制により新たな処理要求を拒否する。 If requests that exceed processing capacity are biased to some servers due to sudden increase in usage (burst traffic etc.), applications running on those servers will refuse new processing requests due to congestion regulation to prevent system down. .
特許文献1では、輻輳が発生した初動時に輻輳が発生したセッション制御装置の収容する局番への発呼を規制した後、輻輳発生の要因局番を抽出しながら、その要因局番への発呼を規制することで、網リソースの最大活用を可能としている。 In Patent Document 1, after restricting the call to the station number accommodated by the session control apparatus in which the congestion has occurred at the time of the initial activation of the congestion, the call to the cause station number is restricted while extracting the cause station number of the occurrence of congestion. This enables maximum utilization of network resources.
分散処理システムにおいて、要求が一部のサーバに偏って輻輳が発生した場合、要求が集中したサーバ以外のサーバでは、その要求を処理可能な場合もある。 In a distributed processing system, when the request is concentrated on some servers and congestion occurs, the request may be processed by a server other than the server on which the requests are concentrated.
本発明は、上記に鑑みてなされたものであり、分散処理システムの可用性を向上することを目的とする。 The present invention has been made in view of the above, and an object thereof is to improve the availability of a distributed processing system.
第1の本発明に係る分散装置は、複数のサーバ装置に処理を分散する分散装置であって、処理要求に含まれる情報をキーとして当該処理要求を処理させる前記サーバ装置を決定する振分手段と、前記振分手段が決定した前記サーバ装置へ前記処理要求を送信する送信手段と、を有し、前記振分手段は、前記処理要求を送信した前記サーバ装置からエラーを受信した場合は、前記処理要求に含まれる情報を書き換えて前記処理要求を再度振り分け、前記処理要求を再度振り分けたときに、最初にキーとして用いた前記処理要求に含まれる情報と再度振り分けたときにキーとして用いた書き換え後の情報との括り付け情報を蓄積手段に格納することを特徴とする。 A distribution apparatus according to a first aspect of the present invention is a distribution apparatus that distributes processing to a plurality of server apparatuses, and that distributes the server apparatus to process the processing request using information included in the processing request as a key. And a transmission unit that transmits the processing request to the server device determined by the distribution unit, and when the distribution unit receives an error from the server device that transmitted the processing request, The information included in the processing request is rewritten and the processing request is reassigned . When the processing request is reassigned, the information is included in the processing request used as a key at the time of redistribution. The linking information with the rewritten information is stored in the storage means .
第2の本発明に係る分散方法は、複数のサーバ装置に処理を分散する分散方法であって、処理要求に含まれる情報をキーとして当該処理要求を処理させる前記サーバ装置を決定するステップと、前記決定するステップで決定した前記サーバ装置へ前記処理要求を送信するステップと、前記処理要求を送信した前記サーバ装置からエラーを受信した場合は、前記処理要求に含まれる情報を書き換えて前記処理要求を再度振り分けるステップと、前記処理要求を再度振り分けたときに、最初にキーとして用いた前記処理要求に含まれる情報と再度振り分けたときにキーとして用いた書き換え後の情報との括り付け情報を蓄積手段に格納するステップと、を有することを特徴とする。 A distribution method according to a second aspect of the present invention is a distribution method for distributing processing to a plurality of server devices, the step of determining the server device that processes the processing request using information included in the processing request as a key; A step of transmitting the processing request to the server device determined in the determining step; and an error received from the server device that transmitted the processing request, rewriting the information included in the processing request and the processing request And when re-distributing the processing request, the information included in the processing request first used as a key and the rewritten information used as the key when re-allocating are stored. Storing in the means .
本発明によれば、分散処理システムの可用性を向上することができる。 According to the present invention, the availability of a distributed processing system can be improved.
以下、本発明の実施の形態について図面を用いて説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図1は、本実施の形態における分散装置1を含む分散処理システムの全体を示す全体構成図である。同図に示す分散処理システムは、分散装置1と複数のサーバ3を備える。同図では1台の端末5のみ図示しているが、本分散処理システムは多数の端末5によって利用される。
FIG. 1 is an overall configuration diagram illustrating an entire distributed processing system including a distribution apparatus 1 according to the present embodiment. The distributed processing system shown in FIG. 1 includes a distributed device 1 and a plurality of
分散装置1は、端末5から接続要求を受信し、その接続要求を複数のサーバ3のいずれかに振り分ける。振り分け先のサーバ3から正常応答が返信された場合は、その正常応答を端末5へ返信する。振り分け先のサーバ3からエラーが返信された場合は、振分け空間の再割り当てを行って、接続要求を再振り分けする。再振り分けしてから所定の時間が経過した場合、あるいは接続要求に対する再振り分けの回数が所定の回数を超えた場合、分散装置1は、端末5に対してサーバエラーを返信するとともに、新規接続要求の受け付けを一定期間規制する接続規制を開始する。接続規制の開始後、端末5から接続要求を受信したときは、その接続要求をサーバ3に振り分けずに端末5にサーバエラーを返信する。
The distribution apparatus 1 receives a connection request from the
次に、分散装置1について説明する。 Next, the dispersion apparatus 1 will be described.
図2は、本実施の形態における分散装置1の構成を示す機能ブロック図である。同図に示す分散装置1は、振り分け部11、接続規制部12、及び括り付け情報蓄積部13を備える。分散装置1が備える各部は、演算処理装置、記憶装置等を備えたコンピュータにより構成して、各部の処理がプログラムによって実行されるものとしてもよい。このプログラムは分散装置1が備える記憶装置に記憶されており、磁気ディスク、光ディスク、半導体メモリ等の記録媒体に記録することも、ネットワークを通して提供することも可能である。
FIG. 2 is a functional block diagram showing the configuration of the distribution apparatus 1 in the present embodiment. The distribution apparatus 1 shown in FIG. 1 includes a
振り分け部11は、端末5から接続要求を受信し、接続要求を複数のサーバ3にいずれかに振り分ける。振り分け部11は、例えば、接続要求に含まれるユニークな情報をキーとしてハッシュ計算を行って振り分け先のサーバ3を決定する。具体的には、接続要求がSIPメッセージの場合は、セッションを識別するユニークなCall−IDをキーとしてハッシュ計算を行い、振り分け先のサーバ3を決定する。
The
振り分け部11は、振り分け先のサーバ3から応答を受信し、端末5へ返信する。サーバ3からの応答が輻輳等のサーバエラーの場合、振り分け部11は、端末5へサーバエラーを返信せずに、接続要求の再振り分けを実行する。具体的には、接続要求の再振り分けは、キーとして用いた情報(例えばCall−ID)から新たな情報を生成し、新たな情報をキーとしてハッシュ計算を行うことで実行する。振り分け部11は、最初のキーとして用いた情報と新たな情報の括り付け情報を括り付け情報蓄積部13に格納する。接続要求の再振り分け方法の別な方法として、キーを変更せずに、ハッシュ計算のアルゴリズムを変更してもよい。この場合、振り分け部11は、キーと適用したハッシュ計算のアルゴリズムとを括り付ける情報を括り付け情報蓄積部13に格納する。
The
接続規制部12は、再振り分けしたサーバ3からもサーバエラーが返信されたときに、エラーが閾値を超えている場合は、分散処理システム上のアプリケーション全体が輻輳していると判断し、新規接続要求の受け付けを一定期間規制する接続規制を開始する。例えば、再振り分けを開始してから所定のタイマが満了するまでの間に正常応答が得られなかった場合は接続規制を開始する。あるいは、再振り分けを所定の回数実行しても正常応答が得られなかった場合は接続規制を開始する。
When a server error is returned from the
括り付け情報蓄積部13は、最初の振り分けに用いる情報と再振り分けに用いた情報とを括り付けた情報を保持する。例えば、Call−IDをキーとして振り分けに用いて、再振り分けするときにCall−IDの情報を書き換えた場合、括り付け情報蓄積部13は、元のCall−IDと書き換え後のCall−IDの値を括り付けて保持する。分散装置1は、再振り分けしたサーバ3からの応答のCall−IDを元のCall−IDに戻して端末5に返信する。また、端末5から接続要求に続く同一セッションのメッセージを受信したときに、そのメッセージのCall−IDが括り付け情報蓄積部13に存在する場合は、そのCall−IDを対応する別のCall−IDに書き換えて、書き換え後のCall−IDをキーにハッシュ計算をして振り分け先のサーバ3を決定し、メッセージを振り分ける。
The binding
次に、本実施の形態における分散処理システムの動作について説明する。 Next, the operation of the distributed processing system in this embodiment will be described.
図3は、分散処理システムが接続要求を振り分ける処理の流れを示すシーケンス図である。 FIG. 3 is a sequence diagram showing a flow of processing in which the distributed processing system distributes connection requests.
分散装置1は、端末5から接続要求を受信すると(ステップS11)、接続要求に含まれる情報をキーに振り分け処理を行い(ステップS12)、振り分け先のサーバAに接続要求を送信する(ステップS13)。 When receiving the connection request from the terminal 5 (step S11), the distribution apparatus 1 performs distribution processing using the information included in the connection request as a key (step S12), and transmits the connection request to the server A that is the distribution destination (step S13). ).
サーバAからサーバエラーが返信されると(ステップS14)、分散装置1は、再振り分けを行い(ステップS15)、再振り分け先のサーバBに接続要求を送信する(ステップS16)。 When a server error is returned from the server A (step S14), the distribution apparatus 1 performs redistribution (step S15), and transmits a connection request to the redistribution destination server B (step S16).
サーバBから正常応答が返信されると(ステップS17)、分散装置1は、正常応答を端末5へ返信する(ステップS18)。 When a normal response is returned from the server B (step S17), the distribution apparatus 1 returns a normal response to the terminal 5 (step S18).
以降、端末5からの同一セッションのメッセージはサーバBに振り分けられる。
Thereafter, messages of the same session from the
図4は、分散処理システム全体が輻輳していると判定するときの処理の流れを示すシーケンス図である。 FIG. 4 is a sequence diagram showing a processing flow when it is determined that the entire distributed processing system is congested.
分散装置1は、端末5から接続要求を受信すると(ステップS21)、接続要求に含まれる情報をキーに振り分け処理を行い(ステップS22)、振り分け先のサーバAに接続要求を送信する(ステップS23)。 When receiving the connection request from the terminal 5 (step S21), the distribution device 1 performs distribution processing using the information included in the connection request as a key (step S22), and transmits the connection request to the server A that is the distribution destination (step S23). ).
サーバAからサーバエラーが返信されると(ステップS24)、分散装置1は、再振り分けを行い(ステップS25)、再振り分け先のサーバBに接続要求を送信する(ステップS26)。 When a server error is returned from the server A (step S24), the distribution apparatus 1 performs redistribution (step S25), and transmits a connection request to the redistribution destination server B (step S26).
サーバBからサーバエラーが返信されると(ステップS27)、分散装置1は、再振り分けを行い(ステップS28)、再振り分け先のサーバCに接続要求を送信する(ステップS29)。 When a server error is returned from server B (step S27), distribution apparatus 1 performs redistribution (step S28), and transmits a connection request to redistribution destination server C (step S29).
サーバCからサーバエラーが返信されたときに(ステップS30)、分散処理システム全体の輻輳を判定するタイマが満了していた場合は、分散装置1は、サーバエラーを端末5へ返信するとともに(ステップS31)、新規接続要求を一定期間規制する(ステップS32)。 When a server error is returned from the server C (step S30), if the timer for determining the congestion of the entire distributed processing system has expired, the distribution apparatus 1 returns a server error to the terminal 5 (step S30). S31), a new connection request is regulated for a certain period (step S32).
接続規制中、分散装置1は、端末5から接続要求を受信すると(ステップS33)、その接続要求を振り分けずに、サーバエラーを端末5へ返信する(ステップS34)。
During connection restriction, when the distribution apparatus 1 receives a connection request from the terminal 5 (step S33), it returns a server error to the
所定の時間が経過後、あるいは分散処理システムの輻輳が解消すると、分散装置1は、接続規制を解除して、接続要求の振り分けを開始する。 After a predetermined time elapses or when congestion of the distributed processing system is resolved, the distributed device 1 releases the connection restriction and starts distributing connection requests.
以上説明したように、本実施の形態によれば、接続要求に含まれるユニークな情報をキーとしてハッシュ計算を行ない、接続要求の振り分け先のサーバ3を決定し、振り分け先のサーバ3からエラーを受信した場合は、キーとして用いた情報から生成した新たな情報をキーとして接続要求を再振り分けすることにより、一部のサーバ3で接続要求を処理できなくても他のサーバ3で処理が可能となり、分散処理システムの可用性を向上することができる。
As described above, according to the present embodiment, hash calculation is performed using the unique information included in the connection request as a key, the
本実施の形態によれば、最初のキーの情報と再振り分けに用いた情報とを括り付けた情報を括り付け情報蓄積部13に格納することにより、接続要求の後に端末5から受信するメッセージを接続要求を振り分けたサーバ3へ送信することが可能となり、分散装置1でステート管理をする必要がなくなる。
According to the present embodiment, the information received from the
1…分散装置
11…振り分け部
12…接続規制部
13…括り付け情報蓄積部
3…サーバ
5…端末
DESCRIPTION OF SYMBOLS 1 ... Distributed
Claims (4)
処理要求に含まれる情報をキーとして当該処理要求を処理させる前記サーバ装置を決定する振分手段と、
前記振分手段が決定した前記サーバ装置へ前記処理要求を送信する送信手段と、を有し、
前記振分手段は、前記処理要求を送信した前記サーバ装置からエラーを受信した場合は、前記処理要求に含まれる情報を書き換えて前記処理要求を再度振り分け、前記処理要求を再度振り分けたときに、最初にキーとして用いた前記処理要求に含まれる情報と再度振り分けたときにキーとして用いた書き換え後の情報との括り付け情報を蓄積手段に格納することを特徴とする分散装置。 A distributed device that distributes processing to a plurality of server devices,
Allocating means for determining the server device to process the processing request using the information included in the processing request as a key;
Transmission means for transmitting the processing request to the server device determined by the distribution means,
When the distribution unit receives an error from the server device that has transmitted the processing request, it re-distributes the processing request by rewriting information included in the processing request, and when the processing request is allocated again, A distribution apparatus, characterized in that binding information of information included in the processing request first used as a key and rewritten information used as a key when reassigned is stored in an accumulation unit .
処理要求に含まれる情報をキーとして当該処理要求を処理させる前記サーバ装置を決定するステップと、
前記決定するステップで決定した前記サーバ装置へ前記処理要求を送信するステップと、
前記処理要求を送信した前記サーバ装置からエラーを受信した場合は、前記処理要求に含まれる情報を書き換えて前記処理要求を再度振り分けるステップと、
前記処理要求を再度振り分けたときに、最初にキーとして用いた前記処理要求に含まれる情報と再度振り分けたときにキーとして用いた書き換え後の情報との括り付け情報を蓄積手段に格納するステップと、
を有することを特徴とする分散方法。 A distribution method for distributing processing to a plurality of server devices,
Determining the server device to process the processing request using the information included in the processing request as a key;
Transmitting the processing request to the server device determined in the determining step;
If an error is received from the server device that has transmitted the processing request, rewriting the information included in the processing request and redistributing the processing request;
Storing in the accumulating means the binding information of the information included in the processing request that was first used as a key when re-distributing the processing request and the rewritten information that was used as a key when re-allocating; ,
A dispersion method characterized by comprising:
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016165773A JP6594271B2 (en) | 2016-08-26 | 2016-08-26 | Dispersing apparatus and dispersing method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016165773A JP6594271B2 (en) | 2016-08-26 | 2016-08-26 | Dispersing apparatus and dispersing method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2018032315A JP2018032315A (en) | 2018-03-01 |
| JP6594271B2 true JP6594271B2 (en) | 2019-10-23 |
Family
ID=61304302
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2016165773A Active JP6594271B2 (en) | 2016-08-26 | 2016-08-26 | Dispersing apparatus and dispersing method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6594271B2 (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10540207B1 (en) * | 2018-07-18 | 2020-01-21 | International Business Machines Corporation | Fast, low memory, consistent hash using an initial distribution |
| JP7347810B2 (en) * | 2020-10-27 | 2023-09-20 | Necプラットフォームズ株式会社 | Home gateway, system, home gateway method, and home gateway program |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3372455B2 (en) * | 1997-07-03 | 2003-02-04 | 富士通株式会社 | Packet relay control method, packet relay device, and program storage medium |
| JP4822997B2 (en) * | 2006-09-20 | 2011-11-24 | 富士通株式会社 | Communication apparatus and communication method |
| JP5713412B2 (en) * | 2013-01-31 | 2015-05-07 | 株式会社日立製作所 | Management device, management system, and management method |
| JP6363475B2 (en) * | 2014-11-20 | 2018-07-25 | 日本電信電話株式会社 | Call processing control server, call processing control system, and call processing control method |
-
2016
- 2016-08-26 JP JP2016165773A patent/JP6594271B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2018032315A (en) | 2018-03-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR102199278B1 (en) | Accelerated resource processing method and apparatus, and network function virtualization system | |
| CN108173774B (en) | Client upgrading method and system | |
| WO2017027137A1 (en) | Scalable, real-time messaging system | |
| US20120011244A1 (en) | Method for redistributing license tokens for a service across a cloud computing environment | |
| US10652080B2 (en) | Systems and methods for providing a notification system architecture | |
| CA2993155A1 (en) | Scalable, real-time messaging system | |
| US20150113156A1 (en) | Prioritized blocking of on-demand requests | |
| JPWO2018220708A1 (en) | Resource allocation system, management device, method and program | |
| US10802896B2 (en) | Rest gateway for messaging | |
| KR101402367B1 (en) | Efficient and cost-effective distributed call admission control | |
| JP6594271B2 (en) | Dispersing apparatus and dispersing method | |
| US20020138613A1 (en) | Follow-up notification of availability of requested application service and bandwidth between client (s) and server (s) over any network | |
| CN109600436B (en) | A kind of distributed iscsi service realization method, system and related device | |
| CN111835797A (en) | Data processing method, device and equipment | |
| JP6204287B2 (en) | Distributed processing method, processing server, and program | |
| US20190319901A1 (en) | Scalable, real-time messaging system | |
| CN119676162A (en) | Traffic scheduling method, device, storage medium and program product for multi-data center system | |
| Venkatasubramanian et al. | E ective load management for scalable video servers | |
| CN109621407A (en) | A kind of client log on request method and apparatus | |
| US20180192294A1 (en) | Resource allocation | |
| JP2007219637A (en) | Load balancing system and program thereof | |
| US20180219953A1 (en) | Communication layer with dynamic multi-session management | |
| CN114827093A (en) | Communication method, device, system and storage medium | |
| US7583647B2 (en) | Controller for controlling number of requests served by a server | |
| JP6163094B2 (en) | Message delivery system, message delivery method, and message delivery program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180830 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190529 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190702 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190830 |
|
| 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: 20190917 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190924 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6594271 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| 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 |