JP2019518258A - 時間ベース調節可能負荷バランシング - Google Patents

時間ベース調節可能負荷バランシング Download PDF

Info

Publication number
JP2019518258A
JP2019518258A JP2018546688A JP2018546688A JP2019518258A JP 2019518258 A JP2019518258 A JP 2019518258A JP 2018546688 A JP2018546688 A JP 2018546688A JP 2018546688 A JP2018546688 A JP 2018546688A JP 2019518258 A JP2019518258 A JP 2019518258A
Authority
JP
Japan
Prior art keywords
timed task
load balancing
period
execution period
strategy
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
JP2018546688A
Other languages
English (en)
Inventor
ジュー シアオピン
ジュー シアオピン
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of JP2019518258A publication Critical patent/JP2019518258A/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation 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/505Allocation 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation 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/5044Allocation 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 hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • 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/1025Dynamic adaptation of the criteria on which the server selection is based

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (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)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

実行期間、及び該実行期間に実行される負荷バランシング方法を含む少なくとも1つの時限タスクを取得して記録することによって、複数の期間の定義に基づいて種々の負荷バランシング方法の作成を実施し、かつ実行期間において対応する負荷バランシング方法を実行する、時間ベース調節可能負荷バランシング方法及びデバイスが提供される。さらに、現在の時刻が1つの時限タスクの実行期間に入っているかどうかが判定され、はいの場合に、時限タスクに対応する負荷バランシング方法が取得され、複数のサーバ間での負荷バランシングは、時限タスクに対応する実行期間が終了するまで、対応する負荷バランシング方法に基づいて処理されることによって、ユーザの柔軟なコンフィギュレーションを実装する。ユーザ要求を満たす負荷バランシング方法は、複雑なユーザシナリオに柔軟に適用されることで、負荷バランシングの利用可能性を向上させる。

Description

関連特許出願の相互参照
本出願は、開示全体が参照により本明細書に組み込まれる、「TIME−BASED ADJUSTABLE LOAD BALANCING METHOD AND DEVICE」という名称の、2016年3月29日に出願された中国特許出願第201610188481.2号の優先権を主張するものである。
本開示は、コンピュータの分野に関し、とりわけ、時間ベース調節可能負荷バランシングの技術に関する。
現在、取引量が増加するにつれて、閲覧者数及びデータトラフィックも急速に増加しており、単一のサーバではその処理能力のボトルネックにより、要求を満たすことができない。従って、複数のサーバによって構成されるサーバクラスタが使用され、負荷バランシング技術を導入して、リソース及び負荷を効率的にスケジューリングすることで大量のデータトラフィックをクラスタ内の複数のサーバに分配する。さらに、ユーザが使用を選択するための対応する負荷バランシングストラテジが作成される。
ユーザには、負荷バランシングストラテジを使用する時に、いくつかの要件がある場合がある。例えば、ユーザのトラフィックは、労働時間中トラフィックが大きくなるが、夜にはトラフィックは小さくなるような、明確な時間特徴を有する。固定帯域幅に応じて料金が支払われる場合に、トラフィックが全体的に夜には使用されないことがあり、トラフィックに応じて料金が支払われる場合に、大量のトラフィックの場合には費用は非常に高くなることがある。別の例には、ユーザが、帯域幅が改善を必要とすることを要求する期間に大きな格上げを望む場合が含まれる。しかしながら、この期間後、帯域幅を元に戻す必要がある。複数のユーザがある期間の大きな格上げを要求する場合に、負荷バランシングの容量がその要求をサポートできるかどうかを、前もって計算する必要がある。ユーザによって現在使用されている負荷バランシングストラテジのコンフィギュレーションは、柔軟性が十分ではなく、ユーザによって使用されるトラフィックの条件を予め決めることができない。
この「発明の概要」は、「詳細な説明」において以下のさらに説明される選抜した概念を簡略化された形式で紹介するために提供される。この「発明の概念」は、特許請求される主題の重要な特徴または本質的な特徴全てを特定することは意図されてもいないし、特許請求される主題の範囲を判断する際に役立つものとしてのみ使用されることも意図されていない。例えば、「技法(複数可)または技術的な解決策(複数可)」という用語は、前文脈によって、かつ本開示全体を通して認められるような装置(複数可)、システム(複数可)、方法(複数可)、及び/またはコンピュータ可読命令を指す場合がある。
本開示の目的は、ユーザの柔軟なコンフィギュレーションを実施し、かつユーザによって使用されるトラフィックを予断するためにさまざまな期間を定めることによって種々の負荷バランシング方法がもたらされるような、時間ベース調節可能負荷バランシング方法及びデバイスを提供することである。
本開示の一態様によると、
少なくとも1つの時限タスクであって、実行期間、及び該実行期間に実行される負荷バランシング方法を含む時限タスクを取得して記録することと、
現在の時刻が1つの時限タスクの実行期間に入っているかどうかを判定し、はいの場合に、時限タスクに対応する負荷バランシング方法を取得し、時限タスクに対応する実行期間が終了するまで、対応する負荷バランシング方法に基づいて複数のサーバ間で負荷バランシングを処理することと、を含む、時間ベース調節可能負荷バランシング方法が提供される。
さらに、少なくとも1つの時限タスクを取得しかつ記録することは、
ユーザリクエストを取得することであって、該ユーザリクエストは、リクエスト期間、及びリクエスト期間に実行される負荷バランシング方法を含む、取得することと、ユーザリクエストに基づいて少なくとも1つの時限タスクを生成することと、リクエスト期間に基づいて時限タスクの実行期間を判断することと、ユーザリクエストに基づいて、実行期間に実行される負荷バランシング方法を決定することと、を含む。
例えば、ユーザリクエストに基づいて、実行期間に実行される負荷バランシング方法を決定することは、
ユーザリクエストに基づいて負荷バランシングの性能パラメータ情報を取得することと、負荷バランシングの性能パラメータ情報に基づいて、実行期間に実行される負荷バランシング方法を決定することと、を含む。
例えば、性能パラメータ情報は、以下のうちの少なくとも1つ、すなわち、帯域幅量、作成可能な接続の数、及び、1秒当たりの新たな作成可能な接続の数のうちの少なくとも1つを含む。
例えば、ユーザリクエストに基づいて、実行期間に実行される負荷バランシング方法を決定することは、
取得された負荷バランシングの性能パラメータ情報が負荷バランシングの既存のサービス能力の性能パラメータ情報を超える場合に、時限タスクの生成を停止することと、アラーム通知情報を返すことと、を含む。
例えば、時限タスクを取得することは、
リクエスト期間と実行期間とが重複期間を有する場合に、重複期間に基づいて時限タスクの実行期間を更新することと、更新された実行期間に基づいて時限タスクを更新することと、をさらに含む。
例えば、時間ベース調節可能負荷バランシング方法は、時限タスクに対応する実行期間が終了すると、負荷バランシング方法を削除し、次の実行期間に対応する次の負荷バランシング方法を取得することをさらに含む。
例えば、時限タスクは、以下のいずれか、すなわち、
周期的かつ循環的に実行される第1の時限タスク、
一度実行される第2の時限タスク、及び、
一度実行される第1の時限タスクと周期的かつ循環的に実行される第2の時限タスクとを連係させる第3の時限タスクのいずれかを含む。
本開示の別の態様によると、
少なくとも1つの時限タスクを取得して記録する取得装置であって、時限タスクは、実行期間、及び、実行期間に実行される負荷バランシング方法を含む、取得装置と、
現在の時刻が1つの時限タスクの実行期間に入っているかどうかを判定し、はいの場合に、時限タスクに対応する負荷バランシング方法を取得し、時限タスクに対応する実行期間が終了するまで、対応する負荷バランシング方法に基づいて複数のサーバ間で負荷バランシングを処理する実行装置と、を含む、時間ベース調節可能負荷バランシングデバイスが提供される。
さらに、取得装置は、
ユーザリクエストを取得するリクエスト取得ユニットであって、ユーザリクエストは、リクエスト期間、及びリクエスト期間に実行される負荷バランシング方法を含む、リクエスト取得ユニットと、
ユーザリクエストに基づいて少なくとも1つの時限タスクを生成し、リクエスト期間に基づいて時限タスクの実行期間を決定する生成ユニットと、
ユーザリクエストに基づいて、実行期間に実行される負荷バランシング方法を決定する決定ユニットと、を含む。
例えば、決定ユニットはさらに、
ユーザリクエストに基づいて負荷バランシングの性能パラメータ情報を取得し、負荷バランシングの性能パラメータ情報に基づいて、実行期間に実行される負荷バランシング方法を決定する。
例えば、性能パラメータ情報は、以下のうちの少なくとも1つ、すなわち、
帯域幅量、
作成可能な接続の数、及び、
1秒当たりの新たな作成可能な接続の数のうちの少なくとも1つを含む。
例えば、決定ユニットはさらに、
取得された負荷バランシングの性能パラメータ情報が負荷バランシングの既存のサービス能力の性能パラメータ情報を超える場合に、時限タスクの生成を停止し、アラーム通知情報を返す。
例えば、取得装置は、
リクエスト期間と既存の時限タスクの実行期間とが重複期間を有する場合に、重複期間に基づいて既存の時限タスクの実行期間を更新する第1の更新ユニットを含む。
例えば、取得装置は、
更新された実行期間に基づいて既存の時限タスクを更新する第2の更新ユニットをさらに含み、時限タスクは、一度実行される時限タスク、または周期的かつ循環的に実行される時限タスクである。
例えば、実行装置はさらに、
時限タスクに対応する実行期間が終了すると、負荷バランシング方法を削除し、次の実行期間に対応する次の負荷バランシング方法を取得する。
例えば、時限タスクは、以下のいずれか、すなわち、
周期的かつ循環的に実行される第1の時限タスク、
一度実行される第2の時限タスク、及び、
一度実行される第1の時限タスクと周期的かつ循環的に実行される第2の時限タスクとを連係させる第3の時限タスクのいずれかを含む。
本開示の別の態様によると、1つまたは複数のプロセッサによって実行される時、プロセッサに、
時限タスクを取得することであって、時限タスクは、実行期間、及び、実行期間に実行される負荷バランシング方法を含む、取得することと、
現在の時刻が実行期間に入っているかを判定することと、
時限タスクに対応する負荷バランシング方法を取得することと、
時限タスクに対応する実行期間が終了するまで、時限タスクに対応する負荷バランシング方法に基づいて複数のサーバ間で負荷バランシングを処理することと、を含む動作を行わせるコンピュータ実行可能命令を記憶した1つまたは複数のメモリが提供される。
従来の技法と比較すると、本開示の例示の実施形態による、時間ベース調節可能負荷バランシング方法及びデバイスは、少なくとも1つの時限タスクであって、実行期間、及び、実行期間に実行される負荷バランシング方法を含む時限タスクを取得して記録し、ユーザリクエストに基づいて負荷バランシングの性能パラメータ情報を取得し、次いで、負荷バランシングの性能パラメータ情報に基づいて、実行期間に実行される負荷バランシング方法を決定する。従って、複数の期間を定めることによって種々の負荷バランシング方法が作成され、対応する負荷バランシング方法が実行期間に実行される。さらに、現在の時刻が1つの時限タスクの実行期間に入っているかどうかが判定され、はいの場合に、時限タスクに対応する負荷バランシング方法が取得され、複数のサーバ間での負荷バランシングは、時限タスクに対応する実行期間が終了するまで、対応する負荷バランシング方法に基づいて処理されることによって、ユーザの柔軟なコンフィギュレーションを実装する。ユーザ要求を満たす負荷バランシング方法は、複雑なユーザシナリオに柔軟に適用されることで、負荷バランシングの利用可能性を向上させる。
本開示の特徴、目的、及び利点は、下記の図面と併せて、非限定的な例示の実施形態の詳細な説明を参照することによって、より明白になるであろう。
本開示の一態様による、時間ベース調節可能負荷バランシングデバイスの概略的な構造図である。 本開示の一態様による例示の実施形態における取得装置110の概略的な構造図である。 対応する期間における既存の時限タスク及びストラテジを示す図である。 本開示の一態様による、時限タスクを更新する例示の実施形態の概略図である。 本開示の別の態様による、時間ベース調節可能負荷バランシング方法の概略的なフローチャートである。 本開示の別の態様による例示の実施形態におけるステップS402の方法の概略的なフローチャートである。
添付の図面における同一のまたは同様の参照番号は、同一のまたは同様の構成要素を表す。
詳細な説明
本開示について、添付の図面を参照して以下にさらに詳細に説明する。
図1は、本開示の一態様による、時間ベース調節可能負荷バランシングデバイスの概略的な構造図である。デバイス100は、1つまたは複数のプロセッサ(複数可)102またはデータ処理ユニット(複数可)及びメモリ104を含む。デバイス100はさらに、1つまたは複数の入力/出力インターフェース(複数可)106、及びネットワークインタフェース(複数可)108を含んでもよい。メモリ104はコンピュータ可読媒体の例である。
コンピュータ可読媒体は、揮発性及び不揮発性、取り外し可能及び取り外し不可能な媒体を含み、情報を記憶するためのいかなる方法または技術も使用できる。情報は、コンピュータ可読命令、データ構造、及びプログラムまたは他のデータのモジュールであってもよい。コンピュータの記憶媒体の例は、相変化メモリ(PRAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、他のタイプのRAM、ROM、電気的消去可能プログラマブル読み出し専用メモリ(EEPROM)、フラッシュメモリもしくは他のメモリ技術、コンパクトディスク読み出し専用メモリ(CD−ROM)、デジタル多用途ディスク(DVD)もしくは他の光学記憶装置、カセットテープ、テープディスク記憶装置もしくは他の磁気記憶デバイス、または、計算デバイスにアクセス可能な情報を記憶するものとすることができるその他の非送信媒体を含むが、これらに限定されない。本明細書における定義に従って、コンピュータ可読媒体は、一時的なコンピュータ可読媒体(一時的な媒体)、例えば、変調されたデータ信号及びキャリアを含まない。
メモリ104は、取得装置110及び実行装置112を含む複数のモジュールまたはユニットを格納してもよい。取得装置110は、少なくとも1つの時限タスクであって、実行期間、及び実行期間に実行される負荷バランシング方法を含む時限タスクを取得しかつ記録する。実行装置112は、現在の時刻が1つの時限タスクの実行期間に入っているかどうかを判定し、はいの場合に、時限タスクに対応する負荷バランシング方法を取得し、時限タスクに対応する実行期間が終了するまで、対応する負荷バランシング方法に基づいて複数のサーバ間の負荷バランシングを処理する。
本明細書において、デバイス100は、ユーザ機器、または、ネットワークを介してユーザ機器及びネットワークデバイスを統合することによって構成されるデバイスを含んでもよいが、これらに限定されない。ユーザ機器は、スマートフォン及びPDAなどのタッチパッドによってユーザとのマンマシンインタラクションを実行することができる任意のモバイル電子製品も含んでもよいが、これに限定されない。モバイル電子製品は、アンドロイドオペレーティングシステム及びiOSオペレーティングシステムなどの任意のオペレーティングシステムも使用してもよい。この場合に、ネットワークデバイスは、事前設定または事前記憶された命令に従って数値計算及び情報処理を自動的に行うことが可能な電子デバイスを含み、このハードウェアは、マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、及び埋め込みデバイスなどを含むが、これらに限定されない。ネットワークは、インターネット、広域ネットワーク、メトロポリタンエリアネットワーク、ローカルエリアネットワーク、VPNネットワーク、及びワイヤレスAd Hocネットワークなどを含むが、これらに限定されない。例えば、デバイス100はまた、ユーザ機器もしくはユーザ機器とネットワークデバイス、タッチ端末、または、ネットワークを通してタッチ端末と統合されるネットワークデバイスによって形成されるデバイス上で実行するスクリプトプログラムであってもよい。明確には、デバイス100が単なる例であること、また本開示に適用可能である場合に他の既存の、または将来的に可能なデバイス100も、本開示の保護範囲に含まれ、参照により本明細書に組み込まれるものとすることを、当業者であれば理解するはずである。
前述の装置の動作は連続的なものであり、本明細書において、「連続的」という言い回しは、前述の装置が、リアルタイムに、または事前設定された、またはリアルタイムに調節された動作モードに従って別個に動作することを意味することを、当業者であれば理解するはずである。例えば、取得装置110は、少なくとも1つの時限タスクを連続的に取得して記録し、実行装置112は、現在の時刻が1つの時限タスクの実行期間に入っているかどうかを連続的に判定し、はいの場合に、時限タスクに対応する負荷バランシング方法を取得し、時限タスクに対応する実行期間が終了するまで、かつ、デバイス100が負荷バランシング調節作業を完了する、または作業を停止するまで、対応する負荷バランシング方法に基づいて複数のサーバ間の負荷バランシングを処理する。
本開示の例示の実施形態による時間ベース調節可能負荷バランシングのためのデバイス100は、対応する負荷バランシング方法が、ユーザのリクエストによるリクエストの実行期間に実行されることを可能にすることによって、ユーザの要求を満たすようにユーザの柔軟なコンフィギュレーションを実装し、一方で負荷バランシングの利用可能性を高める。
具体的な解決策の実施態様において、負荷バランシングストラテジを使用して、ユーザのアクセスリクエストに応じて、リクエストを処理するために対応してなされた負荷バランシングストラテジに準じたバックエンドサーバを選択すること、また、記述を容易にするために、負荷バランシング方法と負荷バランシングストラテジ(SLBストラテジ)とが例示の実施形態において入れ替えて使用されることを、当業者であれば理解するはずである。
具体的には、取得装置110は、少なくとも1つの時限タスクであって、実行期間と実行期間に実行される負荷バランシング方法とを含む時限タスクを取得して記録する。
本明細書において、サーバ負荷分散装置(SLB)は、トラフィックを複数のクラウドサーバに分散させる負荷バランシングサービスであり、負荷バランシングは、トラフィック分散によってアプリケーションシステムの外部サービス能力を拡張させ、かつ、単一障害点を排除することによって、アプリケーションシステムの有用性を改善してもよい。本開示の例示の実施形態では、SLBコントローラは、SLBストラテジをSLB転送サーバに送出する。時間ベースストラテジを実施するために、タイムサーバはSLBコントローラ上に構築される必要があり、時間に関係があるストラテジは全て、タイムサーバに送られてもよく、タイムサーバは、時間ストラテジに応じて、対応する転送ストラテジを転送サーバに送出する。上記の例示の実施形態において、取得装置110がタイムサーバを含んでもよく、タイムサーバが、一度実行される時限タスク、及び循環的に実行される時限タスクを実施し、ここで、時限タスクが、ある期間に、ユーザによって選択された、実行されるべき負荷バランシングストラテジを実行していることに留意するべきである。少なくとも1つの時限タスクは、ユーザリクエストの期間情報、及び該期間に実行されるSLBストラテジの情報を取得することによって生成され、対応するSLBストラテジは時限タスクに基づいてリクエストの期間に実行される。例えば、ユーザは、このトラフィック使用条件に従って、06:00から18:00までの期間にSLBストラテジa302を選択し、翌日の18:00から06:00までの期間にSLBストラテジb304を選択し、選択された期間のリクエスト情報、及び対応する期間に実行されるSLBストラテジの情報はタイムサーバに送られ、2つの時限タスクが生成される。時限タスクaは、タイムサーバが06:00から18:00までの期間にSLBストラテジa302を実行するために使用され、時限タスクbは、タイムサーバが翌日の18:00から06:00までの期間にSLBストラテジb304を実行するために使用される。
時限タスクを取得して記録する方法が単なる例であり、本開示に適用可能である場合は他の既存の、または将来的に可能な、時限タスクを取得して記録する方法も本開示の保護範囲に含まれ、参照により本明細書に組み込まれるものとなることを、当業者であれば理解するはずである。
具体的には、実行装置112は、現在の時刻が1つの時限タスクの実行期間に入っているかどうかを判定し、はいの場合に、時限タスクに対応する負荷バランシング方法を取得し、時限タスクに対応する実行期間が終了するまで、対応する負荷バランシング方法に基づいて複数のサーバ間の負荷バランシングを処理する。
前述の例によると、ユーザが、このトラフィック使用条件に従って、06:00から18:00までの期間にSLBストラテジaを選択し、翌日の18:00から06:00までの期間にSLBストラテジbを選択した後、タイムサーバは、ユーザによって選択された期間のリクエスト情報、及び対応する期間に実行されるSLBストラテジの情報を取得し、転送ストラテジに従って、取得された情報を転送サーバに転送することによって、複数のサーバ間で負荷バランシングを実施する。複数の時限タスクが実行される時、現在の時刻が選択された期間に入っているかどうかを判定することが必要とされ、現在の時刻が6:00から18:00までの期間に属する場合に、SLBストラテジaが実行されて18:00の時点で終了し、その後、翌日の18:00から06:00までの次の期間に入り、SLBストラテジbが、該期間に対応する時限タスクbが終了するまで、この期間において常に実行される。
例えば、図2は、本開示の一態様による例示の実施形態における取得装置110の概略的な構造図である。図2の例において、取得装置110は、リクエスト取得ユニット202、生成ユニット204、及び決定ユニット206を含む。ここで、リクエスト取得ユニット202はユーザリクエストを取得し、ユーザリクエストは、リクエスト期間、及びリクエスト期間に実行される負荷バランシング方法を含み、生成ユニット204はユーザリクエストに基づいて少なくとも1つの時限タスクを生成し、リクエスト期間に基づいて時限タスクの実行期間を決定し、決定ユニット206は、ユーザリクエストに基づいて、実行期間に実行される負荷バランシング方法を決定する。
具体的な例示の実施形態において、リクエスト取得ユニット202は、ユーザによって選択された期間の情報、及び該期間に使用されるSLBストラテジの情報を取得し、生成ユニット204は、取得されたリクエスト情報に応じて対応する時限タスクを生成し、かつ時限タスクを実行する期間を決定し、決定ユニット206は、ユーザによって必要とされるSLBストラテジが実行期間に実行されるか、すなわち、対応するSLBストラテジがそれぞれの期間に実行されるかを判定し、SLBストラテジは該期間の時刻が開始する時に追加され、SLBストラテジは該期間が終了すると削除され、新たなストラテジが、次の期間に入る時に再び追加された後に実行されることで、ユーザの柔軟なコンフィギュレーションがユーザの要求に応じて完了するようにする。
例えば、決定ユニット206は、ユーザリクエストに基づいて、負荷バランシングの性能パラメータ情報を求め、次いで負荷バランシングの性能パラメータ情報に基づいて、実行期間に実行される負荷バランシング方法を決定する。
例えば、性能パラメータ情報は、以下のうちの少なくとも1つ、すなわち、帯域幅量、作成可能な接続の数、及び、1秒当たりの新たな作成可能な接続の数のうちの少なくとも1つを含む。例えば、ユーザは、1か月の格上げを望み、帯域幅がこの月において増大されることを必要とし、必要とされた帯域幅は、ユーザのリクエストに応じて、以前のAからBに変更され、この月において帯域幅Bをユーザに分配し、かつ他の月の期間に帯域幅Aを分配するSLBストラテジを実行することを決定する。別の例として、ある企業のサーバは、ある期間に、接続させることができるパーソナルコンピュータ(PC)の数を調節する必要があり、必要とされる期間におけるSLBストラテジは作成可能な接続の数のリクエストに応じて決定される。代替的には、対応して調節されるSLBストラテジは、サーバによって必要とされる、1秒当たりの新たな作成可能な接続の数のリクエストに応じて決定される。帯域幅量、作成可能な接続の数、及び、1秒当たりの新たな作成可能な接続の数が、負荷バランシングによって外部に提供されるリソースであり、ユーザによって所有されるSLB性能パラメータとして使用されてもよいことに留意するべきである。負荷バランシングによってユーザサーバに分散されたリソースは、時間に基づいて作成されたSLBストラテジによって調節されるため、SLBを使用するユーザの要求を満たす。例えば、ユーザのトラフィックが大きい時に帯域幅を増大させ、ユーザのトラフィックが小さい時に帯域幅を減少させることで、かかる柔軟なストラテジによってユーザの費用が節約される。
例えば、決定ユニット206はさらに、取得された、負荷バランシングの性能パラメータ情報が負荷バランシングの既存のサービス能力の性能パラメータ情報を超える場合に、時限タスクの生成を停止し、アラーム通知情報を返す。
本明細書において、負荷バランシングのサービス能力を決定することは、転送サーバの容量、及び、時限タスクを実行するストラテジによって参照されるサービス能力に基づく。例えば、帯域幅、作成可能な接続の数、及び、1秒当たりの新しい作成可能な接続の数などの性能パラメータである。全てのユーザによって選択されたSLBストラテジによって参照されるサービス能力の合計が転送サーバの容量を超える場合に、管理者に、例えば、ユーザによって参照されるサービス能力を制限する、または転送サーバの容量を拡張するといった対応する措置を講じるように通知するアラームが発せられる。この場合に、ユーザによって参照されるサービス能力を制限することは、現在生成されている時限タスクを停止すること、すなわち、対応する期間において負荷バランシング容量を満たさないSLBストラテジの実行を停止すること、及び、要求を満たすために新たな時限タスクを生成するために実際の状況に応じてSLBストラテジa302を調節することであってもよい。
例えば、取得装置110はさらに、(図2に示されない)第1の更新ユニット、及び(図2に示されない)第2の更新ユニットを含む。ここで、第1の更新ユニットは、リクエスト期間と既存の時限タスクの実行期間とが重複期間を有する場合に、重複期間に基づいて既存の時限タスクの実行期間を更新し、第2の更新ユニットは、更新された実行期間に基づいて既存の時限タスクを更新し、時限タスクは、一度実行される時限タスク、または周期的かつ循環的に実行される時限タスクである。
具体的な例示の実施形態では、例えば、既存の時限タスク、及び図3(a)に示される対応する期間におけるストラテジにおいて、ストラテジa302は期間A304において実行され、ストラテジb306は期間B308において実行される。ユーザが突然、要求、例えば、図3(b)に示されるように、期間C312においてストラテジc310を実行する要求を示す時、期間C312の1つの部分は、期間A304に属し、他の部分は期間B308に属し、重複した期間が存在する。この場合に、既存の時限タスクの実行期間は、更新される必要がある、すなわち、期間A304においてSLBストラテジa302を最初に実行し、かつ期間B308においてSLBストラテジb304を実行することは、期間A’314においてSLBストラテジa302を実行すること、次の期間C312においてSLBストラテジc310を実行すること、及びその後の期間B’316においてSLBストラテジb304を実行することに更新される。ストラテジa及びストラテジbに対応する時限タスクの実行期間が変更され、そしてこのように、ユーザの選択リクエストに応じて、ユーザが必要とするSLBストラテジが柔軟に構成されることで、負荷バランシングは種々の環境に対してより柔軟になり、かつより良く適応するようになり、それによって、負荷バランシングの利用可能性が拡張されることが分かる。さらに、既存の時限タスクは、更新された期間に応じて更新される。例えば、ストラテジa302の時限タスクは期間A’314において一度実行され、ストラテジc310は期間C312において循環的に実行される。
例えば、実行装置112は、時限タスクに対応する実行期間が終了すると、既存の負荷バランシング方法を削除し、次の実行期間に対応する負荷バランシング方法を取得する。
本明細書において、ある期間に対応する時限タスクは、期間が開始する時点で取得され、この時限タスクは、期間が終了する時点で終了し、該期間における対応するSLBストラテジは削除され、次の実行期間における対応するSLBストラテジが取得される。例えば、具体的な例示の実施形態では、ユーザは3月に帯域幅を増大させる必要があり、そして、SLBストラテジ1が3月の前に実行され、この以前のSLBストラテジ1は3月が始まる時に削除され、3月に対応するSLBストラテジ2が取得される、すなわち、3月の期間の負荷バランシングストラテジが調節されることで、ユーザのコンフィギュレーションが柔軟性を有するようにする。
例えば、時限タスクは、以下のいずれか、すなわち、周期的かつ循環的に実行される時限タスク、一度実行される時限タスク、及び、一度実行される時限タスクと周期的かつ循環的に実行される時限タスクとを連係させる時限タスクのいずれかを含む。
例えば、時間ベースSLBストラテジは以下の方法で作成されてもよい。
1)期間に応じて循環させるストラテジ、例えば、24時間以内のSLBストラテジは、1日を単位として使用することによって定められ、これらのストラテジは1日ごとに循環する、または、7×24時間以内のSLBストラテジは、1週間を単位として使用することによって定められ、これらのストラテジは1週間ごとに循環する、または、30日以内のSLBストラテジは1か月を単位として使用することによって定められ、これらのストラテジは1か月ごとに循環する。取得装置110は、周期的に循環させる必要がある期間情報、及び対応するSLBストラテジを取得後、対応する期限タスクを生成し、ここで、期限タスクは、要求に応じて周期的かつ循環的に実行される。期間に応じて循環するストラテジを作成する方法は、単なる例であり、対応するSLBストラテジは循環期間として任意の時間単位を使用することによって循環させてもよく、周期的かつ循環的に実行される他の既存の、または将来的に可能な時限タスクも、本開示に適用可能である場合は本開示の保護範囲に含まれ、参照によって本明細書に組み込まれるものとすることに留意するべきである。
2)それぞれの期間が異なるストラテジを有し、異なるSLBストラテジは異なる期間に対応しており、ある期間におけるストラテジは循環しない。すなわち、期間情報及び対応するSLBストラテジが取得された後、ある期間に対応する期限タスクが生成され、期限が終了すると、対応するストラテジは削除され、該期限におけるストラテジは循環的に実行されない。例えば、具体的なシナリオでは、9:00から17:00までの期間は作業時間であり、帯域幅を増大させる必要があるため、SLBストラテジ2が使用され、翌日の22:00から06:00までの期間において、帯域幅を減少させる必要があるため、SLBストラテジ3が使用され、他の期間においてはストラテジ1が実行される。従って、生成される時限タスクは全て、一度実行され、すなわち、対応する時限タスクは、ストラテジ2が9:00から17:00までの期間において実行された後に終了させ、対応する時限タスクは、ストラテジ3が翌日の22:00から06:00までの期間に実行された後に終了させる。別の例として、ユーザが支払いを行う時、1か月の期限の請求書が生成され、ユーザは、何らかの理由によってある月の第1の期間において固定帯域幅を選択し、かつ残りの期間においてトラフィックベース課金方法を使用する必要があるため、ユーザの要求に応じて、時限タスクaが第1の期間に一度実行され、ここで、時限タスクaは第1の期間において固定帯域幅に従って課金するストラテジであり、課金の方法は期間が終了すると変更される。時限タスクbがまた、残りの期間において一度実行され、ここで、時限タスクbは、残りの期間におけるトラフィックに応じて課金するストラテジを指し、時限タスクbは期間が終了すると停止され、トラフィックに応じて課金するストラテジは削除され、新たな期間、及び該期間に対応するストラテジが取得される。
3)組み合わせたストラテジが作成され、この場合に、異なるストラテジは異なる期間において使用され、循環的に実行されるストラテジもある期間において定められてよい。例えば、ユーザは、1か月の(例えば、11月に)トラフィックの大きな格上げを必要とし、この月において大きな帯域幅が設定され、ストラテジaが他の月において実行され、ストラテジbが帯域幅を増大させるために11月の期間に実行される。しかしながら、この月の期間において、循環的なストラテジも定められている場合があり、異なる期間において必要とされる異なる帯域幅量に応じて、例えば、ストラテジb’1はこの月の昼の期間に実行され、ストラテジb’2は夜の期間に実行される。周期的かつ循環的に実行される時限タスクと、一度実行される時限タスクを連係させる時限タスクは、ユーザの選択リクエストに応じて実施される。
上記の例示の実施形態において、ユーザによって選択される複数のSLBストラテジが取得された後に負荷バランシングがサービスのために調節されると、全てのユーザによって使用されるストラテジによって参照されるサービス能力の合計が転送サーバのサービス能力を超えることができないようにすることが満たされるものとし、合計が転送サーバのサービス能力を超える場合に、アラームを発し、かつ対応する措置を講じるように通知情報を送ることが必要であることに留意するべきである。
時間ベースSLBストラテジの作成方法が単なる例であり、本開示に適用可能である場合は他の既存の、または将来的に可能な作成方法も本開示の保護範囲に含まれ、参照により本明細書に組み込まれるものとなることを、当業者であれば理解するはずである。
図4は、本開示の別の態様による、時間ベース調節可能負荷バランシング方法の概略的なフローチャートである。本方法は、ステップS402及びステップS404を含む。ステップS402では、少なくとも1つの時限タスクを取得して記録し、時限タスクは実行期間、及び実行期間に実行される負荷バランシング方法を含む。ステップS404では、現在の時刻が1つの時限タスクの実行期間に入っているかどうかを判定し、はいの場合に、時限タスクに対応する負荷バランシング方法を取得し、時限タスクに対応する実行期間が終了するまで、複数のサーバ間の負荷バランシングを、対応する負荷バランシング方法に基づいて処理する。
本開示の例示の実施形態による時間ベース調節可能負荷バランシング方法は、対応する負荷バランシング方法が、ユーザのリクエストによるリクエストの実行期間に実行されることによって、ユーザの要求を満たすようにユーザの柔軟なコンフィギュレーションが実装され、一方で負荷バランシングの利用可能性が高められる。
具体的な解決策の実施態様では、負荷バランシングストラテジを使用して、ユーザのアクセスリクエストに応じて、リクエストを処理するために対応してなされた負荷バランシングストラテジに準じたバックエンドサーバを選択すること、また記述を容易にするために、負荷バランシング方法及び負荷バランシングストラテジ(SLBストラテジ)は例示の実施形態において入れ替えて使用されることを、当業者であれば理解するはずである。
具体的には、ステップS402では、少なくとも1つの時限タスクを取得して記録し、時限タスクは、実行期間、及び実行期間に実行される負荷バランシング方法を含む。
ここで、サーバ負荷分散装置(SLB)は、トラフィックを複数のクラウドサーバに分散させる負荷バランシングサービスであり、負荷バランシングは、トラフィック分散によってアプリケーションシステムの外部サービス能力を拡張させ、かつ、単一障害点を排除することによって、アプリケーションシステムの有用性を改善してもよい。本開示の例示の実施形態では、SLBコントローラは、SLBストラテジをSLB転送サーバに送出する。時間ベースストラテジを実施するために、タイムサーバはSLBコントローラ上に構築される必要があり、時間に関係があるストラテジは全て、タイムサーバに送られてもよく、タイムサーバは、時間ストラテジに応じて、対応して転送するストラテジを転送サーバに送出する。上記の例示の実施形態において、タイムサーバがステップS402において作成され、タイムサーバが、一度実行される時限タスク、及び循環的に実行される時限タスクを実施し、ここで、時限タスクが、ある期間に、ユーザによって選択された、実行されることになる負荷バランシングストラテジを実行していることに、留意するべきである。少なくとも1つの時限タスクが、ユーザリクエストの期間情報、及び該期間に実行されるSLBストラテジの情報を取得することによって生成され、対応するSLBストラテジが時限タスクに基づいてリクエストの期間に実行される。例えば、ユーザは、このトラフィック使用条件に従って、06:00から18:00までの期間にSLBストラテジa302を選択し、翌日の18:00から06:00までの期間にSLBストラテジb304を選択し、選択された期間のリクエスト情報、及び対応する期間に実行されるSLBストラテジの情報はタイムサーバに送られ、2つの時限タスクが生成される。時限タスクaは、タイムサーバが06:00から18:00までの期間にSLBストラテジa302を実行するために使用され、時限タスクbは、タイムサーバが翌日の18:00から06:00までの期間にSLBストラテジb304を実行するために使用される。
時限タスクを取得して記録する方法が単なる例であり、本開示に適用可能である場合は他の既存の、または将来的に可能な、時限タスクを取得して記録する方法も本開示の保護範囲に含まれ、参照により本明細書に組み込まれるものとなることを、当業者であれば理解するはずである。
具体的には、ステップS404において、現在の時刻が1つの時限タスクの実行期間に入っているかどうかを判定し、はいの場合に、時限タスクに対応する負荷バランシング方法を取得し、時限タスクに対応する実行期間が終了するまで、複数のサーバ間の負荷バランシングを、対応する負荷バランシング方法に基づいて処理する。
前述の例によると、ユーザが、このトラフィック使用条件に従って、06:00から18:00までの期間にSLBストラテジa302を選択し、翌日の18:00から06:00までの期間にSLBストラテジb304を選択した後、タイムサーバは、ユーザによって選択された期間のリクエスト情報、及び対応する期間に実行されるSLBストラテジの情報を取得し、転送ストラテジに従って、取得された情報を転送サーバに転送することによって、複数のサーバ間の負荷バランシングを実施する。複数の時限タスクが実行される時、現在の時刻が選択された期間に入っているかどうかを判定することが必要とされ、現在の時刻が6:00から18:00までの期間に属する場合に、SLBストラテジa302が実行され、かつ18:00の時点になるまでに終了し、その後、翌日の18:00から06:00までの次の期間に入り、SLBストラテジb304が、該期間に対応する時限タスクbが終了するまで、この期間において常に実行される。
例えば、図5は、本開示の別の態様による例示の実施形態におけるステップS402の方法の概略的なフローチャートである。ステップS402は、ステップS502、ステップS504、及びステップS506を含む。ここで、ステップS502では,ユーザリクエストを取得し、ユーザリクエストは、リクエスト期間、及びリクエスト期間に実行される負荷バランシング方法を含み、次いで、ステップS504では、少なくとも1つの時限タスクをユーザリクエストに基づいて生成し、時限タスクの実行期間をリクエスト期間に基づいて判断し、最後に、ステップS506では、実行期間に実行される負荷バランシング方法を、ユーザリクエストに基づいて決定する。
具体的な例示の実施形態において、ステップS502では、ユーザによって選択された期間の情報、及び該期間に使用されるSLBストラテジの情報を取得し、次いでステップS504を行い、ここで、取得されたリクエスト情報による、対応する時限タスクを生成し、時限タスクを実行する期間を決定した後、ステップS506を行って、ユーザによって必要とされるSLBストラテジを実行期間に実行する、すなわち、対応するSLBストラテジをそれぞれの期間に実行すると決定し、SLBストラテジを該期間の時刻が開始する時に追加し、SLBストラテジをその時点が終了すると削除し、新たなストラテジを、次の期間に入る時に再び追加した後に実行することで、ユーザの柔軟なコンフィギュレーションをユーザの要求に応じて完了するようにする。
例えば、ステップS506は、ユーザリクエストに基づいて、負荷バランシングの性能パラメータ情報を決定すること、及び、負荷バランシングの性能パラメータ情報に基づいて、実行期間に実行される負荷バランシング方法を決定することを含む。
例えば、性能パラメータ情報は、以下のうちの少なくとも1つ、すなわち、帯域幅量、作成可能な接続の数、及び、1秒当たりの新たな作成可能な接続の数のうちの少なくとも1つを含む。例えば、ユーザは、1か月の格上げを望み、帯域幅がこの月において増大されることを必要とし、必要とされた帯域幅は、ユーザのリクエストに応じて、以前のAからBに変更され、この月において帯域幅Bをユーザに分配し、かつ他の月の期間に帯域幅Aを分配するSLBストラテジを実行することが決定される。別の例として、ある企業のサーバは、ある期間に、接続させることができるパーソナルコンピュータ(PC)の数を調節する必要があり、必要とされる期間におけるSLBストラテジは、作成可能な接続の数のリクエストに応じて決定される。代替的には、対応して調節されるSLBストラテジは、サーバによって必要とされる、1秒当たりの新たな作成可能な接続の数のリクエストに応じて決定される。帯域幅量、作成可能な接続の数、及び、1秒当たりの新たな作成可能な接続の数が、負荷バランシングによって外部に提供されるリソースであり、ユーザによって所有されるSLB性能パラメータとして使用されてもよいことに、留意するべきである。負荷バランシングによってユーザサーバに分散されたリソースは、時間に基づいて作成されたSLBストラテジによって調節されるため、SLBを使用するユーザの要求を満たす。例えば、ユーザのトラフィックが大きい時に帯域幅を増大させ、ユーザのトラフィックが小さい時に帯域幅を減少させることで、かかる柔軟なストラテジによってユーザの費用が節約される。
例えば、ステップS506は、取得された、負荷バランシングの性能パラメータ情報が負荷バランシングの既存のサービス能力の性能パラメータ情報を超える場合に、時限タスクの生成を停止し、アラーム通知情報を返すことをさらに含む。
本明細書において、負荷バランシングのサービス能力を決定することは、転送サーバの容量、及び、時限タスクを実行するストラテジによって参照されるサービス能力、例えば、帯域幅、作成可能な接続の数、及び、1秒当たりの新たな作成可能な接続の数などの性能パラメータに基づく。全てのユーザによって選択されたSLBストラテジによって参照されるサービス能力の合計が転送サーバの容量を超える場合に、管理者に、例えば、ユーザによって参照されるサービス能力を限定する、または転送サーバの容量を拡張するといった対応する措置を講じるように通知するアラームが発せられる。この場合に、ユーザによって参照されるサービス能力を制限することは、現在生成されている時限タスクを停止すること、すなわち、対応する期間において負荷バランシング容量を満たさないSLBストラテジの実行を停止すること、及び、要求を満たすために新たな時限タスクを生成するための実際の状況に応じて、SLBストラテジを調節することであってもよい。
例えば、ステップS402は、リクエスト期間と既存の時限タスクの実行期間とが重複期間を有する場合に、重複期間に基づいて既存の時限タスクの実行期間を更新すること、及び、その後、更新された実行期間に基づいて既存の時限タスクを更新することをさらに含み、時限タスクは、一度実行される時限タスク、または周期的かつ循環的に実行される時限タスクである。
具体的な例示の実施形態では、例えば、既存の時限タスク、及び図3(a)に示される対応する期間におけるストラテジにおいて、ストラテジa302が期間A304において実行され、ストラテジb306が期間B308において実行される。ユーザが突然、要求、例えば、図3(b)に示されるように、期間C312においてストラテジc310を実行する要求を示す時、期間C312の1つの部分は、期間A304に属し、他の部分は期間B308に属し、重複した期間が存在する。この場合に、既存の時限タスクの実行期間は、更新される必要がある、すなわち、期間A304においてSLBストラテジa302を最初に実行し、かつ期間B308においてSLBストラテジb304を実行することは、期間A’314においてSLBストラテジa302を実行すること、次の期間C312においてSLBストラテジc310を実行すること、及びその後の期間B’316においてSLBストラテジb304を実行することに更新される。ストラテジa及びストラテジbに対応する時限タスクの実行期間が変更され、このように、ユーザの選択リクエストに応じて、ユーザが必要とするSLBストラテジが柔軟に構成されることで、負荷バランシングは種々の環境に対してより柔軟になり、かつより良く適応するようになり、それによって、負荷バランシングの利用可能性が拡張されることが分かる。さらに、既存の時限タスクは、更新された期間に応じて更新される。例えば、ストラテジa302の時限タスクは期間A’314において一度実行され、ストラテジc310は期間C312において循環的に実行される。
例えば、ステップS404は、時限タスクに対応する実行期間が終了すると、既存の負荷バランシング方法を削除し、次の実行期間に対応する負荷バランシング方法を取得することを含む。
本明細書において、ある期間に対応する時限タスクは、期間が開始する時点で取得され、この時限タスクは、期間が終了する時点で終了し、該期間における対応するSLBストラテジは削除され、次の実行期間における対応するSLBストラテジが取得される。例えば、具体的な例示の実施形態では、ユーザは3月に帯域幅を増大させる必要があり、そして、SLBストラテジ1が3月の前に実行され、この以前のSLBストラテジ1は3月が始まる時に削除され、3月に対応するSLBストラテジ2が取得される、すなわち、3月の期間の負荷バランシングストラテジが調節されることで、ユーザのコンフィギュレーションが柔軟性を有するようにする。
例えば、時限タスクは、以下のいずれか、すなわち、周期的かつ循環的に実行される時限タスク、一度実行される時限タスク、及び、一度実行される時限タスクと周期的かつ循環的に実行される時限タスクとを連係させる時限タスクのいずれかを含む。
例えば、時間ベースSLB一度実行される時限タスクは以下の方法で作成されてもよい。
1)期間に応じて循環させるストラテジ、例えば、24時間以内のSLBストラテジは、1日を単位として使用することによって定められ、これらのストラテジは1日ごとに循環する、または、7×24時間以内のSLBストラテジは、1週間を単位として使用することによって定められ、これらのストラテジは1週間ごとに循環する、または、30日以内のSLBストラテジは1か月を単位として使用することによって定められ、これらのストラテジは1か月ごとに循環する。取得装置110は、周期的に循環させる必要がある期間情報、及び対応するSLBストラテジを取得後に、対応する期限タスクを生成し、ここで、期限タスクは、要求に応じて周期的かつ循環的に実行される。期間に応じて循環させるストラテジを作成する方法は、単なる例であり、対応するSLBストラテジは循環時間として任意の時間単位を使用することによって循環させてもよく、周期的かつ循環的に実行される他の既存の、または将来的に可能な時限タスクも、本開示に適用可能である場合は本開示の保護範囲に含まれ、参照によって本明細書に組み込まれるものとすることに留意するべきである。
2)それぞれの期間は異なるストラテジを有し、異なるSLBストラテジは異なる期間に対応しており、ある期間におけるストラテジは循環しない。すなわち、期間情報及び対応するSLBストラテジが取得された後、ある期間に対応する期限タスクが生成され、期限が終了すると、対応するストラテジは削除され、該期限におけるストラテジは循環的に実行されない。例えば、具体的なシナリオでは、9:00から17:00までの期間は作業時間であり、帯域幅を増大させる必要があるため、SLBストラテジ2が使用され、翌日の22:00から06:00までの期間において、帯域幅を減少させる必要があるため、SLBストラテジ3が使用され、他の期間においてはストラテジ1が実行される。従って、生成される時限タスクは全て、一度実行され、すなわち、対応する時限タスクは、ストラテジ2が9:00から17:00までの期間において実行された後に終了させ、対応する時限タスクは、ストラテジ3が翌日の22:00から06:00までの期間に実行された後に終了させる。別の例として、ユーザが支払いを行う時、1か月の期限の請求書が生成され、ユーザは、何らかの理由によってある月の第1の期間において固定帯域幅を選択し、かつ残りの期間においてトラフィックベース課金方法を使用する必要があるため、ユーザの要求に応じて、時限タスクaが第1の期間に一度実行され、ここで、時限タスクaは第1の期間において固定帯域幅に従って課金するストラテジであり、課金方法は、期間が終了すると変更される。時限タスクbがまた、残りの期間において一度実行され、ここで、時限タスクbは、残りの期間におけるトラフィックに応じて課金するストラテジを指し、時限タスクbは期間が終了すると停止され、トラフィックに応じて課金するストラテジは削除され、新たな期間、及び該期間に対応するストラテジが取得される。
3)組み合わせたストラテジが作成され、この場合に、異なるストラテジが異なる期間において使用され、循環的に実行されるストラテジもある期間において定められてよい。例えば、ユーザは、1か月の(例えば、11月に)トラフィックの大きな格上げを必要とし、この月において大きな帯域幅が設定され、ストラテジaが他の月において実行され、ストラテジbが帯域幅を増大させるために11月の期間に実行される。しかしながら、この月の期間において、循環的なストラテジも定められている場合があり、異なる期間において必要とされる異なる帯域幅量に応じて、例えば、ストラテジb’1はこの月の昼の期間に実行され、ストラテジb’2は夜の期間に実行される。一度実行される時限タスクと周期的かつ循環的に実行される時限タスクとを連係させる時限タスクは、ユーザの選択リクエストに応じて実施される。
上記の例示の実施形態において、ユーザによって選択される複数のSLBストラテジが取得された後、負荷バランシングがサービスのために調節される時、全てのユーザによって使用されるストラテジによって参照されるサービス能力の合計が転送サーバのサービス能力を超えることができないようにすることが満たされるものとし、合計が転送サーバのサービス能力を超える場合に、アラームを発し、かつ対応する措置を講じるように通知情報を送ることが必要であることに留意するべきである。
時間ベースSLBストラテジの作成方法が単なる例であり、本開示に適用可能である場合は他の既存の、または将来的に可能な作成方法も本開示の保護範囲に含まれ、参照により本明細書に組み込まれるものとなることを、当業者であれば理解するはずである。
本開示が、ソフトウェア及び/またはソフトウェアとハードウェアとの組み合わせで実装されてもよく、例えば、特定用途向け集積回路(ASIC)、汎用コンピュータ、またはその他の同様のハードウェアデバイスが本開示を実装するために使用可能であることに留意するべきである。1つの例示の実施形態では、本開示のソフトウェアプログラムは、上述されたステップまたは機能を実現するためにプロセッサによって実行されてもよい。同様に、本開示の(関連のデータ構造を含む)ソフトウェアプログラムは、コンピュータ可読記録媒体、例えば、RAMメモリ、磁気または光学ドライブまたはフロッピーディスク、及び同様のデバイスに記憶可能である。さらに、本開示のいくつかのステップまたは機能は、ハードウェア、例えば、プロセッサと協働してさまざまなステップまたは機能を行う回路によって実装されてもよい。
さらに、本開示の一部分は、コンピュータプログラム製品、例えば、コンピュータプログラム命令として適用可能であり、コンピュータによって実行される時、本開示による方法及び/または技術的解決策は、コンピュータの動作を通して呼び出され得る、または提供可能である。本開示の方法を呼び出すプログラム命令は、固定された、または取り外し可能な記録媒体に記憶されてもよい、及び/または、ブロードキャスト、または他の信号搬送媒体におけるデータストリームによって送信されてもよい、及び/または、プログラム命令に従って動作するコンピュータデバイスの作業メモリに記憶されてもよい。本明細書において、本開示による例示の実施形態は装置を含み、該装置は、コンピュータプログラム命令を記憶するように構成されたメモリ、及びプログラム命令を実行するように構成されたプロセッサを含み、コンピュータプログラム命令がプロセッサによって実行される時、装置は、本開示の複数の例示の実施形態に基づいて、方法及び/または技術的解決策を実行するようにトリガされる。
当業者にとって、本開示は前述の例示的な実施形態の詳細に限定されるものではなく、本開示は、本開示の趣旨または基本的特徴から逸脱することなく、他の具体的な形式で実施可能であることは明らかである。従って、どの観点からでも、例示の実施形態は、限定的なものではなく例示的なものとみなされるものであり、本開示の範囲は、上記の説明によってではなく、添付の特許請求の範囲によって定められるものであるため、本開示は、特許請求の範囲の均等な要素の意味及び範囲内にある全ての変更を包含することが意図される。特許請求の範囲のいずれの参照符号も、関係のある特許請求の範囲を限定するものとみなされるべきではない。さらに、「include(含む)」という言い回しは他のユニットまたはステップを除外せず、かつ単数形のものは複数形のものを除外しないことは明らかである。装置の請求項で述べた複数のユニットまたは装置はまた、ソフトウェアまたはハードウェアを通して、1つのユニットまたは装置によって実施されてもよい。「第1」及び「第2」などの用語は、名称を表すために使用され、いかなる具体的な順序も示さない。

Claims (20)

  1. 実行期間、及び前記実行期間に実行される負荷バランシング方法を含む時限タスクを取得することと、
    現在の時刻が前記実行期間に入っているかを判定することと、
    前記時限タスクに対応する前記負荷バランシング方法を取得することと、
    前記時限タスクに対応する前記実行期間が終了するまで、前記時限タスク対応する前記負荷バランシング方法に基づいて複数のサーバ間で負荷バランシングを処理することと、を含む、方法。
  2. 前記時限タスクを取得することは、
    ユーザリクエストを取得することであって、前記ユーザリクエストは、リクエスト期間、及び前記リクエスト期間に実行される負荷バランシング方法を含む、前記取得することと、
    前記ユーザリクエストに基づいて前記時限タスクを生成することと、
    前記リクエスト期間に基づいて前記時限タスクの前記実行期間を決定することと、
    前記ユーザリクエストに基づいて、前記実行期間に実行される前記負荷バランシング方法を決定することと、を含む、請求項1に記載の方法。
  3. 前記ユーザリクエストに基づいて、前記実行期間に実行される前記負荷バランシング方法を決定することは、
    前記ユーザリクエストに基づいて負荷バランシングの性能パラメータ情報を取得することと、
    前記負荷バランシングの性能パラメータ情報に基づいて、前記実行期間に実行される前記負荷バランシング方法を決定することと、を含む、請求項2に記載の方法。
  4. 前記性能パラメータ情報は帯域幅量を含む、請求項3に記載の方法。
  5. 前記性能パラメータ情報は作成可能な接続の数を含む、請求項3に記載の方法。
  6. 前記性能パラメータ情報は1秒当たりの新たな作成可能な接続の数を含む、請求項3に記載の方法。
  7. 前記ユーザリクエストに基づいて、前記実行期間に実行される前記負荷バランシング方法を決定することは、
    取得された前記負荷バランシングの性能パラメータ情報が前記負荷バランシングの既存のサービス能力の性能パラメータ情報を超える場合に、前記時限タスクの生成を停止することと、
    アラーム通知情報を返すことと、を含む、請求項3に記載の方法。
  8. 前記時限タスクを取得することは、
    前記リクエスト期間と前記実行期間とが重複期間を有する場合に、前記重複期間に基づいて前記時限タスクの前記実行期間を更新することと、
    更新された前記実行期間に基づいて前記時限タスクを更新することと、をさらに含む、請求項2に記載の方法。
  9. 前記時限タスクに対応する前記実行期間が終了すると、前記負荷バランシング方法を削除し、次の実行期間に対応する次の負荷バランシング方法を取得することをさらに含む、請求項1に記載の方法。
  10. 前記時限タスクは、以下のいずれか、すなわち、
    周期的かつ循環的に実行される第1の時限タスク、
    一度実行される第2の時限タスク、及び、
    一度実行される前記第1の時限タスクと周期的かつ循環的に実行される前記第2の時限タスクとを連係させる第3の時限タスクのいずれかを含む、請求項1に記載の方法。
  11. 実行期間、及び、前記実行期間に実行される負荷バランシング方法を含む時限タスクを取得して記録する取得装置と、
    現在の時刻が前記実行期間に入っているかを判定し、前記時限タスクに対応する前記負荷バランシング方法を取得し、前記時限タスクに対応する前記実行期間が終了するまで、前記時限タスクに対応する前記負荷バランシング方法に基づいて複数のサーバ間で負荷バランシングを処理する実行装置と、を含む、デバイス。
  12. 前記取得装置は、
    ユーザリクエストを取得するリクエスト取得ユニットであって、前記ユーザリクエストは、リクエスト期間、及び前記リクエスト期間に実行される負荷バランシング方法を含む、前記リクエスト取得ユニットと、
    前記ユーザリクエストに基づいて前記時限タスクを生成し、前記リクエスト期間に基づいて前記時限タスクの前記実行期間を決定する生成ユニットと、
    前記ユーザリクエストに基づいて、前記実行期間に実行される前記負荷バランシング方法を決定する決定ユニットと、を含む、請求項11に記載のデバイス。
  13. 前記決定ユニットはさらに、
    前記ユーザリクエストに基づいて負荷バランシングの性能パラメータ情報を取得し、
    前記負荷バランシングの性能パラメータ情報に基づいて、前記実行期間に実行される前記負荷バランシング方法を決定する、請求項12に記載のデバイス。
  14. 前記性能パラメータ情報は、以下のうちの少なくとも1つ、すなわち、
    帯域幅量、
    作成可能な接続の数、及び、
    1秒当たりの新しい作成可能な接続の数のうちの少なくとも1つを含む、請求項13に記載のデバイス。
  15. 前記判断ユニットはさらに、
    取得された前記負荷バランシングの性能パラメータ情報が前記負荷バランシングの既存のサービス能力の性能パラメータ情報を超える場合に、前記時限タスクの生成を停止し、
    アラーム通知情報を返す、請求項12に記載のデバイス。
  16. 前記取得装置は、
    前記リクエスト期間と既存の前記時限タスクの前記実行期間とが重複期間を有する場合に、前記重複期間に基づいて前記既存の時限タスクの前記実行期間を更新する第1の更新ユニットを含む、請求項11に記載のデバイス。
  17. 前記取得装置は、
    更新された前記実行期間に基づいて前記既存の時限タスクを更新する第2の更新ユニットをさらに含み、前記時限タスクは、一度実行される時限タスク、または周期的かつ循環的に実行される時限タスクである、請求項16に記載のデバイス。
  18. 前記実行装置はさらに、
    前記時限タスクに対応する前記実行期間が終了すると、前記負荷バランシング方法を削除し、次の実行期間に対応する次の負荷バランシング方法を取得する、請求項11に記載のデバイス。
  19. 前記時限タスクは、以下のいずれか、すなわち、
    周期的かつ循環的に実行される第1の時限タスク、
    一度実行される第2の時限タスク、及び、
    一度実行される前記第1の時限タスクと周期的かつ循環的に実行される前記第2の時限タスクとを連係させる第3の時限タスクのいずれかを含む、請求項11に記載のデバイス。
  20. 1つまたは複数のプロセッサによって実行される時、前記プロセッサに、
    時限タスクを取得することであって、前記時限タスクは、実行期間、及び、前記実行期間に実行される負荷バランシング方法を含む、前記取得することと、
    現在の時刻が前記実行期間に入っているかを判定することと、
    前記時限タスクに対応する前記負荷バランシング方法を取得することと、
    前記時限タスクに対応する前記実行期間が終了するまで、前記時限タスクに対応する前記負荷バランシング方法に基づいて複数のサーバ間で負荷バランシングを処理することと、を含む動作を行わせるコンピュータ実行可能命令を記憶した1つまたは複数のメモリ。
JP2018546688A 2016-03-29 2017-03-28 時間ベース調節可能負荷バランシング Pending JP2019518258A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201610188481.2 2016-03-29
CN201610188481 2016-03-29
PCT/US2017/024611 WO2017172820A1 (en) 2016-03-29 2017-03-28 Time-based adjustable load balancing

Publications (1)

Publication Number Publication Date
JP2019518258A true JP2019518258A (ja) 2019-06-27

Family

ID=59961053

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018546688A Pending JP2019518258A (ja) 2016-03-29 2017-03-28 時間ベース調節可能負荷バランシング

Country Status (5)

Country Link
US (1) US20170286167A1 (ja)
EP (1) EP3437273A4 (ja)
JP (1) JP2019518258A (ja)
CN (1) CN107241380B (ja)
WO (1) WO2017172820A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11102063B2 (en) 2017-07-20 2021-08-24 Vmware, Inc. Methods and apparatus to cross configure network resources of software defined data centers
US10756967B2 (en) 2017-07-20 2020-08-25 Vmware Inc. Methods and apparatus to configure switches of a virtual rack
US10841235B2 (en) * 2017-07-20 2020-11-17 Vmware, Inc Methods and apparatus to optimize memory allocation in response to a storage rebalancing event
US10530678B2 (en) 2017-07-20 2020-01-07 Vmware, Inc Methods and apparatus to optimize packet flow among virtualized servers
US11042402B2 (en) * 2019-02-26 2021-06-22 Sap Se Intelligent server task balancing based on server capacity
US11126466B2 (en) 2019-02-26 2021-09-21 Sap Se Server resource balancing using a fixed-sharing strategy
US11307898B2 (en) 2019-02-26 2022-04-19 Sap Se Server resource balancing using a dynamic-sharing strategy
CN111381961A (zh) * 2019-04-09 2020-07-07 深圳市鸿合创新信息技术有限责任公司 一种处理定时任务的方法、装置与电子设备
CN110119306B (zh) * 2019-05-22 2020-05-26 无锡华云数据技术服务有限公司 作业自动调度均衡方法、装置、设备及存储介质
CN112714028A (zh) * 2021-01-29 2021-04-27 紫光云技术有限公司 一种负载均衡slb流量、数据包参数的监控方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06214962A (ja) * 1993-01-19 1994-08-05 Hitachi Ltd 負荷分散制御方法および分散処理システム
JP2005141441A (ja) * 2003-11-06 2005-06-02 Hitachi Ltd 負荷分散システム
WO2012093472A1 (ja) * 2011-01-05 2012-07-12 株式会社日立製作所 サービスの予約管理方法、仮想計算機システム及び記憶媒体
JP2013514726A (ja) * 2009-12-17 2013-04-25 レベル スリー コミュニケーションズ,エルエルシー データフィード資源予約システム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8554929B1 (en) * 2002-05-03 2013-10-08 Foundry Networks, Llc Connection rate limiting for server load balancing and transparent cache switching
US7203944B1 (en) * 2003-07-09 2007-04-10 Veritas Operating Corporation Migrating virtual machines among computer systems to balance load caused by virtual machines
CN101140528B (zh) * 2007-08-31 2013-03-20 中兴通讯股份有限公司 一种实现集群内定时任务负载分担的方法及装置
US20090150565A1 (en) * 2007-12-05 2009-06-11 Alcatel Lucent SOA infrastructure for application sensitive routing of web services
US8473956B2 (en) * 2008-01-15 2013-06-25 Microsoft Corporation Priority based scheduling system for server
US8276004B2 (en) * 2009-12-22 2012-09-25 Intel Corporation Systems and methods for energy efficient load balancing at server clusters
US8909783B2 (en) * 2010-05-28 2014-12-09 Red Hat, Inc. Managing multi-level service level agreements in cloud-based network
CN103019811B (zh) * 2012-10-19 2015-07-15 北京神舟航天软件技术有限公司 多任务资源冲突分段检测方法
WO2015025066A1 (es) * 2013-08-21 2015-02-26 Telefonica, S.A. Procedimiento y sistema para equilibrar solicitudes de contenido en una red proveedora de servidores
CN105357090B (zh) * 2015-11-10 2018-12-14 中国建设银行股份有限公司 外连总线服务***的负载均衡方法及设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06214962A (ja) * 1993-01-19 1994-08-05 Hitachi Ltd 負荷分散制御方法および分散処理システム
JP2005141441A (ja) * 2003-11-06 2005-06-02 Hitachi Ltd 負荷分散システム
JP2013514726A (ja) * 2009-12-17 2013-04-25 レベル スリー コミュニケーションズ,エルエルシー データフィード資源予約システム
WO2012093472A1 (ja) * 2011-01-05 2012-07-12 株式会社日立製作所 サービスの予約管理方法、仮想計算機システム及び記憶媒体

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
"「[特別企画] 共用サーバーと専用サーバーのいいとこ取り? マネージドサーバーサービスとは」", クラウド WATCH, JPN6021018479, 24 September 2014 (2014-09-24), ISSN: 0004507181 *
"「ライブ放送支援サービス」", 日経ネットビジネス, vol. No.103(2002年10月号), JPN6021018476, 25 September 2002 (2002-09-25), JP, pages 144 - 146, ISSN: 0004507178 *
"「負荷分散装置 ECサイト急増でSIの必須商材に」", テレコミュニケーション, vol. Vol.17, No.7(2000年7月号), JPN6021018475, 25 June 2000 (2000-06-25), JP, pages 92 - 99, ISSN: 0004507177 *
みやた ひろし, 「インフラ/ネットワークエンジニアのためのネットワーク技術&設計入門」, vol. 初版, JPN6021018481, 31 December 2013 (2013-12-31), JP, pages 40 - 42, ISSN: 0004507183 *
三輪 賢一, 「プロのための[図解]ネットワーク機器入門」, vol. 初版, JPN6021018478, 5 December 2012 (2012-12-05), JP, pages 357 - 359, ISSN: 0004507180 *
伊東一博(外2名): "「クラウドデータセンターの統合運用を支えるソリューション製品「NetCracker」」", NEC技報, vol. 63, no. 2, JPN6021018480, 23 April 2010 (2010-04-23), JP, pages 106 - 109, ISSN: 0004507182 *
日本WEBデザイナーズ協会 編, 「WEBディレクション標準スキル152」, vol. 初版, JPN6021018477, 16 March 2012 (2012-03-16), JP, pages 240 - 241, ISSN: 0004507179 *

Also Published As

Publication number Publication date
WO2017172820A1 (en) 2017-10-05
CN107241380B (zh) 2020-07-28
US20170286167A1 (en) 2017-10-05
EP3437273A4 (en) 2019-12-04
CN107241380A (zh) 2017-10-10
EP3437273A1 (en) 2019-02-06

Similar Documents

Publication Publication Date Title
JP2019518258A (ja) 時間ベース調節可能負荷バランシング
Luo et al. Container-based fog computing architecture and energy-balancing scheduling algorithm for energy IoT
Wang et al. Efficient multi-tasks scheduling algorithm in mobile cloud computing with time constraints
Skarlat et al. Towards qos-aware fog service placement
CN107241281B (zh) 一种数据处理方法及其装置
US20150295970A1 (en) Method and device for augmenting and releasing capacity of computing resources in real-time stream computing system
CN105808341B (zh) 一种资源调度的方法、装置和***
CN106886434B (zh) 一种分布式应用安装方法与装置
US10148574B2 (en) Load balancing for mesh computing
US9792339B2 (en) Automatic content replication
CN104113576A (zh) 一种客户端的更新方法及装置
CN102426544A (zh) 任务分配方法和***
US20210111949A1 (en) Hierarchical cloud computing resource configuration techniques
TWI697223B (zh) 資料處理方法
CN104199912A (zh) 一种任务处理的方法及装置
CN104539730A (zh) 一种hdfs中面向视频的负载均衡方法
US10148592B1 (en) Prioritization-based scaling of computing resources
US20230136612A1 (en) Optimizing concurrent execution using networked processing units
CN102419753B (zh) 信息处理设备、信息处理方法和信息处理***
US20180218415A1 (en) Data center and information processing device
CN111177160B (zh) 服务更新方法、装置、服务器及介质
CN110704851A (zh) 公有云数据处理方法和设备
CN108228323B (zh) 基于数据本地性的Hadoop任务调度方法及装置
CN105868012B (zh) 处理用户请求的方法和装置
CN112583732B (zh) 基于控制粒度池对接口调用的流量控制方法及相关设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200311

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210525

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20211214