JP2002091936A - 負荷分散装置及び負荷見積もり方法 - Google Patents

負荷分散装置及び負荷見積もり方法

Info

Publication number
JP2002091936A
JP2002091936A JP2000280118A JP2000280118A JP2002091936A JP 2002091936 A JP2002091936 A JP 2002091936A JP 2000280118 A JP2000280118 A JP 2000280118A JP 2000280118 A JP2000280118 A JP 2000280118A JP 2002091936 A JP2002091936 A JP 2002091936A
Authority
JP
Japan
Prior art keywords
load
server
processing
data
request
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.)
Pending
Application number
JP2000280118A
Other languages
English (en)
Inventor
Yoko Kawada
容子 川田
Osamu Takeuchi
理 竹内
Le Moal Damien
モアル ダミエン レ
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2000280118A priority Critical patent/JP2002091936A/ja
Priority to US09/828,140 priority patent/US20020032777A1/en
Publication of JP2002091936A publication Critical patent/JP2002091936A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1012Server selection for load balancing based on compliance of requirements or conditions with available server resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1014Server selection for load balancing based on the content of a request
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1017Server selection for load balancing based on a round robin mechanism

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【課題】複数のサーバにクライアントからのサービス要
求を負荷分散させるWWWシステムにおいて、サーバへの
アクセス集中が突発的に発生した場合でも適切な負荷分
散を実現できる動的負荷分散を実現する。 【解決手段】負荷分散装置が、サービス要求パケットの
ヘッダ情報から当該サービス要求がサーバに与える負荷
の大きさを見積もる手段と、見積もり値を、振り分けら
れたサーバ毎に管理する手段とを有することにより、サ
ーバのリアルタイムな負荷状態に基づく負荷分散を可能
とする。また、予め、負荷見積もりを行うための負荷見
積もりテーブル生成手段を備えることにより、サーバ・
システム稼動時には余計な通信や負荷監視処理が発生せ
ず、サーバ・システム全体を高い性能に保つことができ
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する分野】本発明は、クライアントからの要
求を複数のサーバに分散させるサーバ負荷分散技術に属
する。
【0002】
【従来の技術】近年、インターネットやイントラネット
が急激に普及し、サーバへの負荷も急増している。この
ため、同一サービスを提供可能なサーバを複数配置し、
複数のサーバ間でクライアントからのサービス要求を振
り分ける技術が必須になってきている。
【0003】例えば、定期的にサーバの負荷状態を監視
し、サーバの負荷状態に応じて、サービス要求を振り分
けるサーバを動的に決定する方法が提案されている。特
開平11-250020では、各サーバが定期的に単位時間あた
りのIPパケット数を測定し、状態管理サーバへ自身の負
荷状態を通知する。クライアントは状態管理サーバが有
する各サーバの負荷状態を調べ、最も負荷の低いサーバ
へサービス要求を送信する。他の例として、"G.Goldszm
idt and G.Hunt, "NetDispatcher: A TCP Connection R
outer", Technical Report IBM Research. RC20853, Ma
y, 1997.がある。この方法は、複数のクライアントと複
数のサーバとの間に負荷分散装置を配置する。負荷分散
装置、及び、各サーバが、定期的にさまざまなサーバの
負荷評価値を測定し、これらの負荷評価値から動的に振
り分けるサーバを選択する。
【0004】
【発明が解決しようとする課題】上記従来技術のように
定期的にサーバが自身の負荷情報を状態管理サーバまた
は負荷分散装置へ通知する方法は、負荷状態監視の時間
間隔が長いと、リアルタイムなサーバの負荷状態を検知
することが出来ない。一般に、サーバへのアクセス集中
は突発的に発生するため、サーバのリアルタイムな負荷
状態を把握できなければ、サーバは突発的なアクセス集
中によって過負荷状態に陥る恐れがある。また、負荷状
態監視の時間間隔を短くすると、サーバや負荷分散装置
のCPU負荷、及び、サーバと負荷分散装置との間の通信
負荷を増大させてしまうため、サーバ・システム全体の
性能を低下させる。
【0005】本発明の目的は、サーバへのアクセス集中
が突発的に発生した場合においても適切な負荷分散を実
現でき、かつ、サーバ・システム全体を高い性能に保つ
ことができる動的負荷分散を実現する負荷分散装置及び
方法を実現することである。
【0006】
【課題を解決するための手段】本発明は、サーバの負荷
状態をリアルタイムに検知でき、かつ、サーバのCPU負
荷やサーバと負荷分散装置との間の通信負荷を上昇させ
ることなく、各サーバの負荷状態に応じて動的な負荷分
散を実行する負荷分散装置及び負荷見積もり方法を提供
する。具体的には、以下の手段を提供する。
【0007】1) 負荷分散装置において、クライアン
トからのサービス要求パケットのパケット・ヘッダを分
析し、当該サービス要求パケットの要求内容に基づいて
サーバで実行される処理負荷の大きさを負荷評価値とし
て見積もる手段と、サーバ毎に過去一定時間における振
り分けられたサービス要求パケットの負荷評価値の累計
値を負荷状態値として保持する手段と、前記負荷状態値
をもとにサービス要求を振り分けるサーバを決定する手
段を提供する。
【0008】2) 負荷分散装置において、クライアン
トからのサービス要求パケットのパケット・ヘッダよ
り、要求するサービスの種類、要求するコンテンツ・デ
ータのサイズ、要求するコンテンツ・データを生成する
ための実行プログラムのうち、少なくとも一つを識別す
る手段と、これらの情報によりサーバで実行される処理
負荷の大きさを負荷評価値として見積もる手段を提供す
る。
【0009】3) 前記2)の負荷見積もりを実現する
ために、サーバ・システム稼動前、もしくは予備システ
ムにおいて、サーバが提供可能な全サービス、全コンテ
ンツ・データのアクセス要求を各サーバに対して行う手
段と、前記要求に対する応答時間を測定する手段と、前
記要求に基づいて各サーバが処理を実行する際のCPU負
荷を測定する手段と、前記応答時間、CPU負荷、及び、
応答データのサイズにより、サービス要求データが各サ
ーバに与える負荷の大きさを示す負荷評価値を求めるた
めのデータを生成する手段を提供する。
【0010】本発明の負荷分散装置では、サービス要求
パケットが受信される度に当該サービス要求パケットが
サーバへ与える処理負荷の大きさを見積もり、各サーバ
の負荷状態値を更新するため、各サーバの負荷状態をリ
アルタイムに検知可能である。また、本発明は動的負荷
分散を行うためのサーバと負荷分散装置との間の通信
や、サーバ内における負荷状態監視処理を実行する必要
がないため、サーバと負荷分散装置との間の通信負荷や
サーバのCPU負荷が増すことはない。
【0011】
【発明の実施の形態】本発明の実施の形態を、以下詳細
に説明する。
【0012】本発明を実施するWWWシステム、及び負
荷分散装置の内部構成を図1に示す。図1に示すWWW
システムでは、複数のクライアント105がインターネッ
ト106を経由してサーバへサービス要求を送信する。ク
ライアント105から送信されるサービス要求は、負荷分
散装置100を経由し、負荷分散装置100が複数のサーバへ
クライアント105からのサービス要求を振り分ける。各
サーバは、同一のサービス、及びコンテンツ・データを
提供可能である。但し、各サーバの処理性能は、同一で
あっても異なっていてもよい。本実施例では、負荷分散
装置100は、サーバA107、サーバB108、サーバC109の3台
にサービス要求パケットを振り分ける。また、サーバA1
07、サーバB108、サーバC109の処理性能には差があるも
のとする。
【0013】負荷分散装置100は主に、サーバ負荷見積
もり処理モジュール101、サーバ選択処理モジュール102
で構成される。負荷分散装置100は、クライアント105か
らのサービス要求パケットを受信後、当該パケットのサ
ービス要求内容を取得する。まず、サーバ負荷見積もり
処理モジュール101において、サービス要求の内容か
ら、当該サービス要求パケットがサーバへ与える処理負
荷の大きさを負荷評価値として求める。本処理101は、
予め負荷分散装置100に用意されている負荷見積もりテ
ーブル103を参照することにより、負荷評価値を求め
る。次に、サーバ選択処理モジュール102において、当
該サービス要求パケットを転送するサーバ105を選択す
る。本処理102は、サーバ負荷状態管理テーブル104を参
照することにより、負荷状態が最も低いサーバを選択す
る。そして、サーバ負荷見積もり処理101で得られた負
荷評価値によってサーバ状態管理テーブル104を更新す
る。また、当該サービス要求パケットのパケット・ヘッ
ダの宛て先アドレスを、本処理102で選択したサーバ107
のアドレスへ変換し、当該サーバへの送信処理を実行す
る。
【0014】上記のように、サービス要求パケットを振
り分けるサーバの選択に使用するサーバ負荷状態管理テ
ーブル104は、クライアント105からサービス要求パケッ
トを受信する度に更新される。このため、本発明による
負荷分散は、サーバのリアルタイムな負荷状態に基づい
て実行される。したがって、サーバへのアクセス集中が
突発的に発生した場合でも適切な負荷分散を実現でき
る。また、本発明による負荷分散は、負荷分散装置100
内でサービス要求パケットからサーバへの負荷を見積も
るため、サーバと負荷分散装置との間の余計な通信負荷
やサーバのCPU負荷が増すことはない。すなわち、本発
明による負荷分散は、サーバ・システム全体を高い性能
に保ったまま動的な負荷分散を実現できる。
【0015】以下に、負荷分散装置100におけるサーバ
負荷見積もり処理101、サーバ選択処理102の詳細な実施
形態を説明する。
【0016】まず、サーバ負荷見積もり処理101につい
て説明する。
【0017】本実施例では、サービス要求パケットのサ
ービス内容を、HTTPヘッダにより取得する。HTTPヘッダ
は、WWWシステムの主要プロトコルであるHTTPで利用さ
れるヘッダであり、本ヘッダを予め用意した対応表と比
較することにより、要求するサービスの種類やデータの
種類等が明らかとなる。図2に、サービス要求パケット
のHTTPヘッダの例を示す。図2の例では、メソッドGET
によって"http://www.sdl.hitachi.co.jp/index.html"
で示される場所にあるデータを要求する内容を表してい
る。クライアントからのサービス要求に対するWWWサー
バの処理負荷の大きさは、メソッド及び要求コンテンツ
・データの種類及びサイズに依存する。従って、本実施
例におけるサーバ負荷見積もり処理101では、クライア
ントが要求するサービスの種類を示すメソッド201と、
要求するデータを示すURL202を使用する。
【0018】負荷の見積もりは、負荷見積もりテーブル
103を参照することによって、負荷評価値を算出する。
本実施例における負荷見積もりテーブル103は、以下の
5種類のテーブルで構成される。図3から図7に各テー
ブルのデータ構造を示す。
【0019】1) メソッド負荷評価テーブル300 2) コンテンツデータ・テーブル400 3) データサイズ負荷評価テーブル500 4) 動的コンテンツ生成プログラム負荷評価テーブル
600 5) 重みテーブル700 図3は、メソッド負荷見積もりテーブル300であり、メ
ソッド・フィールド301と、負荷評価値フィールド302と
で構成される。メソッド・フィールド301は、サーバが
提供可能な全メソッド名を各エントリに格納する。負荷
評価値フィールド302は、各メソッドに対する処理を各
サーバが実行した場合の負荷の大きさを表す負荷評価値
L1を格納する。本フィールド302は、各サーバ毎にフィ
ールドが分かれている。本実施例では、サーバA107に対
する負荷評価値L1Aを格納する負荷評価値フィールド30
3、サーバB108に対する負荷評価値L1Bを格納する負荷評
価値フィールド304、サーバC109に対する負荷評価値L1C
を格納する負荷評価値フィールド305が存在する。本テ
ーブル300を参照することにより、クライアントが指定
するメソッドが各サーバに与える負荷の大きさを示す評
価値(L1A、L1B、L1C)が得られる。
【0020】図4は、コンテンツデータ・テーブル400
であり、コンテンツ・フィールド401、サイズ・フィー
ルド402、クライアント側のキャッシュに存在する確率
を示すフィールド403とで構成される。コンテンツ・フ
ィールド401は、サーバが有する全コンテンツ・データ
を各エントリに格納する。サイズ・フィールド402は、
コンテンツ・フィールド401が示す各コンテンツ・デー
タのサイズを格納する。クライアント側のキャッシュに
存在する確率を示すフィールド403は、コンテンツ・フ
ィールド401が示す各コンテンツ・データが、クライア
ント105或いはインターネット106内のプロキシ・サーバ
にキャッシングされているため、サーバからクライアン
トへコンテンツ・データが送信されない確率を示してい
る。本テーブル400を参照することにより、クライアン
ト105が要求するデータのサイズ、及び、要求するデー
タが実際にサーバから送信される確率が得られる。
【0021】図5は、データサイズ負荷評価テーブル50
0であり、サイズ・フィールド501と負荷評価値フィール
ド502とで構成される。サイズ・フィールド501は、サー
バが有するコンテンツ・データを、サイズによっていく
つかの段階に区切り、各段階のサイズの範囲を示すフィ
ールドである。負荷評価値フィールド502は、各サイズ
のデータを要求する場合における、各サーバの処理負荷
の大きさを表す負荷評価値L2を格納する。本フィールド
502は、各サーバ毎にフィールドが分かれている。本実
施例では、サーバA107に対する負荷評価値L2Aを格納す
る負荷評価値フィールド503、サーバB108に対する負荷
評価値L2Bを格納する負荷評価値を格納する負荷評価値
フィールド504、サーバC109に対する負荷評価値L2Cを格
納する負荷評価値フィールド505が存在する。本テーブ
ル500を参照することにより、クライアント105が要求す
るコンテンツデータのサイズが各サーバへ与える負荷の
大きさを示す負荷評価値(L2A、L2B、L2C)が得られ
る。
【0022】図6は、動的コンテンツ生成プログラム負
荷評価テーブル600であり、プログラム・フィールド60
1、負荷評価値フィールド602、平均応答データサイズ・
フィールド603とで構成される。プログラム・フィール
ド601は、サーバが動的コンテンツ・データを生成する
ために実行する全プログラム名を格納する。尚、本実施
例における各動的コンテンツ生成プログラムは、入力パ
ラメータによって処理負荷の大きさは変わらないと仮定
する。入力パラメータによって処理負荷の大きさが変わ
る場合には、プログラム・フィールド600の他に、パラ
メータ・フィールドを設ければ良い。負荷評価値フィー
ルド602は、各動的コンテンツ生成プログラム実行時の
負荷の大きさを示す負荷評価値L3を格納する。本フィー
ルド602は、各サーバ毎にフィールドが分かれており、
サーバA107に対する負荷評価値L3Aを格納する負荷評価
値フィールド604、サーバB108に対する負荷評価値L3Bを
格納する負荷評価値フィールド605、サーバC109に対す
る負荷評価値L3Cを格納する負荷評価値フィールド606が
存在する。平均応答データサイズ・フィールド603は、
各動的コンテンツ生成プログラムの実行の結果生成され
るコンテンツ・データの平均サイズを格納する。本実施
例では、同じ動的コンテンツ生成プログラムによって生
成されるコンテンツデータは、パラメータによって、サ
イズに大きな差が無いと仮定する。パラメータによっ
て、生成されるコンテンツデータのサイズの差が大きい
場合には、プログラム・フィールドの他にパラメータ・
フィールドを設ければ良い。本テーブル600を参照する
ことにより、クライアント105が要求するコンテンツ生
成のためにサーバにおいて実行されるプログラムの負荷
の大きさを示す負荷評価値(L3A、L3B、L3C)と、前記
プログラムの実行の結果、生成される応答データの平均
サイズが得られる。
【0023】図7は、重みテーブル700であり、負荷評
価値フィールド701と重みフィールド702とで構成され
る。負荷評価値フィールド701は、メソッド負荷評価テ
ーブル300、データサイズ負荷評価テーブル500、動的コ
ンテンツ生成プログラム負荷評価テーブル600、それぞ
れを参照することによって求められる負荷評価値L1〜負
荷評価値L3を格納する。重みフィールド702は、負荷評
価値L1〜負荷評価値L3を使用して、サービス要求パケッ
トの負荷評価値を求める際に使用する各負荷評価値の重
みを格納する。本テーブル700を参照することにより、
負荷評価値を算出する際の各負荷評価値の重みが得られ
る。
【0024】以上、図3〜7に示す負荷見積もりテーブ
ル103のデータ構造について説明した。図3から図6ま
でのテーブルは、本システム稼動前に予めテストを行
い、テーブルの各エントリの値を生成する。また、サー
バでのコンテンツ・データやサービスが変更された場合
は、予備システムまたは、本システム非稼動時(インタ
ーネットに接続していない時)にテーブル更新のための
テストを実行する。本処理の詳細は、後述する。また、
図7の重みテーブル700は、システム管理者がマニュア
ルで設定する。
【0025】図9はサーバ負荷見積もり処理の流れを示
している。以下、図9を使用して負荷見積もりを行う処
理101の流れを説明する。
【0026】ステップ901で、メソッド負荷評価テーブ
ル300を参照し、HTTPヘッダ内のメソッドに該当するエ
ントリにおける各サーバの負荷評価値(L1A、L1B、L1
C)を、フィールド303、フィールド304、フィールド305
より得る。ステップ902でメソッドの種類がGETやPOST等
サーバからコンテンツデータが送信されるメソッドか否
かを判定する。コンテンツデータの送信を伴わないメソ
ッドの場合は、ステップ908に進み、ステップ908におい
て重みテーブル700を参照し、重みフィールド702より負
荷評価値L1の重みを取得する。そして、各サーバの負荷
評価値Lxをw1×L1x(x=A,B,C)と見積もる。コンテンツ
データの送信を伴うメソッドである場合は、ステップ90
3に進み、HTTPヘッダ内のURLより要求データのメディア
の種類を調べる。ステップ904で要求メディアが動的コ
ンテンツか否かの判定を行う。要求メディアが動的コン
テンツである場合は、ステップ905へ進む。ステップ905
において、動的コンテンツ生成負荷評価テーブル600を
参照することにより、動的コンテンツ生成プログラム走
行時の各サーバの負荷評価値L3(L3A、L3B、L3C)をフ
ィールド604、フィールド605、フィールド606より、ま
た、応答データの平均サイズをフィールド603より取得
する。ステップ906において、ステップ906にて得られた
応答データの平均サイズより、データサイズ負荷評価テ
ーブル500を参照し、各サーバにおける負荷評価値L2(L
2A、L2B、L2C)を、フィールド503、フィールド504、フ
ィールド505より取得する。ステップ907において、重み
テーブル700を参照し、各負荷評価値値(L1、L2、L3)の
重みを取得し、各サーバにおける負荷評価値Lxをw1×L1
x+w2×L2x+w3×L3x(x=A,B,C)と求める。要求メディア
が静的なデータである場合は、ステップ909へ進む。ス
テップ909において、コンテンツデータ・テーブル400を
参照し、まず、フィールド403よりクライアント側のキ
ャッシュに存在する確率Pを調べ、ステップ911で確率P
が50%より高いか否かを判定する。
【0027】Pが50%より高い場合は、コンテンツデータ
がサーバから送信されると判断し、ステップ911に進
む。ステップ911において、データサイズ評価テーブル5
00を参照し、コンテンツデータ・テーブル500のサイズ
・フィールド502より得られるコンテンツデータのサイ
ズから、各サーバの負荷評価値L2(L2A、L2B、L2C)を
フィールド503、フィールド504、フィールド505より取
得する。ステップ912において、重みテーブル700を参照
し、各負荷評価値(L1、L2)の重みを取得し、負荷評価
値Lx=w1×L1x+w2×L2x(x=A,B,C)を求める。Pが50%より
低い場合には、コンテンツデータがサーバから送信され
ないと判断し、ステップ913に進む。ステップ913におい
て、重みテーブル700を参照し、負荷評価値L1に対する
重みをフィールド702より取得し、負荷評価値Lx=w1×L1
x(x=A,B,C)を求める。
【0028】尚、ステップ910におけるコンテンツデー
タがサーバから送信されるか否かの判定を「クライアン
ト側のキャッシュに残っている確率が50%以上か」で決
定しているが、適宜この値を変更してよい。また、コン
テンツデータのサイズの大きさによって判定を行う確率
の大きさを変更してもよい。
【0029】以上の処理によって、負荷評価値を見積も
ることが出来る。
【0030】本発明における負荷分散装置100は、サー
バ負荷見積もり処理101の後、サーバ選択処理102を実行
する。次に、サーバ選択処理102について説明する。
【0031】サーバ選択処理102は、サーバ負荷状態管
理テーブル104を参照することによって、サービス要求
を割り当てるサーバを選択し、サービス要求パケットの
宛て先アドレスを選択したサーバのアドレスに変換す
る。
【0032】図8にサーバ負荷状態管理テーブル104の
データ構造を示す。本テーブル104は、サーバ・フィー
ルド801と負荷状態値フィールド802で構成さる。サーバ
・フィールド801は、負荷分散装置100がサービス要求パ
ケットを振り分ける全サーバ名を各エントリに格納す
る。本実施例では、サーバA107のエントリと、サーバB1
08のエントリと、サーバC109のエントリが存在する。負
荷状態値フィールド802は、各サーバにおける過去の一
定時間における負荷評価値の累計を負荷状態値として格
納する。本実施例では、負荷状態値フィールド802に、
過去1秒間の負荷評価値の累計を格納する。
【0033】図10にサーバ選択処理102の動作の流れ
を示している。図10を使用して、サーバ選択処理の流
れを説明する。
【0034】まず、ステップ1001において、サーバ負荷
状態テーブル104を参照する。ステップ1002において、
負荷状態値フィールド802の値が最も小さいサーバを選
択する。ステップ1003において、選択したサーバの該当
するエントリの負荷状態値フィールド802に、サーバ選
択処理102で見積もった負荷評価値を反映させる。但
し、サーバA107を選択した場合には負荷評価値LAを、サ
ーバB108を選択した場合には負荷評価値LBを、サーバC1
09を選択した場合には、負荷評価値LCを該当する負荷状
態値フィールド802に反映させる。ステップ1004におい
て、サービス要求パケットのパケット・ヘッダの宛て先
アドレスを、ステップ1002で選択したサーバの宛て先ア
ドレスへ変換する。
【0035】尚、本実施例では、サーバ負荷状態管理テ
ーブル104を参照して最も負荷評価値の小さいサーバを
選択するが、原則的にはラウンド・ロビンでサーバを選
択し、負荷評価値がある閾値以上である(過負荷状態で
ある)場合は、そのサーバを選択せず、ラウンド・ロビ
ンでその次のサーバを選択する方法でも良い。
【0036】以上、負荷分散装置100における負荷分散
の実施例を述べた。
【0037】本実施例では、負荷分散装置100は、サー
バA107、サーバB108、サーバC109の3台のサーバへサー
ビス要求パケットを振り分けている。サービス要求パケ
ットを振り分けるサーバ数は3台に限定されない。
【0038】また、本実施例は、各サーバ間に処理性能
の差があると仮定しているが、各サーバの性能が同じ場
合でも本発明は適用可能である。各サーバの性能が同じ
場合には、メソッド負荷評価テーブル300の負荷評価値
フィールド302、データサイズ負荷評価テーブル500の負
荷評価値フィールド502、及び、動的コンテンツ生成プ
ログラム負荷評価テーブル600の負荷評価値フィールド6
02を、各サーバ毎に分ける必要は無く、負荷評価値L1、
L2、L3はそれぞれ1つで良い。サーバ負荷見積もり処理
101において、サーバ毎に負荷評価値を求める必要は無
く、一つの負荷評価値を求めれば良い。
【0039】次に、負荷見積もりテーブル103の生成及
び更新処理の実施例を示す。本処理は、負荷見積もりテ
ーブル103を構成するメソッド負荷評価値テーブル300、
コンテンツデータ・テーブル400、データサイズ負荷評
価テーブル500、動的コンテンツ生成プログラム600の各
エントリの値を生成、更新する。尚、本実施例では、重
みテーブル700はユーザがマニュアルで設定する。
【0040】図11に負荷見積もりテーブル104の生成
・更新処理の構成を示す。本処理は、1台のテストマシ
ン1100、負荷分散装置100、1台のサーバによって実行さ
れる。サーバは、サーバA107を接続した場合、サーバB1
08を接続した場合、サーバC109を接続した場合、それぞ
れについて処理を実行する。但し、全サーバの処理性能
が同じ場合には、1台のサーバについて処理を実行すれ
ば良い。本処理は、図1に示すWWWシステムの非稼動時
(インターネットへ接続していない時)か、図1の負荷
分散装置(100)と同一性能及び機能を持つ負荷分散装置
と、サーバと同一性能・機能及び、同じコンテンツ・デ
ータを有するサーバで構成される予備システムで実行す
る。
【0041】サーバA107を接続した場合、サーバB108を
接続した場合、サーバCを接続した場合、いずれも処理
内容は同じであるため、以下では、サーバA107を接続し
た場合について説明する。
【0042】本処理は、まず、テストマシン1100の負荷
生成・応答時間測定処理モジュール1101が、サーバA107
へサービス要求パケットを送信し、同時に、サーバA107
からサービス応答パケットを受信するまでの応答時間の
測定を開始する。負荷分散装置100は、前記サービス要
求パケットを受信し、パケット中継処理モジュール1104
によって前記サービス要求パケットをサーバA107へ転送
する。サーバA107は、前記サービス要求パケットを受信
後、要求するサービスに対する処理を実行し、同時に、
CPU負荷測定処理モジュール1106によってCPU負荷の測定
を実行する。CPU負荷の測定結果は、CPU負荷テーブル11
08に記録される。サーバA107は、サービス要求に対する
処理終了後、処理結果であるサービス応答パケットを送
信し、前記サービス応答パケットは負荷分散装置100の
パケット中継処理モジュール1104を経由して、テストマ
シン1100へ転送される。テストマシン1100は、サービス
応答パケット受信後、測定された応答時間を応答時間テ
ーブル1102に記録する。以上の測定処理をサーバが提供
可能な全サービス、全コンテンツ・データに対して実行
する。
【0043】上記測定処理を終了後、テストマシン1100
は、応答時間テーブル送信処理モジュール1103によって
応答時間テーブル1102を負荷分散装置100へ送信する。
また、サーバA107は、テーブル送信処理モジュール1110
によってCPU負荷テーブル1108、及び、各コンテンツ・
データのサイズの情報を格納したコンテンツデータサイ
ズ・テーブル1109を、負荷分散装置100へ送信する。
【0044】負荷分散装置100は、応答時間テーブル110
2、CPU負荷テーブル1108、コンテンツデータサイズ・テ
ーブル1109を受信し、これらの情報をもとに、負荷評価
値生成モジュール1105によって負荷評価値を生成し、負
荷見積もりテーブル103を生成、または更新する。
【0045】以下、 1) テストマシン1100における負荷生成・応答時間測
定処理1101 2) サーバA107におけるCPU負荷測定処理1106 3) 負荷分散装置100における負荷評価値生成処理110
5 の詳細な動作を順に説明する。
【0046】まず、テストマシン1100における負荷生成
・応答時間測定処理1101について説明する。
【0047】図12に、テストマシン1100の動作の流れ
を示す。ステップ1201でサーバA107からサーバが提供可
能な全メソッドと、全コンテンツ・データの情報を受信
する。この情報をもとに、ステップ1202からステップ12
09までサーバが提供するすべてのサービス及びコンテン
ツ・データへのアクセス処理(ステップ1205またはステ
ップ1207)を繰り返す。アクセス処理(ステップ1205ま
たはステップ1207)の詳細な流れを、ステップ1211から
ステップ1217に示す。アクセス処理は、まず、ステップ
1211においてCPU負荷測定開始をサーバへ通知する。ス
テップ1212においてサービス要求パケットをサーバに送
信し、前記パケット送信直後にステップ1213において応
答時間の測定を開始する。ステップ1214においてサーバ
A107からサービス応答パケットを受信し、受信と同時に
ステップ1215において応答時間の測定を終了、ステップ
1216でサーバA107へCPU負荷測定終了通知を送信する。
ステップ1217で応答時間の測定結果を、応答時間テーブ
ル1102に記録し、終了する。
【0048】ステップ1205またはステップ1207における
アクセス処理終了後、テストマシン1100は、ステップ12
06または1208において、サーバからアクセス許可通知を
受信するまで待機する。サーバからアクセス許可通知
後、ステップ1202に戻り、アクセス処理を繰り返す。
【0049】全てのサービス、及び、全てのコンテンツ
・データへのアクセスが終了したら、ステップ1210に進
み、サーバA107にテスト終了通知を送信する。
【0050】応答時間テーブル1102は、1つまたは複数
のテーブルで構成される。本実施例では、メソッド・テ
ーブル1400、コンテンツ・データ・テーブル1500、動的
コンテンツ生成プログラム・テーブル1600の3種類のテ
ーブルで構成される。
【0051】図14は、メソッド・テーブル1400のデー
タ構造であり、メソッド・フィールド1401と、応答時間
フィールド1402とで構成される。メソッド・フィールド
1401は、サーバA107が提供可能な全メソッドを各エント
リに格納する。応答時間フィールド1402は、各メソッド
を使用してテストマシン1100がサーバA107にアクセスし
た場合に測定されたサーバA107の応答時間の平均値が格
納される。各メソッドのアクセス応答時間の平均値は、
サーバA107が提供する全アクセスパターンから平均値を
求めた場合、又は代表的なアクセスパターンより平均値
を求める場合のどちらでも良い。本テーブル1400の情報
は、メソッド負荷評価テーブル300の生成・更新に使用
される。
【0052】図15は、コンテンツ・テーブル1500のデ
ータ構造であり、コンテンツ・フィールド1501と、応答
時間フィールド1502とで構成される。コンテンツ・フィ
ールド1501は、サーバA107が有する全コンテンツデータ
(静的なデータ)の名称を各エントリに格納する。応答
時間フィールド1502は、テストマシン1100がGETメソッ
ドによって、当該コンテンツデータを要求した場合の応
答時間が格納される。本テーブル1500の情報は、データ
サイズ負荷評価テーブル500の生成・更新に使用され
る。
【0053】図16は、動的コンテンツ生成プログラム
・テーブル1600のデータ構造であり、プログラム・フィ
ールド1601と応答時間フィールド1602で構成される。プ
ログラム・フィールドは、サーバA107内の全動的コンテ
ンツ生成プログラムの名称を各エントリに格納する。応
答時間フィールド1602は、テストマシン1100がGETメソ
ッドによって当該動的コンテンツ生成プログラムの実行
を伴う要求を行った場合の応答時間が格納される。本テ
ーブル1600の情報は、動的データ生成プログラム負荷評
価テーブル600の生成・更新に使用される。
【0054】次に、サーバA107におけるCPU負荷測定処
理1106を説明する。図13に、本処理の流れを示す。ま
ず、ステップ1301において、サーバA107が提供可能な全
メソッドと、全コンテンツ・データの情報をテストマシ
ン1100へ送信する。次に、ステップ1302に進み、テスト
マシン1100からテスト終了通知を受信するまで、ステッ
プ1302からステップ1310の処理を繰り返す。ステップ13
03において、テストマシン1100からCPU負荷測定開始通
知を受信するまで待機し、測定開始通知受信後、ステッ
プ1304においてCPU負荷の測定を開始する。ステップ130
5においてテストマシン1100からCPU負荷測定終了通知を
受信し、ステップ1306でCPU負荷の測定を終了する。ス
テップ1307でサーバのアクセスログ1107を参照すること
により、テストマシン1100からのアクセスのメソッド、
走行プログラム、コンテンツ・データを識別し、ステッ
プ1308において,ステップ1306で得られたCPU負荷とステ
ップ1307で得られた情報をもとに、CPU負荷テーブル110
8の該当するエントリに記録する。ステップ1309で、テ
ストマシン1100へアクセス許可を通知し、ステップ1303
に戻ってテストマシン1100からのCPU負荷測定開始通知
を待つ。
【0055】テストマシン1100からテスト終了通知を受
信した場合、終了する。
【0056】CPU負荷テーブル1108は、1つまたは複数
のテーブルで構成される。本実施例では、応答時間テー
ブル1102と同様、メソッド・テーブル1700、動的コンテ
ンツ生成プログラム・テーブル1800の2種類のテーブル
で構成される。
【0057】図17は、メソッド・テーブル1700のデー
タ構造であり、メソッド・フィールド1701と、CPU負荷
フィールド1702とで構成される。メソッド・フィールド
1701は、サーバA107 が提供可能な全メソッドの名称
を、各エントリに格納する。CPU負荷フィールド1702
は、各メソッドで要求され、処理を実行した場合に測定
されたCPU負荷の平均値を格納する。この平均CPU負荷
は、サーバが提供する全アクセスパターンから平均を求
める場合、あるいは代表的なアクセスパターンより平均
値を求める場合のどちらでも良い。本テーブル1700の情
報は、メソッド負荷評価テーブル300の生成・更新に使
用される。
【0058】図18は、動的コンテンツ生成プログラム
・テーブル1800のデータ構造であり、プログラム・フィ
ールド1801と、CPU負荷フィールド1802と、平均応答デ
ータサイズ1803で構成される。CPU負荷フィールド1802
は、各動的コンテンツ生成プログラムの実行を伴う要求
に対する処理をサーバA107が実行した場合のCPU負荷を
格納する。平均データサイズ・フィールド1803は、各動
的コンテンツ生成プログラムの実行の結果、クライアン
トへ送信される応答データの平均データサイズを格納す
る。
【0059】サーバA107はさらに、ステップ1307におい
てサーバA107内のアクセス・ログ1107を参照する場合、
もしくは、CPU負荷測定処理1106終了後、アクセス・ロ
グ1107を分析することによって、図19に示すコンテン
ツ・データ・サイズ・テーブル1109を生成する。コンテ
ンツデータサイズ・テーブル1109は、コンテンツ・フィ
ールド1901と、データサイズ・フィールド1902とで構成
される。コンテンツ・フィールド1901は、サーバA107が
有する全コンテンツ・データ(静的コンテンツ・デー
タ)を各エントリに格納する。データサイズ・フィール
ド1902は、各コンテンツ・データのサイズを格納する。
【0060】最後に、負荷分散装置100における負荷評
価値生成処理1105を説明する。まず、図20に示すフロ
ーチャートによって、負荷評価値生成処理1105の主な処
理の流れを説明する。
【0061】ステップ2001において、負荷分散装置は、
テストマシン1100から応答時間テーブル1102(メソッド
・テーブル1400、コンテンツ・データ・テーブル1500、
動的コンテンツ生成プログラム・テーブル1600)の情報
を受信する。ステップ2002において、サーバA107からCP
U負荷テーブル1108(メソッド・テーブル1700、動的コ
ンテンツ生成プログラム・テーブル1800)、及び、コン
テンツ・データ・サイズ・テーブル1109の情報を受信す
る。ステップ2003において、ステップ2001及び2002にお
いて受信した情報に基づいて、メソッド負荷評価テーブ
ルの各エントリの生成、及び更新処理を実行する。ステ
ップ2004において、コンテンツデータ・テーブル400の
生成・更新処理を実行する。ステップ2005において、デ
ータサイズ負荷評価テーブル500の生成・更新処理を実
行する。ステップ2006において、動的コンテンツ生成プ
ログラム負荷評価テーブル600の生成・更新処理を実行
し、終了する。
【0062】以下、ステップ2003〜ステップ2006までの
各ステップの詳細な動作を説明する。
【0063】図21に、ステップ2003におけるメソッド
負荷評価値テーブル300の生成・更新処理の流れを示
す。メソッド負荷評価テーブル300は、応答時間テーブ
ル1102のメソッド・テーブル1400と、CPU負荷テーブル1
108のメソッド・テーブル1700より生成または更新され
る。まず、ステップ2101で、応答時間テーブル1102(メ
ソッド・テーブル1400)のメソッド・フィールド1401、
または、CPU負荷テーブル1108(メソッド・テーブル170
0)のメソッド・フィールド1701を参照し、メソッド・
フィールド301における新たなエントリの生成、及び、
不要となったエントリの削除を行う。ステップ2102にお
いて、応答時間フィールド1402の各エントリの値を標準
偏差値へ変換する。ステップ2103において、CPU負荷フ
ィールド1702の各エントリの値を標準偏差値へ変換す
る。そして、ステップ2104において、各メソッドに対す
る負荷評価値を、(応答時間の標準偏差値)×(応答時
間の重み)+(CPU負荷の標準偏差値)×(CPU負荷の重
み)によって算出し、負荷評価値フィールド302の該当
エントリに計算した値を格納する。ここでは、サーバA1
07に対する負荷評価値を求めているので、フィールド30
3の各エントリを生成または更新する。
【0064】次に、コンテンツデータ・テーブル400の
生成・更新処理2004の流れを、図22を用いて説明する。
ステップ2201において、コンテンツ・データ・サイズ・
テーブル1009のコンテンツ・フィールド1901を参照し、
コンテンツ・フィールド401のエントリの生成または更
新を行う。ステップ2202において、コンテンツ・データ
・サイズ・テーブル1109のデータサイズ・フィールド19
02を参照し、サイズ・フィールド402のエントリの生
成、更新を行う。以上によって、コンテンツデータ・テ
ーブル400が生成または更新される。
【0065】さらに、データサイズ負荷評価テーブル50
0の生成・更新処理2005の流れを、図23を使って説明す
る。まず、ステップ2301において、応答時間テーブル11
08のコンテンツ・データ・テーブル1500の各エントリ
が、データサイズ負荷評価テーブル500のどのエントリ
に該当するデータかを、コンテンツ・データ・サイズ・
テーブル1109を参照することによって識別し、データサ
イズ負荷評価テーブル500の各エントリ毎にコンテンツ
・データ・テーブル1500のエントリをグループ分けす
る。ステップ2302において、グループ分けされたグルー
プ毎に応答時間フィールド1500の値の平均を求める。ス
テップ2303において、ステップ2302で求めた各平均値に
ついて、標準偏差値に変換する。ステップ2304におい
て、各サイズ・フィールド501に対する負荷評価値L2
を、ステップ2303で求めた標準偏差値とし、負荷評価値
フィールド502の該当フィールド(サーバA107はフィー
ルド503)に格納する。
【0066】最後に、動的コンテンツ生成プログラム負
荷評価テーブル600の生成・更新処理2006の流れを、図2
4を使用して説明する。まず、ステップ2401において、
応答時間テーブル1102の動的コンテンツ生成プログラム
・テーブル1600のプログラム・フィールド1601または、
CPU負荷テーブル1108の動的コンテンツ生成プログラム
・テーブル1800のプログラム・フィールド1801を、プロ
グラム・フィールド601へコピーする。ステップ2402に
おいて、応答時間テーブル1102の動的コンテンツ生成プ
ログラム・テーブル1600の応答時間フィールド1602の各
値を、標準偏差値へ変換する。ステップ2403において、
CPU負荷テーブル1108の動的コンテンツ生成プログラム
・テーブル1800のCPU負荷フィールド1802の各エントリ
に格納されている値を、標準偏差値へ変換する。ステッ
プ2404において、各プログラムに対する負荷評価値を、
(応答時間の標準偏差値)×(応答時間の重み)+(CP
U負荷の標準偏差値)×(CPU負荷の重み)により算出
し、負荷評価フィールド602の該当フィールド(サーバA1
07は、フィールド604)に格納する。ステップ2405におい
て、CPU負荷テーブル1108の動的コンテンツ生成プログ
ラム・テーブル1800の平均データサイズ・フィールド18
03を、平均応答データサイズ・フィールド603へコピー
する。
【0067】以上により、負荷見積もりテーブル103の
サーバA107に対する負荷評価値を示す各エントリが生成
・更新される。サーバB108、サーバC109に対する負荷評
価値は、上記と同じ処理を実行すれば良い。
【0068】尚、コンテンツデータ・テーブル400にお
けるコンテンツ・データがクライアント側のキャッシュ
にある確率を示すフィールド403は、負荷評価値生成処
理1103では生成されない。本フィールド403は、実際に
図1に示すシステム稼動時におけるサーバA107内のアク
セス・ログを解析することによって、値の生成、更新を
行う。本処理は、図1に示すシステム稼動後、サーバA1
07におけるコンテンツ・データが変更されるまで、1回
だけサーバA107においてアクセス・ログの解析を実行
し、コンテンツ・データのキャッシュ・ヒット率の情報
を負荷分散装置100に通知すれば良い。
【0069】以上に述べた本発明の負荷分散及び負荷見
積もりの方法を実行するためのプログラムを、計算機で
読み取り可能な記憶媒体に格納し、このプログラムをメ
インメモリに読み込んで実行することも可能である。
【0070】
【発明の効果】本発明における負荷分散装置によってク
ライアントからのサービス要求を複数のサーバへ振り分
ける際に、サーバのリアルタイムな負荷情報に従って動
的にサービス要求を振り分けるため、突発的なアクセス
集中が発生した場合でもサーバの負荷状態により適応し
た負荷分散が可能となる。また、本発明による動的負荷
分散は、負荷分散装置とサーバとの間での余計な通信
や、サーバ内での負荷監視処理を必要としないため、サ
ーバ・システムの性能を高く保つことが可能である。
【図面の簡単な説明】
【図1】本発明における負荷分散装置の主な機能及びWW
Wシステムの実施例である。
【図2】負荷分散装置が受信するクライアントからのサ
ービス要求パケットのHTTPヘッダの例である。
【図3】メソッド負荷評価テーブル(本発明の実施形態
における負荷見積もりテーブルの一つ)である。
【図4】コンテンツデータ・テーブル(本発明の実施形
態における負荷見積もりテーブルの一つ)である。
【図5】データサイズ負荷評価テーブル(本発明の実施
形態における負荷見積もりテーブルの一つ)である。
【図6】動的コンテンツ生成プログラム負荷評価テーブ
ル(本発明の実施形態における負荷見積もりテーブルの
一つ)である。
【図7】重みテーブル(本発明の実施形態いおける負荷
見積もりテーブルの一つ)である。
【図8】サーバ負荷状態管理テーブルである。
【図9】負荷分散装置におけるサーバ負荷見積もり処理
のフローチャートである。
【図10】負荷分散装置におけるサーバ選択処理のフロ
ーチャートである。
【図11】本発明の実施形態における負荷見積もりテー
ブル生成・更新処理のシステム構成である。
【図12】本発明の実施形態での負荷見積もりテーブル
生成・更新処理におけるテストマシンの処理のフローチ
ャートである。
【図13】本発明の実施形態での負荷見積もりテーブル
生成・更新処理におけるサーバの処理のフローチャート
である。
【図14】本発明の実施の形態で負荷見積もりテーブル
生成・更新処理において使用される応答時間テーブル
(メソッド・テーブル)である。
【図15】本発明の実施の形態で負荷見積もりテーブル
生成・更新処理において使用される応答時間テーブル
(コンテンツ・データ・テーブル)である。
【図16】本発明の実施の形態で負荷見積もりテーブル
生成・更新処理において使用される応答時間テーブル
(動的コンテンツ生成プログラム・テーブル)である。
【図17】本発明の実施の形態で負荷見積もりテーブル
生成・更新処理において使用されるCPU負荷テーブル
(メソッド・テーブル)である。
【図18】本発明の実施の形態で負荷見積もりテーブル
生成・更新処理において使用されるCPU負荷テーブル
(動的コンテンツ生成プログラム・テーブル)である。
【図19】本発明の実施の形態で負荷見積もりテーブル
生成・更新処理において使用されるCPU負荷テーブル
(コンテンツ・データ・テーブル)である。
【図20】本発明の実施の形態における負荷分散装置に
おける負荷評価値生成処理のフローチャートである。
【図21】メソッド負荷評価テーブル生成・更新処理
(負荷評価値生成処理の中の一処理)のフローチャート
である。
【図22】コンテンツデータ・テーブル生成・更新処理
(負荷評価値生成処理の中の一処理)のフローチャート
である。
【図23】データサイズ負荷評価テーブル生成・更新処
理(負荷評価値生成処理の中の一処理)のフローチャー
トである。
【図24】動的コンテンツ生成プログラム負荷評価テー
ブル生成・更新処理(負荷評価値生成処理の中の一処
理)のフローチャートである。
【符号の説明】
100・・・・・・ 負荷分散装置 101・・・・・・ サーバ負荷見積もり処理モジュール 102・・・・・・ サーバ選択処理モジュール 103・・・・・・ 負荷見積もりテーブル 104・・・・・・ サーバ負荷状態管理テーブル 105・・・・・・ クライアント 106・・・・・・ インターネット 107・・・・・・ サーバA 108・・・・・・ サーバB 109・・・・・・ サーバC
───────────────────────────────────────────────────── フロントページの続き (72)発明者 レ モアル ダミエン 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内 Fターム(参考) 5B045 BB19 BB28 BB48 BB49 GG04 GG09 5B098 AA10 GA01 GC08 GD02 GD14

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】サービスを要求する複数のクライアント
    と、前記クライアントからの要求に基づいて処理を実行
    し、処理結果を返信する複数のサーバが接続されたネッ
    トワークに接続された負荷分散装置は、 前記クライアントからの要求データのヘッダの情報を調
    べる手段と、 前記ヘッダの情報から、前記要求データの要求内容に基
    づいてサーバで実行される処理負荷の大きさを見積もる
    手段と、 各サーバ毎に過去一定時間における前記負荷見積もりの
    累計値を保持する手段と、 前記各サーバの負荷累計値と現在受信した要求データが
    サーバに与える処理負荷の見積もり値によって要求デー
    タを送信するサーバを動的に選択する手段と、 前記要求データをサーバへ転送する中継手段とを有する
    ことを特徴とする負荷分散装置。
  2. 【請求項2】前記負荷分散装置はさらに、要求データの
    ヘッダより要求するサービスの種類を識別する手段と、
    前記サービスの種類によってサーバで実行される処理負
    荷の大きさを見積もる手段とを有することを特徴とする
    請求項1記載の負荷分散装置。
  3. 【請求項3】前記負荷分散装置はさらに、要求データの
    ヘッダとサーバが有するコンテンツ・データの情報によ
    り要求するデータのサイズを算出する手段と、前記要求
    するデータのサイズによってサーバで実行される処理負
    荷の大きさを見積もる手段とを有することを特徴とする
    請求項1記載の負荷分散装置。
  4. 【請求項4】前記負荷分散装置はさらに、要求データの
    ヘッダよりサーバ内で実行されるプログラムの種類を識
    別する手段と、前記プログラム実行によるサーバの処理
    負荷の大きさを見積もる手段とを有することを特徴とす
    る請求項1記載の負荷分散装置。
  5. 【請求項5】サーバと前記サーバにサービス要求パケッ
    トを送信するクライアントとが接続された情報処理装置
    を用いたサーバの負荷見積もり方法において、 前記サーバが提供可能な全サービス、全コンテンツ・デ
    ータのアクセス要求を行い、 前記要求に対するサーバの処理負荷の大きさを測定し、 前記測定結果によりクライアントの要求データのヘッダ
    かクライアントからの要求データがサーバに与える負荷
    の大きさを見積もるためのデータを生成することを有す
    ることを特徴とする負荷見積もり方法。
  6. 【請求項6】前記サーバの処理負荷の測定において、ク
    ライアントがサービス要求パケットを送信してからサー
    ビス応答パケットを受信するまでの応答時間を測定する
    ことにより、サーバの処理負荷の大きさを見積もること
    を特徴とする請求項5記載の負荷見積もり方法。
  7. 【請求項7】前記サーバの処理負荷の測定において、サ
    ーバがサービス要求パケットを受信し、当該要求に従っ
    て処理を実行する際のCPU負荷を測定することによっ
    て、サーバの処理負荷の大きさを見積もることを特徴と
    する請求項5記載の負荷見積もり方法。
  8. 【請求項8】サーバと前記サーバにサービス要求パケッ
    トを送信するクライアントとが接続された情報処理装置
    を用いたサーバの負荷見積もり方法を実行するためのプ
    ログラムを格納した、計算機で読み取り可能な記憶媒体
    であって、前記方法は、 前記サーバが提供可能な全サービス、全コンテンツ・デ
    ータのアクセス要求を行い、 前記要求に対するサーバの処理負荷の大きさを測定し、 前記測定結果によりクライアントの要求データのヘッダ
    かクライアントからの要求データがサーバに与える負荷
    の大きさを見積もるためのデータを生成することを有す
    ることを特徴とする記憶媒体。
  9. 【請求項9】サービスを要求する複数のクライアント
    と、前記クライアントからの要求に基づいて処理を実行
    し、処理結果を返信する複数のサーバが接続されたネッ
    トワークに接続された処理装置を用いた負荷分散方法に
    おいて、 前記クライアントからの要求データのヘッダの情報を調
    べ、 前記ヘッダの情報から、前記要求データの要求内容に基
    づいてサーバで実行される処理負荷の大きさを見積も
    り、 各サーバ毎に過去一定時間における前記負荷見積もりの
    累計値を保持し、 前記各サーバの負荷累計値と現在受信した要求データが
    サーバに与える処理負荷の見積もり値によって要求デー
    タを送信するサーバを動的に選択し、 前記要求データをサーバへ転送することを特徴とする負
    荷分散方法。
  10. 【請求項10】サービスを要求する複数のクライアント
    と、前記クライアントからの要求に基づいて処理を実行
    し、処理結果を返信する複数のサーバが接続されたネッ
    トワークに接続された処理装置を用いた負荷分散方法を
    実行するためのプログラムを格納した、計算機で読み取
    り可能な記憶媒体であって、前記方法は、 前記クライアントからの要求データのヘッダの情報を調
    べ、 前記ヘッダの情報から、前記要求データの要求内容に基
    づいてサーバで実行される処理負荷の大きさを見積も
    り、 各サーバ毎に過去一定時間における前記負荷見積もりの
    累計値を保持し、 前記各サーバの負荷累計値と現在受信した要求データが
    サーバに与える処理負荷の見積もり値によって要求デー
    タを送信するサーバを動的に選択し、 前記要求データをサーバへ転送することを特徴とする記
    憶媒体。
JP2000280118A 2000-09-11 2000-09-11 負荷分散装置及び負荷見積もり方法 Pending JP2002091936A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000280118A JP2002091936A (ja) 2000-09-11 2000-09-11 負荷分散装置及び負荷見積もり方法
US09/828,140 US20020032777A1 (en) 2000-09-11 2001-04-09 Load sharing apparatus and a load estimation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000280118A JP2002091936A (ja) 2000-09-11 2000-09-11 負荷分散装置及び負荷見積もり方法

Publications (1)

Publication Number Publication Date
JP2002091936A true JP2002091936A (ja) 2002-03-29

Family

ID=18765016

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000280118A Pending JP2002091936A (ja) 2000-09-11 2000-09-11 負荷分散装置及び負荷見積もり方法

Country Status (2)

Country Link
US (1) US20020032777A1 (ja)
JP (1) JP2002091936A (ja)

Cited By (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005259080A (ja) * 2004-03-15 2005-09-22 Nec Corp オブジェクト指向のネットワーク分散型コンピューティングシステム、その負荷分散装置及びサーバ
JP2006106859A (ja) * 2004-09-30 2006-04-20 Toshiba Corp 情報処理システムにおける資源割当装置及び資源割当方法
JP2008504600A (ja) * 2004-06-25 2008-02-14 テルコーディア テクノロジーズ インコーポレイテッド 分散要求ルーティング
JP2008097418A (ja) * 2006-10-13 2008-04-24 Nec Corp ロードバランサ及び負荷振り分け方法
JP2008250862A (ja) * 2007-03-30 2008-10-16 Fujitsu Ltd 通信サーバシステムにおける収容制御方法および通信サーバシステム
WO2009066347A1 (ja) * 2007-11-19 2009-05-28 Duaxes Corporation 負荷分散装置及び負荷分散方法
US7721295B2 (en) 2004-01-19 2010-05-18 Hitachi, Ltd. Execution multiplicity control system, and method and program for controlling the same
KR100989490B1 (ko) 2003-06-20 2010-10-22 주식회사 케이티 각 서버간 부하 분산 시스템 및 그 방법
JP2011109180A (ja) * 2009-11-12 2011-06-02 Oki Networks Co Ltd 通信制御装置、通信制御プログラム、データ配信サーバ、データ配信プログラム、及び、データ配信システム
JP2014505918A (ja) * 2010-12-02 2014-03-06 エイ10 ネットワークス インコーポレイテッド 動的サービス応答時間に基づきサーバにアプリケーショントラフィックを配信するシステムと方法
CN103703453A (zh) * 2011-07-19 2014-04-02 Sk电信有限公司 提供用于消息负载均衡的推送服务的系统及其方法
WO2014174611A1 (ja) * 2013-04-24 2014-10-30 三菱電機株式会社 試験装置及び試験方法及びプログラム
CN104301241A (zh) * 2014-06-05 2015-01-21 中国人民解放军信息工程大学 一种soa动态负载分发方法与系统
US9497201B2 (en) 2006-10-17 2016-11-15 A10 Networks, Inc. Applying security policy to an application session
US9531846B2 (en) 2013-01-23 2016-12-27 A10 Networks, Inc. Reducing buffer usage for TCP proxy session based on delayed acknowledgement
US9705800B2 (en) 2012-09-25 2017-07-11 A10 Networks, Inc. Load distribution in data networks
US9843484B2 (en) 2012-09-25 2017-12-12 A10 Networks, Inc. Graceful scaling in software driven networks
US9900252B2 (en) 2013-03-08 2018-02-20 A10 Networks, Inc. Application delivery controller and global server load balancer
US9906422B2 (en) 2014-05-16 2018-02-27 A10 Networks, Inc. Distributed system to determine a server's health
US9906591B2 (en) 2011-10-24 2018-02-27 A10 Networks, Inc. Combining stateless and stateful server load balancing
US9942162B2 (en) 2014-03-31 2018-04-10 A10 Networks, Inc. Active application response delay time
US9942152B2 (en) 2014-03-25 2018-04-10 A10 Networks, Inc. Forwarding data packets using a service-based forwarding policy
US9960967B2 (en) 2009-10-21 2018-05-01 A10 Networks, Inc. Determining an application delivery server based on geo-location information
US9961135B2 (en) 2010-09-30 2018-05-01 A10 Networks, Inc. System and method to balance servers based on server load status
US9979801B2 (en) 2011-12-23 2018-05-22 A10 Networks, Inc. Methods to manage services over a service gateway
US9986061B2 (en) 2014-06-03 2018-05-29 A10 Networks, Inc. Programming a data network device using user defined scripts
US9992107B2 (en) 2013-03-15 2018-06-05 A10 Networks, Inc. Processing data packets using a policy based network path
US9992229B2 (en) 2014-06-03 2018-06-05 A10 Networks, Inc. Programming a data network device using user defined scripts with licenses
US10002141B2 (en) 2012-09-25 2018-06-19 A10 Networks, Inc. Distributed database in software driven networks
US10021174B2 (en) 2012-09-25 2018-07-10 A10 Networks, Inc. Distributing service sessions
US10038693B2 (en) 2013-05-03 2018-07-31 A10 Networks, Inc. Facilitating secure network traffic by an application delivery controller
US10044582B2 (en) 2012-01-28 2018-08-07 A10 Networks, Inc. Generating secure name records
US10129122B2 (en) 2014-06-03 2018-11-13 A10 Networks, Inc. User defined objects for network devices
USRE47296E1 (en) 2006-02-21 2019-03-12 A10 Networks, Inc. System and method for an adaptive TCP SYN cookie with time validation
US10230770B2 (en) 2013-12-02 2019-03-12 A10 Networks, Inc. Network proxy layer for policy-based application proxies
US10243791B2 (en) 2015-08-13 2019-03-26 A10 Networks, Inc. Automated adjustment of subscriber policies
US10581976B2 (en) 2015-08-12 2020-03-03 A10 Networks, Inc. Transmission control of protocol state exchange for dynamic stateful service insertion

Families Citing this family (107)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7343413B2 (en) 2000-03-21 2008-03-11 F5 Networks, Inc. Method and system for optimizing a network by independently scaling control segments and data flow
US7272653B2 (en) * 2000-09-28 2007-09-18 International Business Machines Corporation System and method for implementing a clustered load balancer
US6407680B1 (en) 2000-12-22 2002-06-18 Generic Media, Inc. Distributed on-demand media transcoding system and method
US7003572B1 (en) * 2001-02-28 2006-02-21 Packeteer, Inc. System and method for efficiently forwarding client requests from a proxy server in a TCP/IP computing environment
CA2349086C (en) * 2001-05-30 2011-02-01 Ibm Canada Limited-Ibm Canada Limitee Selection and configuration of servers
US7320131B1 (en) * 2001-06-06 2008-01-15 Cisco Technology, Inc. Methods and apparatus for selecting a server to process a request
US20030023877A1 (en) * 2001-07-30 2003-01-30 Michael Luther System and method of managing data transmission loads
US20030028583A1 (en) * 2001-07-31 2003-02-06 International Business Machines Corporation Method and apparatus for providing dynamic workload transition during workload simulation on e-business application server
US7373644B2 (en) 2001-10-02 2008-05-13 Level 3 Communications, Llc Automated server replication
US20080279222A1 (en) * 2001-10-18 2008-11-13 Level 3 Communications Llc Distribution of traffic across a computer network
US20030079027A1 (en) 2001-10-18 2003-04-24 Michael Slocombe Content request routing and load balancing for content distribution networks
US7984110B1 (en) * 2001-11-02 2011-07-19 Hewlett-Packard Company Method and system for load balancing
US20030105797A1 (en) * 2001-12-04 2003-06-05 Dan Dolev Dynamic load balancing among a set of servers
US7155475B2 (en) * 2002-02-15 2006-12-26 Sony Corporation System, method, and computer program product for media publishing request processing
US7930423B2 (en) * 2002-06-14 2011-04-19 Alcatel-Lucent Usa Inc. Dynamic load balancing within a network
JP2004171234A (ja) * 2002-11-19 2004-06-17 Toshiba Corp マルチプロセッサシステムにおけるタスク割り付け方法、タスク割り付けプログラム及びマルチプロセッサシステム
GB0302926D0 (en) * 2003-02-08 2003-03-12 Grex Games Ltd System architecture and engine for massively multi-user operation
US7660877B2 (en) * 2003-05-19 2010-02-09 Hewlett-Packard Development Company, L.P. Systems and methods in which a provider is selected to service content requested by a client device
US20040236857A1 (en) * 2003-05-19 2004-11-25 Sumit Roy Systems and methods for selecting a provider to service content requested by a client device
US7181524B1 (en) * 2003-06-13 2007-02-20 Veritas Operating Corporation Method and apparatus for balancing a load among a plurality of servers in a computer system
US7139939B2 (en) * 2003-06-20 2006-11-21 International Business Machines Corporation System and method for testing servers and taking remedial action
US20050027862A1 (en) * 2003-07-18 2005-02-03 Nguyen Tien Le System and methods of cooperatively load-balancing clustered servers
DE10346303B3 (de) * 2003-10-06 2005-03-24 Sap Ag Verfahren zur Bearbeitung von aufeinanderfolgenden Anfragen eines externen Computers in einem Computersystem mit mindestens einem ersten Computer und einem zweiten Computer, sowie Computerprogramm und Computersystem
US7676561B1 (en) * 2003-12-02 2010-03-09 Sun Microsystems, Inc. Method and apparatus for adaptive load balancing
JP2005184165A (ja) * 2003-12-17 2005-07-07 Hitachi Ltd トラフィック制御装置およびそれを用いたサービスシステム
TW200532466A (en) * 2004-02-03 2005-10-01 Sony Corp Information processing device, information processing method, information processing system and information processing program of accessible media
US8484348B2 (en) * 2004-03-05 2013-07-09 Rockstar Consortium Us Lp Method and apparatus for facilitating fulfillment of web-service requests on a communication network
US20060064478A1 (en) * 2004-05-03 2006-03-23 Level 3 Communications, Inc. Geo-locating load balancing
US8089972B2 (en) 2004-05-03 2012-01-03 Level 3 Communications, Llc Registration redirect server
FR2872310A1 (fr) * 2004-06-25 2005-12-30 France Telecom Procede de generation d'une table de serveurs disponibles
US20060098573A1 (en) * 2004-11-08 2006-05-11 Beer John C System and method for the virtual aggregation of network links
KR100475487B1 (ko) * 2004-11-12 2005-03-14 엔에이치엔(주) 커뮤니티 홈페이지에 외부 웹서버에서 제공하는 컨텐츠를삽입하는 방법
US9843557B2 (en) 2004-12-09 2017-12-12 Level 3 Communications, Llc Systems and methods for dynamically registering endpoints in a network
US8768350B2 (en) 2004-12-09 2014-07-01 Level 3 Communications, Llc Systems and methods for locating endpoints in a communication network
US7734019B1 (en) * 2004-12-09 2010-06-08 Level 3 Communications, Llc Systems and methods for third party emergency call termination
JP4343119B2 (ja) * 2005-01-19 2009-10-14 富士通株式会社 中継制御プログラムおよびその記録媒体、中継制御方法ならびに中継制御装置
KR100806488B1 (ko) * 2006-10-11 2008-02-21 삼성에스디에스 주식회사 대외채널통합 환경에서의 성능 테스트 시스템 및 그 방법
US8584199B1 (en) 2006-10-17 2013-11-12 A10 Networks, Inc. System and method to apply a packet routing policy to an application session
US7634562B2 (en) * 2006-10-27 2009-12-15 Cyscape, Inc. Method and apparatus for determining application responsiveness over a network
CN101236513B (zh) * 2007-01-30 2012-07-18 阿里巴巴集团控股有限公司 一种分布式任务系统和分布式任务管理方法
US20100030877A1 (en) * 2007-02-23 2010-02-04 Mitsuru Yanagisawa Virtual server system and physical server selecting method
WO2009032711A1 (en) * 2007-08-29 2009-03-12 Nirvanix, Inc. Policy-based file management for a storage delivery network
JP4906686B2 (ja) * 2007-11-19 2012-03-28 三菱電機株式会社 仮想マシンサーバサイジング装置及び仮想マシンサーバサイジング方法及び仮想マシンサーバサイジングプログラム
US20090199175A1 (en) * 2008-01-31 2009-08-06 Microsoft Corporation Dynamic Allocation of Virtual Application Server
JP5493479B2 (ja) * 2008-10-03 2014-05-14 富士通株式会社 サービス提供システム、方法、一意性保証情報設定管理プログラム、負荷分散プログラム、及び管理装置
JP5458688B2 (ja) * 2009-03-19 2014-04-02 富士通株式会社 一意性保証支援プログラム、サービス提供システム、及び一意性保証実現方法
US9116752B1 (en) * 2009-03-25 2015-08-25 8X8, Inc. Systems, methods, devices and arrangements for server load distribution
JP5032543B2 (ja) * 2009-09-16 2012-09-26 株式会社東芝 スケジューリング装置、方法及びプログラム
US10721269B1 (en) 2009-11-06 2020-07-21 F5 Networks, Inc. Methods and system for returning requests with javascript for clients before passing a request to a server
US8417805B2 (en) * 2010-01-26 2013-04-09 Microsoft Corporation Controlling execution of services across servers
US20110202645A1 (en) * 2010-02-12 2011-08-18 Sonus Networks, Inc. Methods and Apparatus to Test Network Elements
US20110261692A1 (en) * 2010-04-21 2011-10-27 Josep Maria Pujol Serra Method for balancing loads in mobile wireless ad-hoc networks
US10015286B1 (en) 2010-06-23 2018-07-03 F5 Networks, Inc. System and method for proxying HTTP single sign on across network domains
US8347100B1 (en) 2010-07-14 2013-01-01 F5 Networks, Inc. Methods for DNSSEC proxying and deployment amelioration and systems thereof
US8862733B2 (en) * 2010-07-30 2014-10-14 Verizon Patent And Licensing Inc. User-based prioritization for content transcoding
WO2012058643A2 (en) 2010-10-29 2012-05-03 F5 Networks, Inc. System and method for on the fly protocol conversion in obtaining policy enforcement information
US8645545B2 (en) 2010-11-24 2014-02-04 International Business Machines Corporation Balancing the loads of servers in a server farm based on an angle between two vectors
CN102487404A (zh) * 2010-12-03 2012-06-06 英业达集团(天津)电子技术有限公司 映像文件服务器的负载均衡方法
JP5238829B2 (ja) 2011-01-13 2013-07-17 株式会社東芝 データ収集装置、データ収集プログラム、およびデータ収集システム
US10135831B2 (en) 2011-01-28 2018-11-20 F5 Networks, Inc. System and method for combining an access control system with a traffic management system
US10169094B2 (en) * 2011-04-27 2019-01-01 Hewlett Packard Enterprise Development Lp Dynamic transaction-persistent server load balancing
US8898271B2 (en) * 2011-09-29 2014-11-25 Oracle International Corporation System and method for supporting accurate load balancing in a transactional middleware machine environment
US9386088B2 (en) 2011-11-29 2016-07-05 A10 Networks, Inc. Accelerating service processing using fast path TCP
US9270766B2 (en) 2011-12-30 2016-02-23 F5 Networks, Inc. Methods for identifying network traffic characteristics to correlate and manage one or more subsequent flows and devices thereof
US10230566B1 (en) 2012-02-17 2019-03-12 F5 Networks, Inc. Methods for dynamically constructing a service principal name and devices thereof
US8819275B2 (en) 2012-02-28 2014-08-26 Comcast Cable Communications, Llc Load balancing and session persistence in packet networks
EP2853074B1 (en) 2012-04-27 2021-03-24 F5 Networks, Inc Methods for optimizing service of content requests and devices thereof
US9742676B2 (en) * 2012-06-06 2017-08-22 International Business Machines Corporation Highly available servers
US8782221B2 (en) 2012-07-05 2014-07-15 A10 Networks, Inc. Method to allocate buffer for TCP proxy session based on dynamic network conditions
JP2014044677A (ja) * 2012-08-28 2014-03-13 Fujitsu Ltd 送信制御プログラム、通信ノード、および送信制御方法
US9106561B2 (en) 2012-12-06 2015-08-11 A10 Networks, Inc. Configuration of a virtual service network
US8874754B2 (en) 2012-10-16 2014-10-28 Softwin Srl Romania Load balancing in handwritten signature authentication systems
US9338225B2 (en) 2012-12-06 2016-05-10 A10 Networks, Inc. Forwarding policies on a virtual service network
US10027761B2 (en) 2013-05-03 2018-07-17 A10 Networks, Inc. Facilitating a secure 3 party network session by a network device
CN104298560A (zh) * 2013-07-15 2015-01-21 中兴通讯股份有限公司 一种负荷分担系统及方法
US10187317B1 (en) 2013-11-15 2019-01-22 F5 Networks, Inc. Methods for traffic rate control and devices thereof
US9521176B2 (en) 2014-05-21 2016-12-13 Sony Corporation System, method, and computer program product for media publishing request processing
US10015143B1 (en) 2014-06-05 2018-07-03 F5 Networks, Inc. Methods for securing one or more license entitlement grants and devices thereof
US11838851B1 (en) 2014-07-15 2023-12-05 F5, Inc. Methods for managing L7 traffic classification and devices thereof
US10122630B1 (en) 2014-08-15 2018-11-06 F5 Networks, Inc. Methods for network traffic presteering and devices thereof
JP2016063424A (ja) * 2014-09-18 2016-04-25 株式会社東芝 情報処理装置、通信装置、端末、通信処理方法およびコンピュータプログラム
US10182013B1 (en) 2014-12-01 2019-01-15 F5 Networks, Inc. Methods for managing progressive image delivery and devices thereof
US11895138B1 (en) 2015-02-02 2024-02-06 F5, Inc. Methods for improving web scanner accuracy and devices thereof
US10834065B1 (en) 2015-03-31 2020-11-10 F5 Networks, Inc. Methods for SSL protected NTLM re-authentication and devices thereof
US10505818B1 (en) 2015-05-05 2019-12-10 F5 Networks. Inc. Methods for analyzing and load balancing based on server health and devices thereof
US11350254B1 (en) 2015-05-05 2022-05-31 F5, Inc. Methods for enforcing compliance policies and devices thereof
CN104869163A (zh) * 2015-05-26 2015-08-26 湖南傻蛋科技有限公司 一种集群环境下基于代理的动态服务调用方法
US10623319B1 (en) * 2015-09-28 2020-04-14 Amazon Technologies, Inc. Load rebalancing in a network-based system
US10476950B2 (en) * 2015-10-09 2019-11-12 Capital One Services, Llc System and method for risk-aware server load balancing
US11757946B1 (en) 2015-12-22 2023-09-12 F5, Inc. Methods for analyzing network traffic and enforcing network policies and devices thereof
US10404698B1 (en) 2016-01-15 2019-09-03 F5 Networks, Inc. Methods for adaptive organization of web application access points in webtops and devices thereof
US11178150B1 (en) 2016-01-20 2021-11-16 F5 Networks, Inc. Methods for enforcing access control list based on managed application and devices thereof
US10797888B1 (en) 2016-01-20 2020-10-06 F5 Networks, Inc. Methods for secured SCEP enrollment for client devices and devices thereof
US10791088B1 (en) 2016-06-17 2020-09-29 F5 Networks, Inc. Methods for disaggregating subscribers via DHCP address translation and devices thereof
US10505792B1 (en) 2016-11-02 2019-12-10 F5 Networks, Inc. Methods for facilitating network traffic analytics and devices thereof
US10812266B1 (en) 2017-03-17 2020-10-20 F5 Networks, Inc. Methods for managing security tokens based on security violations and devices thereof
US10972453B1 (en) 2017-05-03 2021-04-06 F5 Networks, Inc. Methods for token refreshment based on single sign-on (SSO) for federated identity environments and devices thereof
US11343237B1 (en) 2017-05-12 2022-05-24 F5, Inc. Methods for managing a federated identity environment using security and access control data and devices thereof
US11075987B1 (en) * 2017-06-12 2021-07-27 Amazon Technologies, Inc. Load estimating content delivery network
US11122083B1 (en) 2017-09-08 2021-09-14 F5 Networks, Inc. Methods for managing network connections based on DNS data and network policies and devices thereof
US10951690B2 (en) 2017-09-22 2021-03-16 Microsoft Technology Licensing, Llc Near real-time computation of scaling unit's load and availability state
US10637906B2 (en) * 2017-10-31 2020-04-28 Cisco Technology, Inc. Dynamic socket QoS settings for web service connections
US10579432B1 (en) * 2018-08-13 2020-03-03 Twitter, Inc. Load balancing deterministically-subsetted processing resources using fractional loads
CN109375743A (zh) * 2018-10-29 2019-02-22 广州勤加缘科技实业有限公司 一种服务器负载均衡器
CN111049919B (zh) * 2019-12-19 2022-09-06 上海米哈游天命科技有限公司 一种用户请求的处理方法、装置、设备及存储介质
US11381639B1 (en) * 2020-06-03 2022-07-05 Amazon Technologies, Inc. Load balancing technique selection based on estimated load
JP7485934B2 (ja) * 2020-06-30 2024-05-17 富士通株式会社 情報処理プログラム、情報処理装置及び情報処理方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5774660A (en) * 1996-08-05 1998-06-30 Resonate, Inc. World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network
JP3369445B2 (ja) * 1997-09-22 2003-01-20 富士通株式会社 ネットワークサービスサーバ負荷調整装置、方法および記録媒体
US6601084B1 (en) * 1997-12-19 2003-07-29 Avaya Technology Corp. Dynamic load balancer for multiple network servers
US6078957A (en) * 1998-11-20 2000-06-20 Network Alchemy, Inc. Method and apparatus for a TCP/IP load balancing and failover process in an internet protocol (IP) network clustering system
JP2000155736A (ja) * 1998-11-24 2000-06-06 Nec Corp サービス要求の振り分け方法及びアドレス変換装置
US6606661B1 (en) * 1998-12-23 2003-08-12 At&T Corp. Method for dynamic connection closing time selection
US6944678B2 (en) * 2001-06-18 2005-09-13 Transtech Networks Usa, Inc. Content-aware application switch and methods thereof

Cited By (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100989490B1 (ko) 2003-06-20 2010-10-22 주식회사 케이티 각 서버간 부하 분산 시스템 및 그 방법
US7721295B2 (en) 2004-01-19 2010-05-18 Hitachi, Ltd. Execution multiplicity control system, and method and program for controlling the same
JP2005259080A (ja) * 2004-03-15 2005-09-22 Nec Corp オブジェクト指向のネットワーク分散型コンピューティングシステム、その負荷分散装置及びサーバ
JP2008504600A (ja) * 2004-06-25 2008-02-14 テルコーディア テクノロジーズ インコーポレイテッド 分散要求ルーティング
JP2006106859A (ja) * 2004-09-30 2006-04-20 Toshiba Corp 情報処理システムにおける資源割当装置及び資源割当方法
USRE47296E1 (en) 2006-02-21 2019-03-12 A10 Networks, Inc. System and method for an adaptive TCP SYN cookie with time validation
JP2008097418A (ja) * 2006-10-13 2008-04-24 Nec Corp ロードバランサ及び負荷振り分け方法
US9497201B2 (en) 2006-10-17 2016-11-15 A10 Networks, Inc. Applying security policy to an application session
JP4726846B2 (ja) * 2007-03-30 2011-07-20 富士通株式会社 通信サーバシステムにおける収容制御方法および通信サーバシステム
JP2008250862A (ja) * 2007-03-30 2008-10-16 Fujitsu Ltd 通信サーバシステムにおける収容制御方法および通信サーバシステム
JPWO2009066347A1 (ja) * 2007-11-19 2011-03-31 デュアキシズ株式会社 負荷分散装置
WO2009066347A1 (ja) * 2007-11-19 2009-05-28 Duaxes Corporation 負荷分散装置及び負荷分散方法
US9960967B2 (en) 2009-10-21 2018-05-01 A10 Networks, Inc. Determining an application delivery server based on geo-location information
US10735267B2 (en) 2009-10-21 2020-08-04 A10 Networks, Inc. Determining an application delivery server based on geo-location information
JP2011109180A (ja) * 2009-11-12 2011-06-02 Oki Networks Co Ltd 通信制御装置、通信制御プログラム、データ配信サーバ、データ配信プログラム、及び、データ配信システム
US10447775B2 (en) 2010-09-30 2019-10-15 A10 Networks, Inc. System and method to balance servers based on server load status
US9961135B2 (en) 2010-09-30 2018-05-01 A10 Networks, Inc. System and method to balance servers based on server load status
US9961136B2 (en) 2010-12-02 2018-05-01 A10 Networks, Inc. Distributing application traffic to servers based on dynamic service response time
US9609052B2 (en) 2010-12-02 2017-03-28 A10 Networks, Inc. Distributing application traffic to servers based on dynamic service response time
JP2014505918A (ja) * 2010-12-02 2014-03-06 エイ10 ネットワークス インコーポレイテッド 動的サービス応答時間に基づきサーバにアプリケーショントラフィックを配信するシステムと方法
US10178165B2 (en) 2010-12-02 2019-01-08 A10 Networks, Inc. Distributing application traffic to servers based on dynamic service response time
CN103703453B (zh) * 2011-07-19 2016-11-23 Sk电信有限公司 提供用于消息负载均衡的推送服务的系统及其方法
CN103703453A (zh) * 2011-07-19 2014-04-02 Sk电信有限公司 提供用于消息负载均衡的推送服务的系统及其方法
US10484465B2 (en) 2011-10-24 2019-11-19 A10 Networks, Inc. Combining stateless and stateful server load balancing
US9906591B2 (en) 2011-10-24 2018-02-27 A10 Networks, Inc. Combining stateless and stateful server load balancing
US9979801B2 (en) 2011-12-23 2018-05-22 A10 Networks, Inc. Methods to manage services over a service gateway
US10044582B2 (en) 2012-01-28 2018-08-07 A10 Networks, Inc. Generating secure name records
US10002141B2 (en) 2012-09-25 2018-06-19 A10 Networks, Inc. Distributed database in software driven networks
US9705800B2 (en) 2012-09-25 2017-07-11 A10 Networks, Inc. Load distribution in data networks
US10516577B2 (en) 2012-09-25 2019-12-24 A10 Networks, Inc. Graceful scaling in software driven networks
US10862955B2 (en) 2012-09-25 2020-12-08 A10 Networks, Inc. Distributing service sessions
US9843484B2 (en) 2012-09-25 2017-12-12 A10 Networks, Inc. Graceful scaling in software driven networks
US10491523B2 (en) 2012-09-25 2019-11-26 A10 Networks, Inc. Load distribution in data networks
US10021174B2 (en) 2012-09-25 2018-07-10 A10 Networks, Inc. Distributing service sessions
US9531846B2 (en) 2013-01-23 2016-12-27 A10 Networks, Inc. Reducing buffer usage for TCP proxy session based on delayed acknowledgement
US11005762B2 (en) 2013-03-08 2021-05-11 A10 Networks, Inc. Application delivery controller and global server load balancer
US9900252B2 (en) 2013-03-08 2018-02-20 A10 Networks, Inc. Application delivery controller and global server load balancer
US9992107B2 (en) 2013-03-15 2018-06-05 A10 Networks, Inc. Processing data packets using a policy based network path
US10659354B2 (en) 2013-03-15 2020-05-19 A10 Networks, Inc. Processing data packets using a policy based network path
JP5933118B2 (ja) * 2013-04-24 2016-06-08 三菱電機株式会社 試験装置及び試験方法及びプログラム
WO2014174611A1 (ja) * 2013-04-24 2014-10-30 三菱電機株式会社 試験装置及び試験方法及びプログラム
US10305904B2 (en) 2013-05-03 2019-05-28 A10 Networks, Inc. Facilitating secure network traffic by an application delivery controller
US10038693B2 (en) 2013-05-03 2018-07-31 A10 Networks, Inc. Facilitating secure network traffic by an application delivery controller
US10230770B2 (en) 2013-12-02 2019-03-12 A10 Networks, Inc. Network proxy layer for policy-based application proxies
US9942152B2 (en) 2014-03-25 2018-04-10 A10 Networks, Inc. Forwarding data packets using a service-based forwarding policy
US10257101B2 (en) 2014-03-31 2019-04-09 A10 Networks, Inc. Active application response delay time
US9942162B2 (en) 2014-03-31 2018-04-10 A10 Networks, Inc. Active application response delay time
US10686683B2 (en) 2014-05-16 2020-06-16 A10 Networks, Inc. Distributed system to determine a server's health
US9906422B2 (en) 2014-05-16 2018-02-27 A10 Networks, Inc. Distributed system to determine a server's health
US9992229B2 (en) 2014-06-03 2018-06-05 A10 Networks, Inc. Programming a data network device using user defined scripts with licenses
US9986061B2 (en) 2014-06-03 2018-05-29 A10 Networks, Inc. Programming a data network device using user defined scripts
US10129122B2 (en) 2014-06-03 2018-11-13 A10 Networks, Inc. User defined objects for network devices
US10749904B2 (en) 2014-06-03 2020-08-18 A10 Networks, Inc. Programming a data network device using user defined scripts with licenses
US10880400B2 (en) 2014-06-03 2020-12-29 A10 Networks, Inc. Programming a data network device using user defined scripts
CN104301241A (zh) * 2014-06-05 2015-01-21 中国人民解放军信息工程大学 一种soa动态负载分发方法与系统
US10581976B2 (en) 2015-08-12 2020-03-03 A10 Networks, Inc. Transmission control of protocol state exchange for dynamic stateful service insertion
US10243791B2 (en) 2015-08-13 2019-03-26 A10 Networks, Inc. Automated adjustment of subscriber policies

Also Published As

Publication number Publication date
US20020032777A1 (en) 2002-03-14

Similar Documents

Publication Publication Date Title
JP2002091936A (ja) 負荷分散装置及び負荷見積もり方法
Colajanni et al. Analysis of task assignment policies in scalable distributed Web-server systems
CN106656800B (zh) 一种路径选取方法及系统、网络加速节点及网络加速系统
Wang et al. The effectiveness of request redirection on CDN robustness
Cardellini et al. Geographic load balancing for scalable distributed web systems
CN111181849B (zh) 回源路径确定方法、确定装置、计算机设备和存储介质
US9462051B2 (en) Dynamic cache selection method and system
US20010049741A1 (en) Method and system for balancing load distribution on a wide area network
US8966121B2 (en) Client-side management of domain name information
WO2019214292A1 (zh) 资源获取方法、终端装置、计算机设备及可读介质
US20030172163A1 (en) Server load balancing system, server load balancing device, and content management device
US7970876B2 (en) Global server load balancer
US20120102226A1 (en) Application specific web request routing
WO2012024909A1 (zh) 长连接管理装置及长连接通讯的链路资源管理方法
CA2394854A1 (en) Method and system for directing requests for content to a content server based on network performance
CN103678311B (zh) 基于中转模式的网页访问方法及系统、抓取路径服务器
WO2010020152A1 (zh) 实现网络服务器负载均衡的方法、系统和域名解析服务器
WO2000014634A1 (en) Load balancing for replicated services
Cardellini et al. DNS dispatching algorithms with state estimators for scalable Web‐server clusters
JP2002007232A (ja) Wwwサーバーの性能試験方法およびサーバー試験装置
US20020198961A1 (en) Method for improving web performance by client characterization-driven server adaptation
US20020112050A1 (en) Method and apparatus in network management system for slow link application programming interfaces for status queries
Kontogiannis et al. ALBL: an adaptive load balancing algorithm for distributed web systems
CN107302571A (zh) 基于果蝇算法的信息中心网络路由和缓存管理方法
CN113890849A (zh) 基于内容分发网络、去中心化的回源路由选择方法及系统