JP2953591B2 - サーバ・コンピュータのプロセッサ全体にわたる負荷平衡化 - Google Patents
サーバ・コンピュータのプロセッサ全体にわたる負荷平衡化Info
- Publication number
- JP2953591B2 JP2953591B2 JP9528248A JP52824897A JP2953591B2 JP 2953591 B2 JP2953591 B2 JP 2953591B2 JP 9528248 A JP9528248 A JP 9528248A JP 52824897 A JP52824897 A JP 52824897A JP 2953591 B2 JP2953591 B2 JP 2953591B2
- Authority
- JP
- Japan
- Prior art keywords
- processor
- information
- block
- server
- file
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- 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
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Description
クライアント・コンピュータにサービスを提供するため
の、そのネットワークに接続可能なサーバ・コンピュー
タに関するものである。更に詳しくいえば、本発明は、
サービスを提供するように構成された複数のプロセッサ
を有するタイプのサーバ・コンピュータに関するもので
あり、クライアント・コンピュータからのリクエストに
起因するそれらプロセッサにおける負荷の平衡化(平均
化)という問題に関連する。
用の高性能サーバ・コンピュータに対する需要が増大し
ている。インターネットは、ブリッジ又はゲートウェイ
のようなデバイスの使用を通してインターリンクされた
数多くの小規模のネットワークより成る巨大なネットワ
ークである。原理的には、インターネットに接続された
如何なるコンピュータも、そのインターネットに接続さ
れた他の如何なるコンピュータとも情報を交換すること
ができる。しかし、コンピュータはセンシティブな情報
を含むことが多いので、多くのコンピュータ及びネット
ワークは、コンピュータ相互間の情報の交換を或る程度
制限するセキュリティ方式を有する。
力な構造を象徴するものなので、1つのコンピュータか
ら他のコンピュータに情報を送るためにインターネット
を利用した数多くのサービスが展開している。これらの
サービスの例は、FTP、News、Gopher、ワールド・ワイ
ド・ウェイ(即ち、WWW;以後、それをこのように呼ぶこ
とにする)である。
声、ビデオ、及びテキストのようなテクノロジを結合
し、インターネットに接続された誰にでもオン・デマン
ド態様でそれらを表示することができる。本質的には、
WWWは、適正なソフトウエア及びハードウエア構成を有
するコンピュータによってインターネットに接続された
誰もが、インターネット上の何処かで利用可能にされた
如何なるハイパーメディア・ドキュメントも検索するこ
とを可能にする。ハイパーメディア・ドキュメントは、
1ブロックの情報を表すファイルとして受信され、そし
て、そのファイル内では、例えは、テキスト、音声、イ
メージ、又は映画を含み得る他のドキュメント(又は、
情報ブロック)に対するハイパーリンクである。
タはユーザに表示するためのドキュメントを作成する
時、それは、その表示を完成するのに必要な他のファイ
ルを受け取るためにこれらのハイパーリンクのうちの或
るものを使用してもよい。例えば、ハイパーリンクは、
ドキュメントの一部として表示されるべきイメージ・フ
ァイルをアクセスするために使用可能である。一旦、ド
キュメントがクライアント・コンピュータによって作成
されそしてユーザに表示されると、ユーザは、ハイパー
リンクによって参照されたドキュメントをリクエストす
るために、例えば、マウス又は他の入力デバイスを使用
してスクリーン上のワード又はイメージを選択すること
によりハイパーリンクを選択する機会を持つことができ
る。
ビスを使用し始めたので、サーバ・コンピュータに関す
る需要が増加している。これらの需要に対処するため
に、並列コンピュータがサーバとして使用され始めた。
これらのコンピュータは、サービスを提供するように構
成された複数のプロセッサを有する。複数のプロセッサ
の使用によって、非常に大量のサーバ・リクエストを処
理することが可能になる。そのような並列コンピュータ
の例は、IBM RISC System/6000 SPマシンである(IB
M及びRISC System/6000はインターナショナル・ビジネ
ス・マーシンズ・コーポレーションの商標である)。
る問題は、ドキュメント(WWWにおけるウェブ・ページ
のような)を処理するために及ぶサービス・ベースのア
プリケーションを走らせるために並列システムにおいて
共同する複数のプロセッサ全体にわたって着信のクライ
アント・トラフィックを平衡化するという問題である。
既存の負荷平衡化機構の場合、1つの特定のプロセッサ
が、或る期間の間、大量のトラフィックの焦点になると
いう時間が存在することがある。これに対する技術用語
は、そのプロセッサが「トースト」されるということで
ある。この状態では、プロセッサはクライアントのリク
エストに圧倒されて、1つのリクエストをサービスする
ために数分を要する仮想停止にさせられる。
均衡な負荷を緩和し、それによって、このトースティン
グ効果を回避する助けをする機構を提供することにあ
る。
・コンピュータであって、ネットワークに接続された1
つ又は複数のクライアント・コンピュータにサービスを
提供するように構成された複数のプロセッサを有するサ
ーバ・コンピュータを提供する。そのサービスはクライ
アント・コンピュータへの情報ブロックの提供を含み、
プロセッサは、情報ブロックに関するデータが記憶され
るデータ記憶装置へのアクセスを行う。サーバ・コンピ
ュータは、前記複数のプロセッサの各々に設けられたブ
ロック検索手段を含む。そのブロック検索手段は、プロ
セッサからの特定の情報ブロックを求めるクライアント
・コンピュータからのリクエストに応答して、そのリク
エストされた情報ブロックを表すファイルを作成するた
めに、データ記憶装置からデータを検索すべく使用され
る。そのファイルは、クライアントよってリクエスト可
能な後続の情報ブロックに対するリファレンスを含む。
サーバ・コンピュータは、更に、そのサーバのすべての
プロセッサに対して維持された負荷分散レコードに含む
ためのそれらプロセッサに対するアクティビティ・デー
タを周期的に決定するための負荷決定手段と、前記ブロ
ック検索手段によって作成されたファイルにおける後続
の情報ブロックに対する各リファレンスのために、どの
プロセッサがその後続の情報ブロックを求めるクライア
ント・コンピュータからのリクエストをサービスすべき
かを前記負荷分散レコードに基づいて決定するように、
及び前記ブロック検索手段によって作成されたファイル
にそのプロセッサに対するアドレスを含むように構成さ
れる判断手段と、そのファイルをクライアント・コンピ
ュータに送るための送達手段とを含む。
の内容は何れかの後続の情報ブロックを検索すべきプロ
セッサのアドレスを含むように、クライアントに送られ
る前に動的に変更される。どのプロセッサが後続の情報
ブロックを求めるリクエストをサービスすべきかに関す
る決定は、サーバのプロセッサに対する負荷分散レコー
ドに基づいて行われる。この方法では、プロセッサ全体
にわたって負荷のより効果的な平衡化が得られ、従っ
て、特定のプロセッサの「トースティング」のような問
題を緩和することができる。
対するアクティビティ・データを決定するために前記複
数のプロセッサの各々に設けられる。更に、判断手段
が、望ましくは、前記複数のプロセッサの各々に設けら
れる。しかし、好適な実施例に対する1つの代替えとし
て、1つ又は複数の負荷決定手段、判断手段、及び送達
手段が複数のプロセッサのうちの特定な1つに、又はそ
れらのエレメントの機能の遂行に専用の完全に独立した
プロセッサに設けられてもよい。従って、1つのプロセ
ッサが判断手段の機能を遂行することに専用であっても
よく、ブロック検索手段によって作成された各ファイル
が判断手段による処理のためにそのプロセッサに送られ
てもよい。
ックを構成する時にクライアント・コンピュータが複数
の後続の情報ブロックを必要とする場合、負荷分散レコ
ードによって表されたプロセッサにおける負荷が大きけ
れば大きいほど、プロセッサがリクエストをサービスす
る後続の情報ブロックが少なくなるように、判断手段
は、任意の特定のプロセッサがリクエストをサービスす
る後続の情報ブロックの数を決定するように構成され
る。一般に、その1つ又は複数の後続の情報ブロック
は、その情報ブロックを作成する時にクライアント・コ
ンピュータによって必要とされるイメージ・ファイルで
あろう。
あり、サービスはワールド・ワイド・ウェブ・サービス
であり、情報ブロックはウェブ・ページである。しか
し、クライアントが必要とするかもしれない後続の情報
ブロックに対するリファレンスを含み、しかも、サーバ
によってサービスされる必要のある情報ブロックがクラ
イアントに供給されるという任意のネットワーク及びサ
ービスに本発明が適用し得ることは明らかであろう。
断手段によってファイルに含まれた後続の情報ブロック
に対するアドレスは、望ましくは、その情報ブロックに
対する識別子と、判断手段が決定したプロセッサであっ
てその情報ブロックに対するリクエストをサービスする
であろうプロセッサに対する独特の識別子との両方を含
むアドレス・ストリングの形式を取る。
続可能なサーバ・コンピュータであって、ネットワーク
に接続された1つ又は複数のクライアント・コンピュー
タにサービスを提供するように構成された複数のプロセ
ッサを有するサーバ・コンピュータを動作させる方法を
提供する。そのサービスは、クライアント・コンピュー
タへの情報ブロックの提供を含み、それらプロセッサ
は、その情報ブロックに関するデータが記憶されるデー
タ記憶装置へのアクセスを行う。その方法は、 (a).プロセッサからの特定の情報ブロックに求める
クライアント・コンピュータからのリクエストに応答し
て、そのリクエストされた情報ブロックを表すファイル
を作成するために、データ記憶装置からデータを検索す
べくそのプロセッサを使用するステップ(なお、そのフ
ァイルは、クライアントによってリクエスト可能な後続
の情報ブロックに対するリファレンスを含む)と、 (b).サーバのすべてのプロセッサに対して維持され
た負荷分散レコードに含ませるためにプロセッサに関す
るアクティビティ・データを周期的に決定するために負
荷決定手段を使用するステップと、 (c).ステップ(a)において作成されたファイルに
おける後続の情報ブロックに対する各リファレンスのた
めに、どのプロセッサがその後続の情報ブロックを求め
るクライアント・コンピュータからのリクエストをサー
ビスすべきかを負荷分散レコードに基づいて決定し、ス
テップ(a)において作成されたファイルにそのプロセ
ッサに対するアドレスを含むステップと、 (d).そのファイルをクライアント・コンピュータに
送るステップと、 を含む。
な実施例に関連して更に説明することにする。
す概略的ブロックである。
サーバのプロセッサによって、好適な実施例において実
行されるプロセッサを表す流れ図である。
クエストをどのプロセッサがサービスするかを決定する
ために負荷分散レコードを使用する方法を示す。
提供されるWWWサービスを考察し、並列ウェブ・サーバ
において共同する多数のプロセッサ全体にわたって二次
的な負荷平衡化を提供するための機構を説明することに
する。
ける特定のページ又はファイルを指定するものと見なす
ことができるユニバーサル・リソース・ロケータ(UR
L)に基づいている。URLは、サーバ・マシン及びそのマ
シンにおける特定のファイル又はページの両方を示す。
例えば、リンクは“http://www.ibm.com/example.html"
でよい。その“http:"は、我々がワールド・ワイド・ウ
ェブを使用しようとしていることを表す。“www.ibm.co
m"は、我々がリクエストしているページを有するインタ
ーネット上のウェブ・サーバのインターネット名であ
り、“example.html"は、我々が受信したいページの名
前である。
ばれるソフトウエアを使用して簡単なGUIをユーザに提
供し、ユーザがWWWを介して種々のURLにナビゲートする
ことを可能にする。時には、ユーザは特定のURLを名前
によって指定するであろうが、更に頻繁に、ユーザはペ
ージ内のリファレンス(いわゆる、「ハイパーリン
ク」)によって1つのURLから他のURLにジャンプするで
あろう。従って、ページ上の特定のワード又は記号が他
のURLと関連づけられるので、例えば、関連ロケーショ
ンにおいてマウスをクリックすることによるそのワード
又は記号の選択は、クライアント・コンピュータにその
選択されたURLからそのページを検索させ、そしてそれ
を表示させる。この新しいページは、第1のページとは
完全に異なるサーバ上に位置指定可能である。他のURL
にマップするワード又は記号は、時には、「ホット・ボ
タン」(又は、その類似物)と呼ばれることがある。単
一のページ内に数多くのホット・ボタン又はハイパーリ
ンクが存在してもよい。
よい。クライアント・コンピュータにおけるユーザが特
定のサーバ・コンピュータにおけるURLを選択する場
合、サーバ・コンピュータはそのページに特有のアクシ
ョンを遂行する。場合によっては、これは、サーバ・コ
ンピュータによるアプリケーションの立上げを導くこと
があるが、大多数の場合、サーバ・コンピュータは記憶
されたページのデータベースからそのリクエストされた
ページを検索し、そして、これは、ユーザに対する表示
のために、インターネットを通してクライアント・コン
ピュータに返送される。
ってフォーマットされる。代表的なウェブ・ページはそ
のページを見ている人が或るトピックに関する更なる情
報を欲する場合にその人がクリック・オンすることがで
きる或るテキスト内容、或る組み込まれたイメージ(グ
ラフィックス)、及び他のページに対する数多くのリン
クを含んでいる。それらのイメージ自体は、クライアン
トがサーバ・コンピュータからページをダウンロードし
ている時、ウェブ・ブラウザがそのクライアントのため
にサーバ・コンピュータから自動的にリクエストするウ
ェブ「ページ」である。これらのイメージは一般に、サ
ーバにおける別個のグラフィックス・ファイルとして、
例えば、標準の“.gif"又は“.jpeg"フォーマットで記
憶される。HTMLテキストは、これらのグラフィックス・
ファイルに対するリファレンスを含む。それらリファレ
ンスは、指定されたファイルをサーバから検索するよう
にクライアントに指示し、それによって、クライアント
がHTMLテキスト及び関連のイメージの両方を表示するこ
とを可能にする。そのページからのフォロー・オン・リ
ンクは、ベース・ページが到来したサーバと同じサーバ
における他のページに対するものか、或いはインターネ
ット上の他の任意のウェブ・サーバに対るものであって
もよい。本発明の好適な実施例を説明するためには、グ
ラフィック・ファイルと、ベース・ページと同じサーバ
上にあるフォロー・オン・リンクとがこれに関連するも
のである。以下では、これらの項目の両方とも、参照さ
れたウェブ・ページと呼ぶことにする。
商業的に入手可能な種々のウェブ・ブラウザ、例えば、
IBM社からの「Explorer」及びNCSAからの「Mosaic」が
ある。そのようなブラウザはすべてHTML及び他のWWW標
準フォーマットを理解し、これらのフォーマットでファ
イルを正しく表示又は出力することができる。同様に、
種々のURLの間をナビゲートするための機構も、そのよ
うなプログラムによって理解され、実装される。ワール
ド・ワイド・ウェブに関する更なる情報は、Andrew For
d著の“Spinning the Web"(International Thomson Pu
blishing,London 1995)及びJohn December及びNeil Ra
ndall著の“The World Wide Web Unleashed"(SAMS Pub
lishing,Indianapolis 1994)において見ることができ
る。
ロセッサに同じインターネット名を共用させるために、
並列サーバと関連して負荷平衡化技法が使用される。例
えば、第1図を参照すると、並列ウェブ・サーバ10、即
ち、www.ibm.comは、www1.ibm.com、www2.ibm.com、及
びwww3.ibm.comと呼ばれるプロセッサ20、30、40によっ
てサービスされる。負荷平衡化ソフトウエアは、www.ib
m.comへのリクエストが、その並列ウェブ・サーバの一
部を形成するプロセッサの1つに送られるように取り決
める。、1つの適した負荷平衡化技法が公開欧州特許出
願EP−A−0,649,038号において検討されている。その
欧州特許出願は、並列サーバにおける負荷が、そのサー
バを形成する種々のプロセッサ(又は、コンピュータ)
全体にわたって平衡化されることを可能にするための動
的負荷平衡化技法を開示している。クライアント・コン
ピュータ50におけるプログラムが並列サーバ10のプロセ
ッサに接続することを望んでいる時、それは、ネーム・
サーバと呼ばれることが多いデータ処理システム60とコ
ミュニケートして所望のサーバに対するネットワーク・
アドレスを得る。前記EP−A−0,648,038号において開
示された技法によれば、判断ロジック70が設けられる。
その判断ロジックは、並列サーバ10におけるプロセッサ
又はコンピュータを周期的に調べ、或る構成可能な基準
に基づいてそれらのプロセッサの1つを選択する。そし
て構成可能な基準は、その基準が適用される時の最も軽
く装荷されたプロセッサが判断ロジック70によって選択
されるように選定可能である。そこで、このプロセッサ
に対するアドレスは、ネーム・サーバ60にとって利用可
能な記憶装置80における総称サーバ名と関連付けられ、
従って、クライアント・プログラムがその総称サーバ名
を使用してマシン・アドレスをリクエストする時、それ
は、判断ロジック70によって最も最近選定された並列サ
ーバ10におけるプロセッサのアドレスを与えられる。従
って、www.ibm.comが総称名である場合、www.ibm.comと
いうインターネット・アドレスに対するクライアント50
からネーム・サーバ60へのリクエストの結果、クライア
ントは3つのプロセッサ20、30、40の1つのインターネ
ット・アドレスを与えられるであろう。この技法の更な
る詳細に関しては、前述のEP−A−0,648,038号を参考
にして欲しい。
・サイト」と呼ばれることが多い)を参照したフォロー
・オン・リンクはベース・ページのインターネット名と
同じインターネット名を参照するであろう。例えば、ペ
ージhttp://www.ibm.com/first_page.htmlの場合、フォ
ロー・オン・リンクは、http://www.ibm.com/second_pa
ge.htmlに対するものとなり得る。クライアント・コン
ピュータは、総称名www.ibm.comというインターネット
・アドレスに関してネーム・サーバ60を既に照会してい
るので、一般には、それは同じインターネット・アドレ
スを再び使用するであろう。従って、フォロー・オン・
リクエストは、オリジナル・リクエストをサービスした
プロセッサと同じプロセッサに与えられるであろう。ネ
ーム・サーバ60は、総称名www.ibm.comを識別するため
に再びコンサルティングされないので、ネーム・サーバ
において使用される如何なる負荷平衡化技法も利用され
ないであろう。その結果、オリジナル・リクエストをサ
ービスした実際のプロセッサにはフォロー・オン・リン
クに対するリクエストが殺到することがあり、これは、
前述の「トースティング」効果を生じさせることになろ
う。
エストに関してネーム・サーバ60にいつもコンサルティ
ングするようにクライアント・コンピュータを構成する
ことは可能である。しかし、ネーム・サーバの効率を高
めようとする場合、ネーム・サーバは最近のネーム・リ
クエストの詳細をキャッシュしようとする。一般には、
クライアントはネーム・サーバ60と直接にコミュニケー
トしないであろう。その代わり、クライアントは、一般
に、リクエストが最終的にネーム・サーバ60に送られる
まで、一連の他のネーム・サーバとコミュニケートする
それらのローカル・ネーム・サーバとコミュニケートす
るであろう。このネーム・サーバ60は、並列ウェブ・サ
ーバ10に対して「権威」を持ったネーム・サーバであ
る。そこで、ネーム・サーバ60によって識別されたイン
ターネット・アドレスは、これらのネーム・サーバすべ
てを通して返送されるであろう。これらのネーム・サー
バの各々は、www.ibm.comが識別されて得られた特定の
インターネット・アドレスをキャッシュすることを選ぶ
ことができる。従って、クライアントがwww.ibm.comと
コミュニケートする必要がある時、それがネーム・サー
バと接触するようにそのクライアントが構成される場
合、それは依然としてネーム・サーバ60によって前に識
別されたアドレスを受けようとするであろう。それは、
例えば、ローカル・ネーム・サーバがその名前に対する
インターネット・アドレスを既に知っており、従って、
それ以上リクエストを送る必要がないことをそのローカ
ル・ネーム・サーバが決定し得るためである。従って、
ネーム・サーバ60における負荷平衡化技法は、サーバの
アドレスを求めるクライアントによる第1リクエストに
とっては有用であるけれど、同じ総称サーバ名に対する
何れの後続のフォロー・オン・リンクにとっても有用で
はないことがわかる。
ブ・サーバは、そのサーバにおけるウェブ・ページがサ
ービスされる時にそのウェブ・ページの内容を修正する
能力を備えており、フォロー・オン・リンクが参照する
プロセッサの名前を修正するためにその機能を利用す
る。第1図の例を考察すると、www1.ibm.com、www2.ib
m.com及びwww3.ibm.comはすべてwww.ibm.com並列ウェブ
・サーバにおけるサーバであるので、別の方法でwww.ib
m.comを参照するフォロー・オン・リンクは特定のプロ
セッサ、例えば、www1.ibm.comを参照するように変更可
能である。これは、フォロー・オン・ページを求めるリ
クエストを並列ウェブ・サーバにおける特定のプロセッ
サに向けされ、それらが現在表示されているウェブ・ペ
ージに組み込まれるべきグラフィカル・イメージであろ
うと、或いは表示されたウェブ・ページからユーザがア
クセスすることができる種々のウェブ・ページに対する
フォロー・オン・リンクであろうと、すべての参照され
たウェブ・ページに関して適用可能である。
わりに明示的プロセッサ名(例えば、www1.ibm.com)を
指定するために好適な実施例の技法を使用することによ
って、近い将来そのサーバの種々のプロセッサに適合し
得る制御をその負荷の上に及ぼすことが可能である。こ
の制御は「トースティング」の可能性を減少させ得るも
のである。
更に詳細に説明することにする。第1図には、好適な実
施例を実現するために必要なプロセッサ30の機能的素子
が示される。望ましくは、WWWサービスを提供すべきサ
ーバ10の他のプロセッサ20、40もすべて同じ素子を含む
が、これらは、簡単にするためにその図から省略されて
いる。その好適な実施例の代替えとして、ブロック検索
手段以外の1つ又は複数の機能素子が、それら複数のプ
ロセッサのうちの特定の1つにおいて、又はそれら素子
の機能を遂行することに専用である完全に独立したプロ
セッサにおいて設けられるようにすることも可能であ
る。従って、1つのプロセッサは判断手段の機能を遂行
することに専用のものであってもよく、ブロック検索手
段によって検索されたすべてのウェブ・ページがその判
断手段による処理のためにそのプロセッサに送られるよ
うにしてもよい。
にコンサルティングした後、プロセッサ30のインターネ
ット・アドレスを与えられる場合、それは、プロセッサ
30をウェブ・ページに対するそれのリクエストと直接に
接触させるであろう。クライアント50によってリクエス
トされたウェブ・ページを表すファイルを作成するため
に、ブロック検索手段80が記憶装置120におけるデータ
をアクセスするであろう。そのファイルにおける参照さ
れた如何なるウェブ・ページに対しても、判断手段90
は、そのウェブ・ページに対するその後のリクエストを
処理するためにどの特定のプロセッサが選択されるべき
かを決定するために使用されるであろう。そして、その
プロセッサに対する識別子(例えば、www.ibm.com)が
そのファイルにおける適正なポイントに含まれるであろ
う。
ー・オン・リクエストを処理するかを決定する時、判断
手段90は、サーバのすべてのプロセッサにおける負荷に
関する情報を提供する負荷分散レコードを参照する。負
荷決定手段100はプロセッサ30のアクティビティを周期
的に評価するように構成され、負荷分散レコード内に含
ませるためにその情報を提供する。
が処理するのかを判断手段が決定し、その情報がブロッ
ク検索手段によって作成されたファイルに含まれてしま
うと、そのファイルは送達手段110に送られ、それをク
ライアント・コンピュータ50のブラウザ130へ送らせ
る。そこで、ブラウザ130は、そのファイルからウェブ
・ページを作成してクライアント・コンピュータ50のユ
ーザに表示するであろうし、参照されたウェブ・ページ
に対するリクエストを、そのファイルにおいて識別され
たプロセッサに直接に送るであろう。
ェブ・サーバのプロセッサが如何にビジーであるかに関
する統計がその並列ウェブ・サーバによって収集され
る。「負荷分散レコード」を生じさせるためにこれらを
照合することが可能である。これが数多くの方法で行わ
れ得ることは明らかであろう。例えば、各プロセッサ
は、そのプロセッサが如何にビジーであるかを周期的に
決定し、負荷分散レコード内に含ませるためにその情報
を或る中央ロケーションに送るルーチンを含んでもよ
い。負荷分散レコードは、各プロセッサによるアクセス
のためにデータ記憶装置120上に保持されてもよく、或
いは、その代わりに、サーバのアーキテクチャがそのよ
うな共用メモリ構成をサポートする場合、すべてのプロ
セッサによってアクセス可能な共用メモリの一部分にお
いてそのサーバ上に保持されてもよい。別の方法とし
て、各プロセッサはそれが如何にビジーであるかを周期
的に評価し、そしてその情報を並列ウェブ・サーバにお
ける他のすべてのプロセッサにブロードキャストするよ
うに、一連のメッセージが通信ネットワークを介して各
プロセッサに送られてもよい。そこで、各プロセッサ
は、負荷分散レコードをそれ自身のローカル・メモリに
維持し、それが新しい負荷データを他のプロセッサから
受け取る時にいつもそれを更新することができる。
の負荷分散レコードを使用して、フォロー・オン・リン
クのインターネット名及びそれが後でサービスするウェ
ブ・プージにおける参照されたイメージを動的に修正す
る。そのプロファイルは、ウェブ・サーバ管理プログラ
ムによって作成可能な頻度で周期手に更新される。この
内容を修正を行うことの効果は、ビジーになり始めたプ
ロセッサが比例的に少ないフォロー・オン・リクエスト
をそれに向けられ、従って、プロセッサが「トースト」
される時の深刻なパフォーマンス衝撃を回避する。その
プロセッサが回復する時、それは更に多くのリクエスト
をそれに向けられるであろう。従って、モニタリング及
び負荷同調サイクルが継続するであろう。
適な実施例に従ってプロセッサにより実行されるプロセ
スを第2図を参照して説明することにする。ステップ20
0において、プロセッサはクライアントからのリクエス
トを待つ。ステップ210において、クライアント・コン
ピュータのブラウザからのリクエスト205が受け取られ
る。次に、ステップ220において、プロセッサは、どの
ウェブ・ページがリクエストされたかを決定し、そこ
で、ブロック検索手段80はデータベース120からそのペ
ージを取り出し、ファイルを作成する(ステップ23
0)。次に、ステップ240において、そのファイルにおけ
る他のウェブ・ページに対するすべてのリファレンスが
識別され、判断手段90は最新の負荷分散レコード270を
使用して、それらのウェブ・ページの各々に関して、ど
のプロセッサがそのウェブ・ページに対するリクエスト
をサービスすべきかを決定する。従って、フォロー・オ
ン・ウェブ・ページは‘second_page.html'と呼ばれ
る。プロセッサ20がリクエストをサービスすべきである
ことを判断手段が決定する場合、ファイルにおけるリフ
ァレンスは‘http://www.ibm.com/second_page.html'を
読むように変更されるであろう。
手段によって完成されてしまうと、ステップ250におい
て、ファイルがクライアント・ブラウザに送られる。次
に、好適な実施例では、プロセッサはそれが如何にビジ
ーであるかを再評価するように調整され、ステップ260
において、その評価に基づいて負荷分散レコードを更新
する。一旦これが行われてしまうと、プロセッサはステ
ップ200に戻り、クライアントからの次のリクエストを
待つ。
・オン・ウェブ・ページは2つのタイプに分類可能であ
る。或るものは、ユーザに表示するために現在のウェブ
・ページを作成する時、ブラウザが検索する必要のある
ウェブ・ページを参照することがある。例えば、基本的
ファイルは、ウェブ・ページに対するテキストをすべて
含むが、表示されるべき如何なるイメージに対するデー
タも一般には含まれないであろう。イメージを含むウェ
ブ・ページに対するリファレンスはブラウザに戻された
ファイルに与えられるであろう。ユーザに対する完全な
ウェブ・ページを複製するためには、ブラウザがこれら
のウェブ・ページを検索する必要があろう。
ページは、表示のために初期のウェブ・ページを生じさ
せるためにはブラウザが必要としないフォロー・オン・
リンクであろう。その代わり、これらは、一旦ウェブ・
ページが表示されてしまうと、ユーザが選択することが
できるページであろう。一般に、ユーザはスクリーン上
の強調表示された特定のワード又はイメージを選択する
ことができるであろう。これらのワード及びイメージは
他のウェブ・ページと関連付けられる。そのような選択
の際、ブラウザは、そのウェブ・ページに対するリクエ
ストをサービスすべきプロセッサのアドレスをファイル
から検索するであろうし、そのプロセッサと直接に接触
するであろう。
ジに特に関連して、第3図は、この第1のタイプのウェ
ブ・ベージに対するリクエストをサーバの利用可能なプ
ロセッサの間で分離するために、負荷分散レコードを判
断手段90が使用する方法を示す。この第1のタイプのウ
ェブ・ページは、ユーザに表示するための完全なウェブ
・ページを作成し得るようにブラウザによって直ちに必
要とされるものなので、オリジナル・ウェブ・ページが
ブラウザへ送達された全く直後にこれらのリクエストが
サーバに戻るものと予想することができる。
のパーセンテージとして、各プロセッサに関して座標表
示される。一般的には、最大負荷は、プロセッサが受容
可能な応答時間を提供することができないポイントとし
て決定される。これは、一般に、サーバ管理プログラム
によって決定される。明らかに、負荷を評価することが
できる別の方法が存在する。第3図から、プロセッサ2
が最も重く装荷され、続いてプロセッサ3が重く装荷さ
れ、一方、プロセッサ1が最も軽く装荷されることがわ
かる。例えば、第1タイプの9個のフォロー・オン・ウ
ェブ・ページが存在する場合、判断手段はそのパーセン
テージ負荷の図を使用して、それらの9個のウェブ・ペ
ージのうちの幾つが各プロセッサによってサービスされ
なければならないかを決定することができる。
用の負荷は、合計9個のブロックが生じるように等しい
サイズのブロックに分けられている。複数のプロセッサ
に跨って負荷を平衡化する1つの適当な方法は、特定の
プロセッサの未使用の負荷と関連したブロックの数に等
しい複数のウェブ・ページに対するフォロー・オン・リ
クエストをサービスする責任をその特定のプロセッサに
割り当てることである。従って、第3図に示された例で
は、プロセッサ1のアドレスが5個のウェブ・ページに
対して参照され、プロセッサ2のアドレスが1つのウェ
ブ・ページに対して参照され、そしてプロセッサ3のア
ドレスは3個のウェブ・ページに対して参照されるであ
ろう。
ブ・ページがサービスされる時、何らかのフォロー・オ
ン・リンクが検索されなければならないサーバ・プロセ
ッサのインターネット名を変えるように、それらのウェ
ブ・ページの内容が動的に変更されることは明らかであ
ろう。そのプロセッサは、同じウェブ内容をアクセスで
きる一組のプロセッサから選定され、その選定はそれら
サーバの相対的な装荷に基づいて行われる。この方法で
は、効果的な負荷平衡が得られ、プロセッサ「トーステ
ィング」の問題は、それらが深刻なものになる前に回避
される。
Claims (13)
- 【請求項1】ネットワークに接続可能であり、前記ネッ
トワークに接続された1つ又は複数のクライアント・コ
ンピュータにサービスを提供するように構成された複数
のプロセッサ(20、30、40)を有するサーバ・コンピュ
ータにして、前記サービスはクライアント・コンピュー
タ(50)への情報ブロックの供給を含み、前記プロセッ
サは前記情報ブロックのためのデータが記憶されるデー
タ記憶装置(120)へのアクセスを有する、サーバコン
ピュータにおいて、 前記複数のプロセッサの各々に設けられ、1つのプロセ
ッサからの特定の情報ブロックを求めるクライアント
・、コンピュータ(50)からのリクエストに応答して、
該リクエストされた情報ブロックを表すファイルを作成
するために、前記データ記憶装置(120)からデータを
検索すべく使用されるブロック検索手段(80)であっ
て、前記ファイルは前記クライアント・コンピュータ
(50)によってリクエスト可能な後続の情報ブロックに
対するリファレンスを含む、ブロック検索手段と、 前記サーバのすべてのプロセッサに対して維持された負
荷分散レコードに含むための前記プロセッサに対するア
クティビテイ・データを周期的に決定するための負荷決
定手段(100)と、 前記ブロック検索手段(80)によって作成されたファイ
ルにおける後続の情報ブロックに対する各リファレンス
のために、どのプロセッサが前記後続の情報ブロックを
求める前記クライアント・コンピュータ(50)からのリ
クエストをサービスすべきかを前記負荷分散レコードに
基づいて決定するように、及び前記ブロック検索手段
(80)によって作成されたファイルに該プロセッサに対
するアドレスを含むように構成される判断手段(90)
と、 前記ファイルを前記クライアント・コンピュータ(50)
に送るための送達手段(110)と、 を含むサーバ・コンピュータ。 - 【請求項2】前記負荷決定手段(100)は各プロセッサ
に対するアクティビティを決定するために前記複数のプ
ロセッサの各々に設けられる、請求の範囲第1項に記載
のサーバ・コンピュータ。 - 【請求項3】前記判断手段(90)は前記複数のプロセッ
サの各々に設けられる、請求の範囲第1項又は第2項に
記載のサーバ・コンピュータ。 - 【請求項4】前記ファイルによって表された情報ブロッ
クを作成する時に前記クライアント・コンピュータ(5
0)が複数の後続の情報ブロックを必要とする場合、前
記判断手段(90)は、負荷分散レコードによって表され
たプロセッサにおける負荷が大きけれは大きいほど、プ
ロセッサがリクエストをサービスする後続の情報ブロッ
クの数が少なくなるように、任意の特定のプロセッサが
リクエストをサービスする後続の情報ブロックの数を決
定するように構成される、請求の範囲第1項乃至第3項
の1つに記載のサーバ・コンピュータ。 - 【請求項5】前記情報ブロックのうち1つ又は複数個の
情報ブロックは該情報ブロックを作成する時に前記クラ
イアント・コンピュータ(50)によって必要とされるイ
メージ・ファイルである、範囲第1項乃至第4項の1つ
に記載のサーバ・コンピュータ。 - 【請求項6】前記ネットワークはインターネットであ
る、範囲第1項乃至第5項の1つに記載のサーバ・コン
ピュータ。 - 【請求項7】前記サービスはワールド・ワイド・ウェブ
・サービスであり、前記情報ブロックはウェブ・ページ
である、請求の範囲第6項に記載のサーバ・コンピュー
タ。 - 【請求項8】前記判断ブロック(90)によって前記ファ
イルに含まれた後続の情報ブロックに対するアドレスは
該情報ブロックに対する識別子と、前記判断手段(90)
が決定したプロセッサであって該情報ブロックに対する
リクエストをサービスするであろうプロセッサに対する
独特の識別子との両方を含むアドレス・ストリングの形
式をとる、請求の範囲第7項に記載のサーバ・コンピュ
ータ。 - 【請求項9】ネットワークに接続可能であり、前記ネッ
トワークに接続された1つ又は複数のクライアント・コ
ンピュータにサービスを提供するように構成された複数
のプロセッサ(20、30、40)を有するサーバ・コンピュ
ータを動作させる方法にして、前記サービスはクライア
ント.コンピュータ(50)への情報ブロックの供給を含
み、前記プロセッサは前記情報ブロックのためのデータ
が記憶されるデータ記憶装置(120)へのアクセスを有
する、サーバ・コンピュータを動作させる方法におい
て、 (a)1つのプロセッサからの特定の情報ブロックを求
めるクライアント・コンピュータ(50)からのリクエス
トに応答して、該リクエストされた情報ブロックを表す
ファイルを作成するために、前記データ記憶装置(12
0)からデータを検索すべく該プロセッサを使用するス
テップであって、前記ファイルは前記クライアント・コ
ンピュータ(50)によってリクエスト可能な後続の情報
ブロックに対するリファレンスを含む、ステップと、 (b)前記サーバのすべてのプロセッサに対して維持さ
れた負荷分散レコードに含ませるために前記プロセッサ
に関するアクティビティ・データを周期的に決定するた
めに負荷決定手段(100)を使用するステップと、 (c)前記ステップ(a)において作成されたファイル
における後続の情報ブロックに対する各リファレンスの
ために、どのプロセッサが該後続の情報ブロックを求め
る前記クライアント・コンピュータ(50)からのリクエ
ストをサービスすべきかを前記負荷分散レコードに基づ
いて決定し、前記ステップ(a)において作成されたフ
ァイルに該プロセッサに対するアドレスを含むステップ
と、 (d)前記ファイルを前記クライアント・コンピュータ
(50)に送るステップと、 を含む方法。 - 【請求項10】前記複数のプロセッサの各々は前記ステ
ップ(b)を遂行するように構成された負荷決定手段
(100)を含む、請求の範囲第9項に記載の方法。 - 【請求項11】前記プロセッサの各々は前記ステップ
(c)を遂行するように構成された判断手段(90)を含
む、請求の範囲第9項又は第10項に記載の方法。 - 【請求項12】前記ファイルによって表された情報ブロ
ックを作成する時に前記クライアント・コンピュータ
(50)によって複数の後続の情報ブロックが必要とされ
る場合、前記ステップ(c)は、負荷分散レコードによ
って表されたプロセッサにおける負荷が大きければ大き
いほど、プロセッサがリクエストをサービスする後続の
情報ブロックの数が少なくなるように、任意の特定のプ
ロセッサがリクエストをサービスする後続の情報ブロッ
クの数を決定するステップを含む、請求の範囲第9項乃
至第11項の1つに記載の方法。 - 【請求項13】前記ステップ(c)において前記ファイ
ルに含まれた後続の情報ブロックに対するアドレスは該
情報ブロックに対する識別子と、該情報ブロックを求め
るリクエストをサービスするプロセッサとしてステップ
(c)において決定されたプロセッサに対する独自の識
別子との両方を含むアドレス・ストリングの形式をと
る、請求の範囲第9項乃至第12項の1つに記載の方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9601559.9 | 1996-01-26 | ||
GB9601559A GB2309558A (en) | 1996-01-26 | 1996-01-26 | Load balancing across the processors of a server computer |
PCT/GB1996/002983 WO1997029423A1 (en) | 1996-01-26 | 1996-12-04 | Load balancing across the processors of a server computer |
US08/770,142 US5867706A (en) | 1996-01-26 | 1996-12-19 | Method of load balancing across the processors of a server |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11503551A JPH11503551A (ja) | 1999-03-26 |
JP2953591B2 true JP2953591B2 (ja) | 1999-09-27 |
Family
ID=26308531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9528248A Expired - Fee Related JP2953591B2 (ja) | 1996-01-26 | 1996-12-04 | サーバ・コンピュータのプロセッサ全体にわたる負荷平衡化 |
Country Status (14)
Country | Link |
---|---|
US (1) | US5867706A (ja) |
EP (1) | EP0880739B1 (ja) |
JP (1) | JP2953591B2 (ja) |
CN (1) | CN1091277C (ja) |
BR (1) | BR9612485A (ja) |
CA (1) | CA2231810C (ja) |
CZ (1) | CZ289563B6 (ja) |
DE (1) | DE69602461T2 (ja) |
ES (1) | ES2131415T3 (ja) |
GB (1) | GB2309558A (ja) |
HU (1) | HU225072B1 (ja) |
PL (1) | PL183401B1 (ja) |
RU (1) | RU2156546C2 (ja) |
WO (1) | WO1997029423A1 (ja) |
Families Citing this family (168)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6185619B1 (en) * | 1996-12-09 | 2001-02-06 | Genuity Inc. | Method and apparatus for balancing the process load on network servers according to network and serve based policies |
JPH1074159A (ja) * | 1996-08-30 | 1998-03-17 | Hitachi Ltd | 計算機システムの制御方法 |
GB2320112B (en) * | 1996-12-07 | 2001-07-25 | Ibm | High-availability computer server system |
US5948066A (en) * | 1997-03-13 | 1999-09-07 | Motorola, Inc. | System and method for delivery of information over narrow-band communications links |
CA2206737C (fr) * | 1997-03-27 | 2000-12-05 | Bull S.A. | Architecture en reseau de machine informatique |
US7058720B1 (en) * | 1997-06-30 | 2006-06-06 | Microsoft Corporation | Geographical client distribution methods, systems and computer program products |
US6128642A (en) * | 1997-07-22 | 2000-10-03 | At&T Corporation | Load balancing based on queue length, in a network of processor stations |
US6128279A (en) * | 1997-10-06 | 2000-10-03 | Web Balance, Inc. | System for balancing loads among network servers |
US6230196B1 (en) * | 1997-11-12 | 2001-05-08 | International Business Machines Corporation | Generation of smart HTML anchors in dynamic web page creation |
US6434687B1 (en) * | 1997-12-17 | 2002-08-13 | Src Computers, Inc. | System and method for accelerating web site access and processing utilizing a computer system incorporating reconfigurable processors operating under a single operating system image |
US6055538A (en) * | 1997-12-22 | 2000-04-25 | Hewlett Packard Company | Methods and system for using web browser to search large collections of documents |
US6178160B1 (en) * | 1997-12-23 | 2001-01-23 | Cisco Technology, Inc. | Load balancing of client connections across a network using server based algorithms |
US6185598B1 (en) * | 1998-02-10 | 2001-02-06 | Digital Island, Inc. | Optimized network resource location |
US7949779B2 (en) | 1998-02-10 | 2011-05-24 | Level 3 Communications, Llc | Controlling subscriber information rates in a content delivery network |
US7054935B2 (en) * | 1998-02-10 | 2006-05-30 | Savvis Communications Corporation | Internet content delivery network |
US6330617B1 (en) * | 1998-02-27 | 2001-12-11 | Sabre Inc | System, method and computer program product for data conversion in a computer network |
FI112897B (fi) | 1998-03-03 | 2004-01-30 | Nokia Corp | Menetelmä tiedonsiirtoverkossa ja tiedonsiirtolaite |
US6205474B1 (en) * | 1998-04-14 | 2001-03-20 | Compaq Computer Corporation | Access mechanism for parallel status update for multiple servers |
US6003082A (en) * | 1998-04-22 | 1999-12-14 | International Business Machines Corporation | Selective internet request caching and execution system |
US6115752A (en) * | 1998-05-21 | 2000-09-05 | Sun Microsystems, Inc. | System and method for server selection for mirrored sites |
US7035943B2 (en) | 1998-05-29 | 2006-04-25 | Yahoo! Inc. | Web server content replication |
US6976093B2 (en) | 1998-05-29 | 2005-12-13 | Yahoo! Inc. | Web server content replication |
US7143193B1 (en) * | 1998-05-29 | 2006-11-28 | Yahoo! Inc. | Content collection |
US7581006B1 (en) * | 1998-05-29 | 2009-08-25 | Yahoo! Inc. | Web service |
US6279001B1 (en) | 1998-05-29 | 2001-08-21 | Webspective Software, Inc. | Web service |
US6314463B1 (en) | 1998-05-29 | 2001-11-06 | Webspective Software, Inc. | Method and system for measuring queue length and delay |
US6317786B1 (en) * | 1998-05-29 | 2001-11-13 | Webspective Software, Inc. | Web service |
US6108703A (en) * | 1998-07-14 | 2000-08-22 | Massachusetts Institute Of Technology | Global hosting system |
US6493749B2 (en) * | 1998-08-17 | 2002-12-10 | International Business Machines Corporation | System and method for an administration server |
FR2785121B1 (fr) * | 1998-10-21 | 2001-03-30 | Cit Alcatel | Procede pour changer periodiquement une information presentee par un terminal de communication a partir de donnees transmises par un serveur |
US6691165B1 (en) * | 1998-11-10 | 2004-02-10 | Rainfinity, Inc. | Distributed server cluster for controlling network traffic |
JP3550503B2 (ja) * | 1998-11-10 | 2004-08-04 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 通信を可能とするための方法及び通信システム |
US6654814B1 (en) | 1999-01-26 | 2003-11-25 | International Business Machines Corporation | Systems, methods and computer program products for dynamic placement of web content tailoring |
GB2346302B (en) * | 1999-01-29 | 2003-06-18 | Ibm | Pre-emptive network load balancing by predictive configuration |
US7080158B1 (en) | 1999-02-09 | 2006-07-18 | Nortel Networks Limited | Network caching using resource redirection |
US6801949B1 (en) | 1999-04-12 | 2004-10-05 | Rainfinity, Inc. | Distributed server cluster with graphical user interface |
EP1049307A1 (en) * | 1999-04-29 | 2000-11-02 | International Business Machines Corporation | Method and system for dispatching client sessions within a cluster of servers connected to the World Wide Web |
US6275470B1 (en) | 1999-06-18 | 2001-08-14 | Digital Island, Inc. | On-demand overlay routing for computer-based communication networks |
US7996670B1 (en) * | 1999-07-08 | 2011-08-09 | Broadcom Corporation | Classification engine in a cryptography acceleration chip |
US7346695B1 (en) * | 2002-10-28 | 2008-03-18 | F5 Networks, Inc. | System and method for performing application level persistence |
US6523023B1 (en) | 1999-09-22 | 2003-02-18 | Networks Associates Technology, Inc. | Method system and computer program product for distributed internet information search and retrieval |
US6684241B1 (en) | 1999-09-29 | 2004-01-27 | Nortel Networks Limited | Apparatus and method of configuring a network device |
US7702732B1 (en) | 1999-09-29 | 2010-04-20 | Nortel Networks Limited | Methods for auto-configuring a router on an IP subnet |
EP1228430A4 (en) * | 1999-10-27 | 2004-05-06 | Mci Worldcom Inc | WEB MIRRORING SYSTEM AND METHOD |
US8543901B1 (en) | 1999-11-01 | 2013-09-24 | Level 3 Communications, Llc | Verification of content stored in a network |
US6748414B1 (en) * | 1999-11-15 | 2004-06-08 | International Business Machines Corporation | Method and apparatus for the load balancing of non-identical servers in a network environment |
US6748413B1 (en) * | 1999-11-15 | 2004-06-08 | International Business Machines Corporation | Method and apparatus for load balancing of parallel servers in a network environment |
US7363361B2 (en) * | 2000-08-18 | 2008-04-22 | Akamai Technologies, Inc. | Secure content delivery system |
US6760745B1 (en) * | 2000-03-30 | 2004-07-06 | Aspect Communications Corporation | Web server replicated mini-filter |
US20050021862A1 (en) * | 2000-03-31 | 2005-01-27 | Dickens Coal Llc | Automatic selection of content-delivery provider using link mapping database |
US8065399B2 (en) | 2000-04-17 | 2011-11-22 | Circadence Corporation | Automated network infrastructure test and diagnostic system and method therefor |
US8898340B2 (en) | 2000-04-17 | 2014-11-25 | Circadence Corporation | Dynamic network link acceleration for network including wireless communication devices |
US20110128972A1 (en) | 2000-04-17 | 2011-06-02 | Randy Thornton | Peer to peer dynamic network link acceleration |
US8996705B2 (en) | 2000-04-17 | 2015-03-31 | Circadence Corporation | Optimization of enhanced network links |
US20020002611A1 (en) | 2000-04-17 | 2002-01-03 | Mark Vange | System and method for shifting functionality between multiple web servers |
US8195823B2 (en) | 2000-04-17 | 2012-06-05 | Circadence Corporation | Dynamic network link acceleration |
US8510468B2 (en) | 2000-04-17 | 2013-08-13 | Ciradence Corporation | Route aware network link acceleration |
US7143128B1 (en) * | 2000-06-08 | 2006-11-28 | International Business Machines Corporation | Interactive data processor controlled display interface for tracking of allocated messages in a dynamic workload balancing communication system |
US7281032B2 (en) * | 2000-06-30 | 2007-10-09 | Hitachi, Ltd. | File sharing system with data mirroring by storage systems |
US7188157B1 (en) | 2000-06-30 | 2007-03-06 | Hitachi, Ltd. | Continuous update of data in a data server system |
US7222150B1 (en) * | 2000-08-15 | 2007-05-22 | Ikadega, Inc. | Network server card and method for handling requests received via a network interface |
US20020165947A1 (en) * | 2000-09-25 | 2002-11-07 | Crossbeam Systems, Inc. | Network application apparatus |
US7657629B1 (en) * | 2000-09-26 | 2010-02-02 | Foundry Networks, Inc. | Global server load balancing |
US9130954B2 (en) | 2000-09-26 | 2015-09-08 | Brocade Communications Systems, Inc. | Distributed health check for global server load balancing |
US7454500B1 (en) * | 2000-09-26 | 2008-11-18 | Foundry Networks, Inc. | Global server load balancing |
US7606898B1 (en) * | 2000-10-24 | 2009-10-20 | Microsoft Corporation | System and method for distributed management of shared computers |
US7113900B1 (en) | 2000-10-24 | 2006-09-26 | Microsoft Corporation | System and method for logical modeling of distributed computer systems |
US6907395B1 (en) * | 2000-10-24 | 2005-06-14 | Microsoft Corporation | System and method for designing a logical model of a distributed computer system and deploying physical resources according to the logical model |
US7103651B2 (en) * | 2000-11-30 | 2006-09-05 | Nortel Networks Limited | Method and apparatus for discovering client proximity network sites |
US20030227644A1 (en) * | 2001-01-11 | 2003-12-11 | Sharp Laboratories Of America, Inc. | Methods and systems for driver independent customized printing |
US8411298B2 (en) | 2001-01-11 | 2013-04-02 | Sharp Laboratories Of America, Inc. | Methods and systems for printing device load-balancing |
US7480068B2 (en) * | 2001-01-11 | 2009-01-20 | Sharp Laboratories Of America, Inc. | Methods and systems for page-independent spool file sheet assembly |
US20020089687A1 (en) * | 2001-01-11 | 2002-07-11 | Ferlitsch Andrew Rodney | Methods and systems for print-processor-based printer status detection and print task distribution |
US8456665B2 (en) | 2001-01-11 | 2013-06-04 | Sharp Laboratories Of America, Inc. | Methods and systems for printing error recovery |
US7548331B2 (en) * | 2001-01-11 | 2009-06-16 | Sharp Laboratories Of America, Inc. | Methods and systems for print system component-based remote printing |
US20020124170A1 (en) * | 2001-03-02 | 2002-09-05 | Johnson William S. | Secure content system and method |
US20020143872A1 (en) * | 2001-03-27 | 2002-10-03 | Jeffrey Weiss | Multiple service management platform utilizing common directory |
US7751314B2 (en) * | 2001-03-28 | 2010-07-06 | Telefonaktiebolaget Lm Ericsson (Publ) | Load distribution between nodes in communication networks |
GB0119145D0 (en) * | 2001-08-06 | 2001-09-26 | Nokia Corp | Controlling processing networks |
US7290059B2 (en) * | 2001-08-13 | 2007-10-30 | Intel Corporation | Apparatus and method for scalable server load balancing |
US7860964B2 (en) * | 2001-09-28 | 2010-12-28 | Level 3 Communications, Llc | Policy-based content delivery network selection |
EP2403219B1 (en) | 2001-09-28 | 2014-10-22 | Level 3 CDN International, Inc. | Method for name to address resolution |
US7373644B2 (en) | 2001-10-02 | 2008-05-13 | Level 3 Communications, Llc | Automated server replication |
US20030079027A1 (en) | 2001-10-18 | 2003-04-24 | Michael Slocombe | Content request routing and load balancing for content distribution networks |
US20080279222A1 (en) * | 2001-10-18 | 2008-11-13 | Level 3 Communications Llc | Distribution of traffic across a computer network |
US7711819B2 (en) | 2001-10-31 | 2010-05-04 | Fujitsu Limited | Load balancer |
US7444639B2 (en) * | 2001-12-20 | 2008-10-28 | Texas Insturments Incorporated | Load balanced interrupt handling in an embedded symmetric multiprocessor system |
JP3969089B2 (ja) * | 2001-12-25 | 2007-08-29 | 株式会社日立製作所 | 階層構成サーバシステム |
US9167036B2 (en) | 2002-02-14 | 2015-10-20 | Level 3 Communications, Llc | Managed object replication and delivery |
US20030163586A1 (en) * | 2002-02-27 | 2003-08-28 | Steve Schnetzler | Server persistence using a URL identifier |
US9137324B2 (en) * | 2002-04-10 | 2015-09-15 | International Business Machines Corporation | Capacity on-demand in distributed computing environments |
US20040059777A1 (en) * | 2002-05-31 | 2004-03-25 | Palazzo Craig M. | System and method for distributed component object model load balancing |
JP2004005249A (ja) * | 2002-05-31 | 2004-01-08 | Fujitsu Ltd | 負荷分散型マルチプロセッサに対する信号振分装置 |
US20030236813A1 (en) * | 2002-06-24 | 2003-12-25 | Abjanic John B. | Method and apparatus for off-load processing of a message stream |
CN100424673C (zh) * | 2002-07-02 | 2008-10-08 | 英业达股份有限公司 | 最佳化信息处理互助式计算机网络系统 |
US7086061B1 (en) | 2002-08-01 | 2006-08-01 | Foundry Networks, Inc. | Statistical tracking of global server load balancing for selecting the best network address from ordered list of network addresses based on a set of performance metrics |
US7574508B1 (en) | 2002-08-07 | 2009-08-11 | Foundry Networks, Inc. | Canonical name (CNAME) handling for global server load balancing |
US8015259B2 (en) * | 2002-09-10 | 2011-09-06 | Alan Earl Swahn | Multi-window internet search with webpage preload |
US7334032B2 (en) * | 2002-12-04 | 2008-02-19 | International Business Machines Corporation | System for allocating storage performance resource |
US7568110B2 (en) * | 2002-12-18 | 2009-07-28 | Broadcom Corporation | Cryptography accelerator interface decoupling from cryptography processing cores |
US20040123120A1 (en) * | 2002-12-18 | 2004-06-24 | Broadcom Corporation | Cryptography accelerator input interface data handling |
US20040123123A1 (en) * | 2002-12-18 | 2004-06-24 | Buer Mark L. | Methods and apparatus for accessing security association information in a cryptography accelerator |
US7434043B2 (en) | 2002-12-18 | 2008-10-07 | Broadcom Corporation | Cryptography accelerator data routing unit |
US7191341B2 (en) * | 2002-12-18 | 2007-03-13 | Broadcom Corporation | Methods and apparatus for ordering data in a cryptography accelerator |
US20040215703A1 (en) * | 2003-02-18 | 2004-10-28 | Xiping Song | System supporting concurrent operation of multiple executable application operation sessions |
US7072807B2 (en) * | 2003-03-06 | 2006-07-04 | Microsoft Corporation | Architecture for distributed computing system and automated design, deployment, and management of distributed applications |
US20040210623A1 (en) * | 2003-03-06 | 2004-10-21 | Aamer Hydrie | Virtual network topology generation |
US8122106B2 (en) * | 2003-03-06 | 2012-02-21 | Microsoft Corporation | Integrating design, deployment, and management phases for systems |
US7890543B2 (en) | 2003-03-06 | 2011-02-15 | Microsoft Corporation | Architecture for distributed computing system and automated design, deployment, and management of distributed applications |
US7689676B2 (en) * | 2003-03-06 | 2010-03-30 | Microsoft Corporation | Model-based policy application |
US7543061B2 (en) * | 2003-06-26 | 2009-06-02 | Microsoft Corporation | Method and system for distributing load by redirecting traffic |
US7613822B2 (en) * | 2003-06-30 | 2009-11-03 | Microsoft Corporation | Network load balancing with session information |
US7567504B2 (en) * | 2003-06-30 | 2009-07-28 | Microsoft Corporation | Network load balancing with traffic routing |
US7606929B2 (en) * | 2003-06-30 | 2009-10-20 | Microsoft Corporation | Network load balancing with connection manipulation |
US7590736B2 (en) * | 2003-06-30 | 2009-09-15 | Microsoft Corporation | Flexible network load balancing |
US7636917B2 (en) * | 2003-06-30 | 2009-12-22 | Microsoft Corporation | Network load balancing with host status information |
US7331038B1 (en) * | 2003-07-02 | 2008-02-12 | Amazon.Com, Inc. | Predictive prefetching to improve parallelization of document generation subtasks |
US9584360B2 (en) * | 2003-09-29 | 2017-02-28 | Foundry Networks, Llc | Global server load balancing support for private VIP addresses |
WO2005043279A2 (en) * | 2003-10-31 | 2005-05-12 | Disksites Research And Development Ltd. | Device, system and method for storage and access of computer files |
US7769802B2 (en) * | 2003-12-04 | 2010-08-03 | Microsoft Corporation | Systems and methods that employ correlated synchronous-on-asynchronous processing |
US7778422B2 (en) | 2004-02-27 | 2010-08-17 | Microsoft Corporation | Security associations for devices |
US7574708B2 (en) * | 2004-03-04 | 2009-08-11 | International Business Machines Corporation | Mechanism for enabling the distribution of operating system resources in a multi-node computer system |
WO2005107168A1 (fr) * | 2004-04-28 | 2005-11-10 | Leonid Aleksandrovich Pogyba | Procede d'organisation d'un service de radiodiffusion faisant appel a la transmission numerique de flux audio sur l'internet, et dispositifs permettant sa mise en oeuvre |
US20050246529A1 (en) | 2004-04-30 | 2005-11-03 | Microsoft Corporation | Isolated persistent identity storage for authentication of computing devies |
US7584301B1 (en) | 2004-05-06 | 2009-09-01 | Foundry Networks, Inc. | Host-level policies for global server load balancing |
US7496651B1 (en) | 2004-05-06 | 2009-02-24 | Foundry Networks, Inc. | Configurable geographic prefixes for global server load balancing |
US9626437B2 (en) * | 2004-06-10 | 2017-04-18 | International Business Machines Corporation | Search scheduling and delivery tool for scheduling a search using a search framework profile |
US7423977B1 (en) | 2004-08-23 | 2008-09-09 | Foundry Networks Inc. | Smoothing algorithm for round trip time (RTT) measurements |
DE112005001995B4 (de) * | 2004-09-13 | 2011-12-08 | Fujitsu Siemens Computers, Inc. | Computeranordnung und Verfahren zum Anbieten von Diensten für Benutzer über ein Netzwerk |
US7542981B2 (en) * | 2004-10-29 | 2009-06-02 | Massachusetts Institute Of Technology | Methods and apparatus for parallel execution of a process |
CN100461124C (zh) * | 2004-11-26 | 2009-02-11 | 富士通株式会社 | 计算机系统和信息处理方法 |
US20060123423A1 (en) * | 2004-12-07 | 2006-06-08 | International Business Machines Corporation | Borrowing threads as a form of load balancing in a multiprocessor data processing system |
US20060136717A1 (en) | 2004-12-20 | 2006-06-22 | Mark Buer | System and method for authentication via a proximate device |
US8295484B2 (en) | 2004-12-21 | 2012-10-23 | Broadcom Corporation | System and method for securing data from a remote input device |
DE102005010690B4 (de) * | 2005-03-09 | 2007-04-12 | Knorr-Bremse Systeme für Schienenfahrzeuge GmbH | Öleingespritzter Verdichter mit Temperaturschalter |
US7797147B2 (en) | 2005-04-15 | 2010-09-14 | Microsoft Corporation | Model-based system monitoring |
US8489728B2 (en) | 2005-04-15 | 2013-07-16 | Microsoft Corporation | Model-based system monitoring |
US7802144B2 (en) | 2005-04-15 | 2010-09-21 | Microsoft Corporation | Model-based system monitoring |
CN100371895C (zh) * | 2005-05-30 | 2008-02-27 | 英业达股份有限公司 | 均衡负载的文件预装系统及方法 |
US8549513B2 (en) | 2005-06-29 | 2013-10-01 | Microsoft Corporation | Model-based virtual system provisioning |
US20070016393A1 (en) * | 2005-06-29 | 2007-01-18 | Microsoft Corporation | Model-based propagation of attributes |
US8230419B2 (en) * | 2005-07-26 | 2012-07-24 | International Business Machines Corporation | Method, system and program product for capturing central processing unit (CPU) utilization for a process on a virtual machine |
US7941309B2 (en) | 2005-11-02 | 2011-05-10 | Microsoft Corporation | Modeling IT operations/policies |
CN100562850C (zh) * | 2005-11-30 | 2009-11-25 | 迈普通信技术股份有限公司 | 多处理器负载分配调整方法 |
US7716100B2 (en) * | 2005-12-02 | 2010-05-11 | Kuberre Systems, Inc. | Methods and systems for computing platform |
CN100389392C (zh) * | 2006-05-29 | 2008-05-21 | 杭州华三通信技术有限公司 | 一种集群系统中实现负载均衡的方法、系统和存储控制器 |
US20080288622A1 (en) * | 2007-05-18 | 2008-11-20 | Microsoft Corporation | Managing Server Farms |
US7930573B2 (en) * | 2007-09-18 | 2011-04-19 | International Business Machines Corporation | Workload apportionment according to mean and variance |
US20090265208A1 (en) * | 2007-12-10 | 2009-10-22 | Pratt Stephen M | Method for outsourcing technology based services |
US9723070B2 (en) * | 2008-01-31 | 2017-08-01 | International Business Machines Corporation | System to improve cluster machine processing and associated methods |
US8667175B2 (en) * | 2008-03-13 | 2014-03-04 | Cisco Technology, Inc. | Server selection for routing content to a client using application layer redirection |
US10924573B2 (en) | 2008-04-04 | 2021-02-16 | Level 3 Communications, Llc | Handling long-tail content in a content delivery network (CDN) |
CN102047244B (zh) | 2008-04-04 | 2013-02-27 | 第三雷沃通讯有限责任公司 | 在内容分发网络(cdn)中处理长尾内容 |
US9762692B2 (en) | 2008-04-04 | 2017-09-12 | Level 3 Communications, Llc | Handling long-tail content in a content delivery network (CDN) |
CN101739214B (zh) * | 2008-11-13 | 2011-12-07 | 英业达股份有限公司 | 一种共享储存设备下自平衡数据访问压力的方法 |
US8229890B2 (en) * | 2008-12-15 | 2012-07-24 | International Business Machines Corporation | Opening document stored at multiple database replicas |
US8868782B2 (en) | 2009-03-10 | 2014-10-21 | Telefonaktiebolaget L M Ericsson (Publ) | System and methods for a managed application server restart |
US8166200B2 (en) * | 2009-03-30 | 2012-04-24 | Microsoft Corporation | Smart routing |
US9411656B2 (en) * | 2009-06-22 | 2016-08-09 | Brocade Communications Systems, Inc. | Load balance connections per server in multi-core/multi-blade system |
US8817614B1 (en) * | 2010-09-16 | 2014-08-26 | Vasona Networks Inc. | Policy enforcer having load balancing capabilities |
US8549148B2 (en) | 2010-10-15 | 2013-10-01 | Brocade Communications Systems, Inc. | Domain name system security extensions (DNSSEC) for global server load balancing |
WO2012097030A1 (en) * | 2011-01-12 | 2012-07-19 | Level 3 Communications, Llc | Customized domain names in a content delivery network (cdn) |
US9448849B2 (en) | 2011-08-31 | 2016-09-20 | Oracle International Corporation | Preventing oscillatory load behavior in a multi-node distributed system |
US10228976B2 (en) * | 2012-05-01 | 2019-03-12 | Keysight Technologies Singapore (Holdings) Pte. Ltd. | Methods, systems, and computer readable media for balancing incoming connections across multiple cores |
WO2014003611A1 (en) * | 2012-06-27 | 2014-01-03 | Telefonaktiebolaget L M Ericsson (Publ) | Processor work distribution |
US10235069B2 (en) * | 2016-12-22 | 2019-03-19 | Western Digital Technologies, Inc. | Load balancing by dynamically transferring memory range assignments |
US11171720B1 (en) * | 2019-06-28 | 2021-11-09 | Amazon Technologies, Inc. | Content and compute delivery platform using satellites |
US11201939B1 (en) * | 2019-06-28 | 2021-12-14 | Amazon Technologies, Inc. | Content and compute delivery platform using satellites |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BE485774A (ja) * | 1947-11-29 | 1900-01-01 | ||
US4403286A (en) * | 1981-03-06 | 1983-09-06 | International Business Machines Corporation | Balancing data-processing work loads |
DE3741953A1 (de) * | 1986-12-19 | 1988-06-30 | Nippon Telegraph & Telephone | Multiprozessorsystem und verfahren zur arbeitslastverteilung bei einem solchen |
GB2281793A (en) * | 1993-09-11 | 1995-03-15 | Ibm | A data processing system for providing user load levelling in a network |
US5774668A (en) * | 1995-06-07 | 1998-06-30 | Microsoft Corporation | System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing |
-
1996
- 1996-01-26 GB GB9601559A patent/GB2309558A/en not_active Withdrawn
- 1996-12-04 DE DE69602461T patent/DE69602461T2/de not_active Expired - Lifetime
- 1996-12-04 CA CA002231810A patent/CA2231810C/en not_active Expired - Lifetime
- 1996-12-04 WO PCT/GB1996/002983 patent/WO1997029423A1/en active IP Right Grant
- 1996-12-04 CZ CZ19982324A patent/CZ289563B6/cs not_active IP Right Cessation
- 1996-12-04 BR BR9612485A patent/BR9612485A/pt not_active IP Right Cessation
- 1996-12-04 ES ES96941114T patent/ES2131415T3/es not_active Expired - Lifetime
- 1996-12-04 HU HU9903820A patent/HU225072B1/hu unknown
- 1996-12-04 JP JP9528248A patent/JP2953591B2/ja not_active Expired - Fee Related
- 1996-12-04 RU RU98116059/09A patent/RU2156546C2/ru not_active IP Right Cessation
- 1996-12-04 PL PL96327918A patent/PL183401B1/pl not_active IP Right Cessation
- 1996-12-04 CN CN96198604A patent/CN1091277C/zh not_active Expired - Lifetime
- 1996-12-04 EP EP96941114A patent/EP0880739B1/en not_active Expired - Lifetime
- 1996-12-19 US US08/770,142 patent/US5867706A/en not_active Expired - Lifetime
Non-Patent Citations (1)
Title |
---|
インターフェース 1995年9月号(CQ出版社),p.130〜146 |
Also Published As
Publication number | Publication date |
---|---|
GB2309558A (en) | 1997-07-30 |
HUP9903820A3 (en) | 2001-05-28 |
BR9612485A (pt) | 1999-07-13 |
EP0880739B1 (en) | 1999-05-12 |
CA2231810A1 (en) | 1997-08-14 |
DE69602461T2 (de) | 1999-12-16 |
US5867706A (en) | 1999-02-02 |
PL183401B1 (pl) | 2002-06-28 |
DE69602461D1 (de) | 1999-06-17 |
RU2156546C2 (ru) | 2000-09-20 |
WO1997029423A1 (en) | 1997-08-14 |
PL327918A1 (en) | 1999-01-04 |
CA2231810C (en) | 2004-05-25 |
ES2131415T3 (es) | 1999-07-16 |
CN1091277C (zh) | 2002-09-18 |
HU225072B1 (en) | 2006-06-28 |
EP0880739A1 (en) | 1998-12-02 |
CZ232498A3 (cs) | 1998-12-16 |
JPH11503551A (ja) | 1999-03-26 |
CN1202971A (zh) | 1998-12-23 |
GB9601559D0 (en) | 1996-03-27 |
HUP9903820A2 (hu) | 2000-03-28 |
CZ289563B6 (cs) | 2002-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2953591B2 (ja) | サーバ・コンピュータのプロセッサ全体にわたる負荷平衡化 | |
CA2267953C (en) | Web serving system with primary and secondary servers | |
US6253234B1 (en) | Shared web page caching at browsers for an intranet | |
US7426546B2 (en) | Method for selecting an edge server computer | |
US6038603A (en) | Processing customized uniform resource locators | |
US6366947B1 (en) | System and method for accelerating network interaction | |
KR100300494B1 (ko) | 서버에서의 데이터 프리캐싱 방법 및 장치 | |
JP5920903B2 (ja) | 遠隔ブラウジングセッション管理 | |
US6023722A (en) | High-availability WWW computer server system with pull-based load balancing using a messaging and queuing unit in front of back-end servers | |
KR100283453B1 (ko) | 프록시 하이어라키에서의 스테이징/버퍼링에 의한동적 푸시 여과 방법 | |
US7167142B2 (en) | Multi-user display system | |
WO1998004985A9 (en) | Web serving system with primary and secondary servers | |
JP2000187609A (ja) | 要求されたオブジェクトを検索する方法及び記録デバイス | |
JPH10162030A (ja) | ハイパ−リンク情報をレンダするための方法及び装置 | |
KR100826835B1 (ko) | 최적화된 웹 접근을 위한 사용자 지정 병렬 데이터 페치 | |
CN1444747B (zh) | 内容管理器 | |
KR100308705B1 (ko) | 프로세서간부하밸런싱을가능하게하는서버컴퓨터및서버컴퓨터동작방법 | |
WO2002061586A2 (en) | Smart-caching system and method | |
JP2002236625A (ja) | サーバの情報提供方法およびサーバ | |
EP1300774A1 (en) | Rated information service | |
JPH11353248A (ja) | ファイル送信方法及びシステム及びファイル送信プログラムを格納した記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070716 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080716 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080716 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090716 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100716 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110716 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110716 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120716 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130716 Year of fee payment: 14 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |