JP6748359B2 - 接続数制御プログラム、振り分け装置および接続数制御方法 - Google Patents
接続数制御プログラム、振り分け装置および接続数制御方法 Download PDFInfo
- Publication number
- JP6748359B2 JP6748359B2 JP2016229939A JP2016229939A JP6748359B2 JP 6748359 B2 JP6748359 B2 JP 6748359B2 JP 2016229939 A JP2016229939 A JP 2016229939A JP 2016229939 A JP2016229939 A JP 2016229939A JP 6748359 B2 JP6748359 B2 JP 6748359B2
- Authority
- JP
- Japan
- Prior art keywords
- time
- request
- processing
- server
- statistical value
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
- H04L47/821—Prioritising resource allocation or reservation requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/562—Brokering proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/22—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
[第1の実施の形態]
図1は、第1の実施の形態の振り分け装置を示す図である。振り分け装置1は、第1の装置2,3および第2の装置4,5と通信する。振り分け装置1および第1の装置2,3は、ネットワーク6に接続されている。振り分け装置1および第2の装置4,5は、ネットワーク7に接続されている。第1の装置2,3は、クライアントコンピュータ、または、クライアントと呼ばれてもよい。第2の装置4,5は、サーバコンピュータ、または、サーバと呼ばれてもよい。第2の装置4,5は、同じサービスを提供する。第1の装置2,3の数および第2の装置4,5の数は、3以上でもよい。
記憶部1aは、RAM(Random Access Memory)などの揮発性記憶装置でもよいし、フラッシュメモリなどの不揮発性記憶装置でもよい。処理部1bは、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)などを含み得る。処理部1bはプログラムを実行するプロセッサでもよい。プロセッサは、複数のプロセッサの集合(マルチプロセッサ)を含み得る。
図1では、同時接続数の上限に対する第1の時間および第2の時間の関係の例を示している。系列Aは、同時接続数の上限Xに対する第1の時間の統計値T1の関係(T1(X))を示す。系列Bは、同時接続数の上限Xに対する第2の時間の統計値T2の関係(T2(X))を示す。ここで、統計値としては、パーセンタイル値(例えば、90パーセンタイル値など)や平均値などが考えられる。
[第2の実施の形態]
図2は、第2の実施の形態の情報処理システムの例を示す図である。第2の実施の形態の情報処理システムは、プロキシサーバ100、クライアント200,200a、処理サーバ300,300a,300bおよび実行サーバ400,400a,400b,400cを含む。
期間P1では、最大同時接続数が比較的小さく設定されたために、プロキシ待ち時間(Tw)が比較的大きく増加している。
期間P3では、最大同時接続数が比較的大きく設定されたために、処理サーバ300,300a,300bにおける資源競合が発生し、サーバ処理時間(Tr)が比較的大きく増加している。
図7は、プロキシ処理部により出力されるログの例を示す図である。ログ111は、プロキシ処理部130により出力される。ログ111は、記憶部110に格納される。ログ111に含まれる1つのレコードは複数のフィールドを含む。各フィールドは、スペースで区切られる。ログ111で例示される各フィールドの値は、次の情報を示す。
“172.20.121.100:33070”は、当該リクエストの送信元のクライアントのIP(Internet Protocol)アドレスおよびポート番号である。
“nova_compute_api_cluster”は、記憶部110に記憶されている所定の設定ファイルに記述されているフロントエンド名である。
“1551”は、クライアントへのレスポンスとして送信したバイト数である。
“862/78/76/3/0”のスラッシュ記号で区切られた各値は、前から順に次の数を示す。すなわち、“接続中コネクション数/フロントエンドの接続中コネクション数/バックエンドの接続中コネクション数/バックエンドサーバの接続中コネクション数/バックエンドサーバへの接続リトライ回数”である。
図8は、履歴管理テーブルの例を示す図である。履歴管理テーブル112は、記憶部110に格納される。履歴管理テーブル112は、時刻、リクエスト、サーバ、処理時間および待ち時間の項目を含む。
図9は、統計値テーブルの例を示す図である。統計値テーブル113は、記憶部110に格納される。統計値テーブル113は、90パーセンタイル処理時間および90パーセンタイル待ち時間の項目を含む。
ここで、90パーセンタイル値は、統計値の一例である。90パーセンタイル値以外にも、95パーセンタイル値、99パーセンタイル値または中央値(50パーセンタイル値)などを統計値として採用してもよい。また、直近のN個のリクエストに関するサーバ処理時間やプロキシ待ち時間の平均値を統計値として採用してもよい。
設定処理部120は、プロキシ処理部130による振り分け処理に用いられる最大同時接続数の設定を行う。最大同時接続数は、処理サーバ毎に設定される。ここで、処理サーバ300,300a,300bを、識別情報“SV1”などに含まれる番号k(kは自然数)で識別するものとし、処理サーバ単位の最大同時接続数をck(kは自然数)と表す。この場合、処理サーバ全体の最大同時接続数cは、c=Σckである。ここで、Σはkについて和を計算することを表すものとする。
図11は、プロキシサーバの処理例を示すフローチャートである。以下、図11に示す処理をステップ番号に沿って説明する。下記のステップS1を起点とする手順は、例えば、プロキシサーバ100の起動後、設定処理部120の起動をトリガとして実行開始される。
(S7)設定処理部120は、履歴管理テーブル112を参照して、サーバ処理時間の統計値Tr、および、プロキシ待ち時間の統計値Twを計算する。統計値としては、例えば、前述のように90パーセンタイル値(あるいは、95パーセンタイル値や99パーセンタイル値など)を採用することが考えられる。
設定処理部120は、増減幅dを、d=error×kpとする。ここで、kpは、例えば、最小値cminである。そして、ステップS9,S10では、設定処理部120は、c+dをcに代入する。
図14は、最大同時接続数の他の制御例(その1)を示す図である。処理サーバ300,300a,300bは、プロキシサーバ100(図14では外部プロキシサーバ100と表記する)と通信する他に、内部プロキシサーバ500を介して、相互に通信することがある。例えば、内部プロキシサーバ500は、ネットワーク30に接続される。この場合、外部プロキシサーバ100は、クライアント200,200aからのリクエストを処理サーバ300,300a,300bに振り分ける。一方、内部プロキシサーバ500は、処理サーバ300,300a,300bからのリクエスト(APIリクエスト)を、処理サーバ300,300a,300bに振り分ける。
図17は、他の制御例(その3)における履歴管理テーブルの例を示す図である。例えば、記憶部110は、履歴管理テーブル112に非同期処理時間の項目を追加した履歴管理テーブル112aを、履歴管理テーブル112の代わりに記憶する。
1a 記憶部
1b 処理部
2,3 第1の装置
4,5 第2の装置
6,7 ネットワーク
A,B,C 系列
d1 バッファ
Claims (9)
- 第1の装置により送信されたリクエストを受信してから前記リクエストを第2の装置に送信するまでの第1の時間と、前記第2の装置に前記リクエストを送信してから前記リクエストに対するレスポンスを受信するまでの第2の時間とを、複数のリクエストそれぞれに対して記録し、
前記第1の時間の統計値と前記第2の時間の統計値との比較に応じて、前記第2の装置に対する同時接続数の上限を変更する、
処理をコンピュータに実行させる接続数制御プログラム。 - 前記上限の変更では、前記第1の時間の統計値が前記第2の時間の統計値以上の場合、前記上限を増やす、請求項1記載の接続数制御プログラム。
- 前記上限の変更では、前記第1の時間の統計値が前記第2の時間の統計値よりも小さい場合、前記上限を減らす、請求項1または2記載の接続数制御プログラム。
- 前記上限の変更では、前記第1の時間の統計値と前記第2の時間の統計値との差に応じて、変更量を決定する、請求項1乃至3の何れか1項に記載の接続数制御プログラム。
- 前記上限の変更では、前記第1の時間の統計値と前記第2の時間の統計値とを前記リクエストの種別毎に求め、前記上限を前記種別毎に変更する、請求項1乃至4の何れか1項に記載の接続数制御プログラム。
- 前記第1の時間および前記第2の時間の記録では、前記第2の装置による前記レスポンスの送信後に前記リクエストに応じて前記第2の装置により実行された非同期処理の実行時間を更に記録し、
前記上限の変更では、前記非同期処理の実行時間に基づいて、前記第2の時間の統計値を補正する、
請求項1乃至5の何れか1項に記載の接続数制御プログラム。 - 前記第1の装置から前記リクエストを受信すると、前記第2の装置に送信済の前記リクエストのうち、前記レスポンスを未受信である前記リクエストの数と前記上限との比較に応じて、受信した前記リクエストの前記第2の装置への送信を制限する、処理を更に前記コンピュータに実行させる請求項1乃至6の何れか1項に記載の接続数制御プログラム。
- 第1の装置により送信されたリクエストを受信してから前記リクエストを第2の装置に送信するまでの第1の時間と、前記第2の装置に前記リクエストを送信してから前記リクエストに対するレスポンスを受信するまでの第2の時間とを、複数のリクエストそれぞれに対して記憶する記憶部と、
前記第1の時間と前記第2の時間とを前記記憶部に記録し、前記第1の時間の統計値と前記第2の時間の統計値との比較に応じて、前記第2の装置に対する同時接続数の上限を変更する処理部と、
を有する振り分け装置。 - コンピュータが、
第1の装置により送信されたリクエストを受信してから前記リクエストを第2の装置に送信するまでの第1の時間と、前記第2の装置に前記リクエストを送信してから前記リクエストに対するレスポンスを受信するまでの第2の時間とを、複数のリクエストそれぞれに対して記録し、
前記第1の時間の統計値と前記第2の時間の統計値との比較に応じて、前記第2の装置に対する同時接続数の上限を変更する、
接続数制御方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016229939A JP6748359B2 (ja) | 2016-11-28 | 2016-11-28 | 接続数制御プログラム、振り分け装置および接続数制御方法 |
US15/800,134 US10476732B2 (en) | 2016-11-28 | 2017-11-01 | Number-of-couplings control method and distributing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016229939A JP6748359B2 (ja) | 2016-11-28 | 2016-11-28 | 接続数制御プログラム、振り分け装置および接続数制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018088041A JP2018088041A (ja) | 2018-06-07 |
JP6748359B2 true JP6748359B2 (ja) | 2020-09-02 |
Family
ID=62191097
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016229939A Active JP6748359B2 (ja) | 2016-11-28 | 2016-11-28 | 接続数制御プログラム、振り分け装置および接続数制御方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10476732B2 (ja) |
JP (1) | JP6748359B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022013907A1 (ja) * | 2020-07-13 | 2022-01-20 | 日本電信電話株式会社 | 中継装置、振分装置、中継装置の経路切替方法、振分装置の経路切替方法、及びプログラム |
US11900182B2 (en) * | 2021-10-06 | 2024-02-13 | Imperva, Inc. | Waiting room with zero latency |
WO2023187885A1 (ja) * | 2022-03-28 | 2023-10-05 | 日本電信電話株式会社 | サーバ選択システム、サーバ選択方法、サーバ選択装置、接続ノード、および、プログラム |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2001296993A1 (en) * | 2000-10-05 | 2002-04-15 | Christopher Peiffer | Connection management system and method |
JP2004070860A (ja) * | 2002-08-09 | 2004-03-04 | Hitachi Ltd | ストリームコンテンツ配送システムおよびプロキシサーバ |
JP2005184165A (ja) * | 2003-12-17 | 2005-07-07 | Hitachi Ltd | トラフィック制御装置およびそれを用いたサービスシステム |
JP2006293885A (ja) * | 2005-04-14 | 2006-10-26 | I Broadcast:Kk | 情報配信システムと方法およびプログラム |
WO2007125942A1 (ja) | 2006-04-26 | 2007-11-08 | Nippon Telegraph And Telephone Corporation | 負荷制御装置およびその方法 |
US20070299965A1 (en) * | 2006-06-22 | 2007-12-27 | Jason Nieh | Management of client perceived page view response time |
US20100274922A1 (en) * | 2009-03-31 | 2010-10-28 | Reavely Simon | System and method for managing long lived connections from a plurality of applications running on a wireless device |
WO2012091948A2 (en) * | 2010-12-28 | 2012-07-05 | Citrix Systems, Inc. | Systems and methods for database proxy request switching |
CN103392314B (zh) * | 2010-12-29 | 2016-06-15 | 思杰系统有限公司 | 用于可扩展的n核统计信息聚合的系统和方法 |
WO2013129061A1 (ja) | 2012-02-28 | 2013-09-06 | 日本電気株式会社 | 同時接続数制御システム、同時接続数制御サーバ、同時接続数制御方法および同時接続数制御プログラム |
US9235618B2 (en) * | 2013-04-06 | 2016-01-12 | Citrix Systems, Inc. | Systems and methods for caching of SQL responses using integrated caching |
US20150019686A1 (en) * | 2013-07-12 | 2015-01-15 | Seven Networks, Inc. | Distributed caching systems with configurable extended caching optimization |
EP3037965A1 (en) * | 2014-12-22 | 2016-06-29 | Oberthur Technologies | Client-server communication |
US11057446B2 (en) * | 2015-05-14 | 2021-07-06 | Bright Data Ltd. | System and method for streaming content from multiple servers |
-
2016
- 2016-11-28 JP JP2016229939A patent/JP6748359B2/ja active Active
-
2017
- 2017-11-01 US US15/800,134 patent/US10476732B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20180152335A1 (en) | 2018-05-31 |
JP2018088041A (ja) | 2018-06-07 |
US10476732B2 (en) | 2019-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11411825B2 (en) | In intelligent autoscale of services | |
US11159406B2 (en) | Load balancing web service by rejecting connections | |
US11736372B2 (en) | Collecting samples hierarchically in a datacenter | |
US9992273B2 (en) | Intelligent load balancer selection in a multi-load balancer environment | |
US11216310B2 (en) | Capacity expansion method and apparatus | |
WO2021012956A1 (zh) | 云平台的资源处理方法、相关设备及存储介质 | |
US20060161920A1 (en) | Method, system, and computer program for managing a queuing system | |
US10944683B1 (en) | Hybrid queue system for request throttling | |
JP6748359B2 (ja) | 接続数制御プログラム、振り分け装置および接続数制御方法 | |
JP2006067401A (ja) | 計算機システム及び計算機システムの帯域制御方法 | |
CN112087520B (zh) | 数据处理方法、装置、设备及计算机可读存储介质 | |
US20160014237A1 (en) | Communication device, communication method, and computer-readable recording medium | |
US10146584B2 (en) | Weight adjusted dynamic task propagation | |
US11474868B1 (en) | Sharded polling system | |
US10979359B1 (en) | Polling resource management system | |
US20230019037A1 (en) | Reactive non-blocking input and output for target device communication | |
US10673937B2 (en) | Dynamic record-level sharing (RLS) provisioning inside a data-sharing subsystem | |
US10171622B2 (en) | Dynamic content reordering for delivery to mobile devices | |
CN113574506B (zh) | 基于计算节点标识符的请求分配 | |
US20200404081A1 (en) | Storage medium and packet analyzing device | |
JP2019526860A (ja) | スケーラブルなリアルタイムメッセージングシステム | |
CN112491066A (zh) | 负载均衡方法、装置、系统、目标负载均衡设备及介质 | |
US11003512B2 (en) | System and method for optimizing bulk data operation | |
US20240248751A1 (en) | System and method for managing a migration of a production environment executing logical devices | |
US20220365809A1 (en) | Analysis processing apparatus, system, method, and non-transitory computer readable medium storing program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190807 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20190815 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20190815 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200630 |
|
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: 20200707 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200720 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6748359 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |