JP2011070435A - 計算機システム、リクエスト処理方法及びサーバ装置 - Google Patents

計算機システム、リクエスト処理方法及びサーバ装置 Download PDF

Info

Publication number
JP2011070435A
JP2011070435A JP2009221426A JP2009221426A JP2011070435A JP 2011070435 A JP2011070435 A JP 2011070435A JP 2009221426 A JP2009221426 A JP 2009221426A JP 2009221426 A JP2009221426 A JP 2009221426A JP 2011070435 A JP2011070435 A JP 2011070435A
Authority
JP
Japan
Prior art keywords
computer
request
threshold
requests
received
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
JP2009221426A
Other languages
English (en)
Inventor
Atsuyuki Inui
敦行 乾
Hirofumi Nagasuga
弘文 長須賀
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 JP2009221426A priority Critical patent/JP2011070435A/ja
Publication of JP2011070435A publication Critical patent/JP2011070435A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】SaaSアプリケーションにおいて、ある組織のユーザからのリクエスト量が多過ぎるために、他の組織のユーザのリクエストを処理できないという状況が発生する。
【解決手段】第1の計算機と、第1の計算機から送信されるリクエストを受け付ける第2の計算機とを備える計算機システムであって、第2の計算機は、第1の計算機からリクエストを受信した場合、受け付けたリクエストの総数が第1の閾値以下か否かを判定し、受け付けたリクエストの総数が第1の閾値より大きいと判定された場合、第1の計算機から受信したリクエストの送信元のユーザが所属するグループを特定し、特定されたグループから受け付けたリクエスト数が第2の閾値以下か否かを判定し、特定されたグループから受け付けたリクエスト数が第2の閾値以下と判定された場合、特定されたグループからのリクエストを受け付ける。
【選択図】図1

Description

本発明は、一つのシステムを複数の組織が利用する形態であるマルチテナント対応システム構成方法に関し、組織間で偏りなくリクエストを処理するための技術に関する。
これまでクライアント装置上で実行するデスクトップアプリケーションとして実装されてきた企業内の業務システムの多くが、Web上のサービスSaaS(Software as a Service)として提供されはじめている。
SaaSの特徴としてマルチテナントが挙げられる。マルチテナントとは、一つのシステムを複数の組織が利用する形態のことである。ここで、組織とは、複数のユーザから構成されるグループのことを示す。
マルチテナントでは、組織ごとのデータの管理が課題となり、当該課題を解決するための方法が考えられている(例えば、特許文献1参照)。
特表2009−518713号公報
特許文献1には、マルチテナントデータベース環境の構築方法に関する技術が開示されており、一つのシステムを複数の組織のユーザが利用することが可能となる。
しかし、特許文献1に開示された技術には、組織間のサービスバランスに関する技術が開示されていない。したがって、ある組織からのリクエスト量が多過ぎるために、サービスを提供するシステムが、他の組織のリクエストを処理できないという状況が発生する。
本発明の代表的な一例を示せば以下の通りである。すなわち、一以上のクライアント装置からリクエストを受け付ける第1の計算機と、前記第1の計算機から送信される前記リクエストを受け付ける第2の計算機とを備える計算機システムであって、前記第1の計算機は、第1のプロセッサと、前記第1のプロセッサに接続される第1のメモリと、前記第2の計算機と通信するための第1の通信部を備え、前記第2の計算機は、第2のプロセッサと、前記第2のプロセッサに接続され、前記第2の計算機に設定される第1の閾値及び前記クライアント装置を操作するユーザが所属するグループごとに設定される第2の閾値が格納される第2のメモリと、前記第1の計算機と通信するための第2の通信部を備え、前記第2の計算機は、前記第1の計算機からリクエストを受信した場合、前記第1の計算機から受け付けたリクエストの総数を算出して、前記第1の計算機から受け付けたリクエストの総数が前記第1の閾値以下か否かを判定し、前記第1の計算機から受け付けたリクエストの総数が前記第1の閾値より大きいと判定された場合、前記第1の計算機から受信したリクエストの送信元のユーザが所属する前記グループを特定し、前記特定されたグループから受け付けたリクエスト数を算出し、前記特定されたグループから受け付けたリクエスト数が前記第2の閾値以下か否かを判定し、前記特定されたグループから受け付けたリクエスト数が前記第2の閾値以下と判定された場合、前記特定されたグループからのリクエストを受け付けることを特徴とする。
本発明によれば、任意のグループにおけるリクエスト数が少ない場合は、当該グループのユーザのリクエストを優先的に受け付けることができる。したがって、特定のグループのユーザからのリクエスト数が多いために、他のグループのユーザからのリクエストを受け付けできない状態を回避することができる。
本発明の第1の実施形態の計算機システムの構成例を示すブロック図である。 本発明の第1の実施形態の流量制御装置がWebブラウザからリクエストを受け付けた場合に実行する処理を説明するフローチャートである。 本発明の第1の実施形態のサーバのスレッドが実行する処理を説明するフローチャートである。 本発明の第1の実施形態のスレッド−要求元対応テーブルの一例を示す説明図である。 本発明の第1の実施形態のステップ303におけるスレッド−要求元対応テーブルの変化を説明する図である。 本発明の第1の実施形態の閾値テーブルの一例を示す説明図である。 本発明の第1の実施形態のリクエスト取得プログラムが実行するステップ301における処理の詳細を説明するフローチャートである。 本発明の第1の実施形態における各組織の処理中のサービス量の一例を示した図である。 本発明の第2の実施形態のサーバの構成を示すブロック図である。 本発明の第2の実施形態の閾値制御プログラムによって実行される処理を説明するフローチャートである。 本発明の第2の実施形態におけるシステムの閾値Tの変更方法を説明するための図である。 本発明の第3の実施形態の計算機システムの構成例を示すブロック図である。
[第1の実施形態]
以下、図1から図7を用いて、本発明の第1の実施形態を説明する。
図1は、本発明の第1の実施形態の計算機システムの構成例を示すブロック図である。
計算機システムは、情報処理装置101、110、150を備える。情報処理装置101と情報処理装置110とはインターネットを介して接続され、情報処理装置110と情報処理装置150とはLANを介して接続される。なお、情報処理装置101、110、150の接続方式は、これらに限定されない。
情報処理装置101は、CPU(図示省略)、メモリ(図示省略)、記憶装置(図示省略)、及び通信部(図示省略)を備える。
メモリ(図示省略)にはWebブラウザが格納され、CPU(図示省略)によって実行される。記憶装置(図示省略)は、CPU(図示省略)が処理を実行するときに必要となる情報を格納する。通信部(図示省略)は、インターネットを介して情報処理装置110と接続する。
本実施形態において、計算機システムは、複数のユーザを一つのグループとして管理している。以下、当該グループを組織と呼ぶ。任意の組織に所属するユーザは、Webブラウザを用いて、情報処理装置110にリクエストを送信する。
以下、Webブラウザを格納する情報処理装置101をWebブラウザ101と呼ぶ。また、リクエストを送信するユーザが所属する組織を要求元とも呼ぶ。
情報処理装置110は、ネットワークを介してWebブラウザ101からリクエストを受信し、現在処理されているリクエストの数に応じて、情報処理装置150に受信したリクエストを送信する。以下、情報処理装置110を、流量制御装置110と呼ぶ。なお、流量制御装置110が実行する処理の詳細については、図2を用いて後述する。
流量制御装置110はCPU120、メモリ130、通信部140、及び記憶装置(図示省略)を備える。
CPU120は、メモリ130上に展開されるプログラムを実行する。
記憶装置(図示省略)は、CPU120が処理を実行するために必要となる情報を格納する。記憶装置(図示省略)は、例えば、ハードディスク等が考えられる。
メモリ130は、流量制御装置110が備える機能を実現するために必要となるプログラム、及び情報を格納する。メモリ130上に展開されたプログラムはCPU120によって実行される。
メモリ130は、リクエスト取得プログラム131、リクエスト数確認プログラム132、リクエスト投入プログラム133、リクエスト数更新プログラム134、リクエスト数135、及び上限値136を格納する。
リクエスト取得プログラム131は、Webブラウザ101からリクエストを取得するプログラムである。リクエスト数確認プログラム132は、リクエスト数135を確認するプログラムである。リクエスト投入プログラム133は、情報処理装置150にリクエストを投入(送信)するプログラムである。リクエスト数更新プログラム134は、リクエスト数135を更新するプログラムである。
また、リクエスト数135は、情報処理装置150に投入(送信)されたリクエストの数を示す。メモリ130は、パラメータ値としてリクエスト数135を格納する。上限値136は、流量制御装置110が受け付けることが可能なリクエストの数を示す。つまり、流量制御装置110は、上限値136より多い数のリクエストの受け付けを拒否する。メモリ130は、パラメータ値として上限値136を格納する。
なお、本実施形態において、上限値136は、予め設定された値であるが、計算機システムの管理者等によって、変更可能である。
通信部140は、LANを介して情報処理装置150と接続する。
なお、流量制御装置110は、プロキシサーバとして動作してもよい。また、流量制御装置110が備える機能を他の装置、例えば、情報処理装置150が備えてもよい。
情報処理装置150は、ネットワークを介して流量制御装置110からリクエストを受信し、受信したリクエストに対応するサービスを提供する。本実施形態の情報処理装置150は、各組織に提供されているサービス量及び提供されている全サービス量に基づいて、リクエストを受け付けるか否かを判定する。以下、情報処理装置150を、サーバ150と呼ぶ。
サーバ150は、CPU160、メモリ170、通信部180、及び記憶装置(図示省略)を備える。
CPU160は、メモリ170上に展開されるプログラムを実行する。
記憶装置(図示省略)は、CPU160が処理を実行するために必要となる情報を格納する。記憶装置(図示省略)は、例えば、ハードディスク等が考えられる。
メモリ170は、流量制御装置110が備える機能を実現するために必要となるプログラム、及び情報を格納する。メモリ130上に展開されたプログラムはCPU120によって実行される。
メモリ170は、要求元識別プログラム171、キュー追加プログラム172、リクエスト取得プログラム173、リクエスト処理プログラム174、リクエストキュー175、スレッド−要求元対応テーブル176、閾値テーブル177、最後にチェックした組織識別子178、及びスレッドプール179を格納する。
要求元識別プログラム171は、流量制御装置110から投入されたリクエストの要求元を識別するプログラムである。キュー追加プログラム172は、流量制御装置110から投入されたリクエストをリクエストキュー175に追加するプログラムである。リクエスト取得プログラム173は、閾値テーブル177を参照して、リクエストキュー175に格納されるリクエストを取得するプログラムである。リクエスト処理プログラム174は、リクエストキュー175から取得されたリクエストに対応する処理を実行するプログラムである。
リクエストキュー175は、流量制御装置110から受信したリクエストを格納する。
スレッドプール179は、流量制御装置110から受信したリクエストに対応する処理を実行するスレッドを格納する。本実施形態においては、一つのリクエストが一つのスレッドに対応し、当該スレッドによって、対応するリクエストの処理が実行される。図1に示す例では、スレッドプール179には、スレッド1〜スレッドnが格納される。
本実施形態において、スレッド数がサーバ150の受け付け可能なリクエスト数となり、スレッド数が多いほどサーバ150の処理能力は高いことを意味する。
スレッド−要求元対応テーブル176は、スレッドと、当該スレッドに対応するリクエストの要求元との対応関係を格納する。スレッド−要求元対応テーブル176は、サーバ150が現在処理中のサービス量(リクエスト数)を計測するために用いられる。
閾値テーブル177は、システム全体のリクエスト数の閾値、及び組織ごとのリクエスト数の閾値を定義するテーブルである。システム全体のリクエスト数の閾値は、組織ごとのリクエスト数の閾値を判断するか否かを判定するための閾値である。また、組織ごとのリクエスト数の閾値は、各組織からリクエストを受け付け可能か否かを判定するための閾値である。閾値テーブル177の詳細については、図6を用いて後述する。また、これらの閾値を用いた処理の詳細は、図7を用いて後述する。
最後にチェックした組織識別子178は、サーバ150が後述する処理(図6参照)において、最後に確認した組織を識別するための識別子である。
図2は、本発明の第1の実施形態の流量制御装置110がWebブラウザ101からリクエストを受け付けた場合に実行する処理を説明するフローチャートである。
なお、以下で説明する処理は、CPU120がメモリ130に格納されるプログラムを読み出し、読み出されたプログラムを実行することによって実現される。
リクエスト取得プログラム131は、Webブラウザ101から送信されるリクエストの到着を監視する(ステップ201)。なお、リクエスト取得プログラム131は、Webブラウザ101から送信されるリクエストの到着を常時監視してもよいし、周期的に監視してもよい。
リクエスト取得プログラム131がWebブラウザ101からリクエストの到着を検出した場合、リクエスト数確認プログラム132は、リクエスト数135及び上限値136を参照し、リクエスト数135が上限値136以下であるか否かを判定する(ステップ202)。
リクエスト数135が上限値136より大きいと判定された場合、流量制御装置110は、Webブラウザ101から送信されたリクエストの受け付けを拒否する。つまり、Webブラウザ101から送信されたリクエストが破棄される。流量制御装置110は、Webブラウザ101から送信されたリクエストを破棄した後に、ステップ201に戻り、同様の処理を実行する。
リクエスト数135が上限値136以下であると判定された場合、リクエスト数更新プログラム134は、リクエスト数135の値を「1」増加する(ステップ203)。
また、リクエスト投入プログラム133は、Webブラウザ101から送信されたリクエストをサーバ150に投入する(ステップ204)。
サーバ150から、投入されたリクエストに対するレスポンスが返ってきた場合、リクエスト数更新プログラム134は、リクエスト数135の値を「1」減少させる(ステップ205)。
以下、図2において説明した処理の具体例について説明する。
上限値136が「100」、及びリクエスト数135が「90」の場合について説明する。この場合、Webブラウザ101からリクエストの到着を検出した流量制御装置110は、リクエスト数135と上限値136とを参照して、リクエスト数135が上限値136以下であると判定する。
次に、リクエスト数更新プログラム134がリクエスト数135を更新(「1」増加)した後、リクエスト投入プログラム133がWebブラウザ101から受信したリクエストをサーバ150に投入する。
投入されたリクエストに対するレスポンスがサーバ150から返ってきた場合、リクエスト数更新プログラム134は、リクエスト数135を「1」減少する。
なお、リクエスト数135が「100」であると判定された場合、流量制御装置110は、Webブラウザ101から到着したリクエストを破棄し、次のリクエストの到着を監視する。
流量制御装置110は、リクエスト数135及び上限値136に基づいて、当該リクエストをサーバ150に投入するか否かを判定する。
図3は、本発明の第1の実施形態のサーバ150のスレッドが実行する処理を説明するフローチャートである。スレッドは、周期的に以下で説明する処理を実行する。
なお、以下で説明する処理は、CPU160がメモリ170に格納されるプログラムを読む出し、読み出されたプログラムを実行することによって実現される。
まず、リクエスト取得プログラム173が、閾値テーブル177を参照して、リクエストキュー175からリクエストを取得するための処理を実行する(ステップ301)。リクエスト取得プログラム173が実行する処理の詳細は、図7を用いて後述する。
リクエスト取得プログラム173は、リクエストを取得できたか否かを判定する(ステップ302)。
リクエストを取得できないと判定された場合、リクエスト取得プログラム173は、所定時間スリープした後(ステップ306)、再びリクエストを取得するための処理を実行する。
リクエストを取得できたと判定された場合、要求元識別プログラム171は、取得されたリクエストの要求元を特定する。次に、リクエスト取得プログラム173は、特定された要求元に基づいて、スレッド−要求元対応テーブル176を更新する(ステップ303)。
具体的には、リクエスト取得プログラム173は、スレッド−要求元対応テーブル176の取得されたリクエストに対応するスレッドのエントリに、特定された要求元を追加する。
なお、本実施形態において、要求元から送信されるリクエストには、要求元(リクエストを送信するユーザが所属する組織)を識別するための識別子が含まれる。要求元識別プログラム171は、当該識別子を参照することによって、取得されたリクエストの要求元を判別することができる。
また、ユーザがWebブラウザ101にログイン時に用いた情報(ログイン情報)、例えば、ユーザID、をサーバ150が取得し、要求元識別プログラム171が、取得された情報に基づいて、要求元を特定してもよい。この場合、サーバ150が組織と組織に所属するユーザIDとの対応関係を管理するテーブルを備え、要求元識別プログラム171が、当該テーブルを参照して、ユーザIDから取得されたリクエストの要求元を判別できる。
スレッドプール179のスレッドによって、取得されたリクエストが処理される(ステップ304)。具体的には、スレッド上でリクエスト処理プログラム174が実行され、リクエストが処理される。
リクエストの処理が終了した後、スレッドは、スレッド−要求元対応テーブル176の当該スレッドに対応するエントリから要求元を削除し(ステップ305)、ステップ301に戻り同様の処理(ステップ301〜306)を実行する。
図4は、本発明の第1の実施形態のスレッド−要求元対応テーブル176の一例を示す説明図である。
スレッド−要求元対応テーブル176は、スレッド番号401と処理中の要求元402とを含む。
スレッド番号401は、スレッドプール179に格納されるスレッドを識別するための識別子である。処理中の要求元402は、スレッドに対応するリクエストの要求元を識別するための識別子である。なお、スレッドに対応するリクエストが無い場合、処理中の要求元402は空白となる。この場合、スレッドプール179に格納されるスレッドは待機状態となる。
以下、図5を用いて、図3のステップ303における処理の具体例を説明する。
図5は、本発明の第1の実施形態のステップ303におけるスレッド−要求元対応テーブル176の変化を説明する図である。
図5に示す例では、スレッド番号401が「2」のスレッドは、待機状態となっている。
ステップ302において、リクエストが取得されたと判定された場合、要求元識別プログラム171が、取得されたリクエストの要求元を特定する。ここでは、取得されたリクエストの要求元は「B」であると特定される。なお、要求元識別プログラム171は、CPU160によってメモリ170から読み出され、CPU160によって実行される。
次に、リクエスト取得プログラム173は、スレッド−要求元対応テーブル176を参照して、待機状態のスレッドを検索し、スレッド番号401が「2」のスレッドが待機状態であることを検出する。なお、リクエスト取得プログラム173は、CPU160によってメモリ170から読み出され、CPU160によって実行される。
リクエスト取得プログラム173は、スレッド番号401が「2」のエントリの処理中の要求元402に「B」を追加する。
これによって、サーバ150は、当該サーバ150が処理している要求元のリクエストの数を把握することができる。
図6は、本発明の第1の実施形態の閾値テーブル177の一例を示す説明図である。
閾値テーブル177は、組織701と閾値702とを含む。
組織701は、リクエストの要求元のユーザが所属する組織を識別するための識別子である。なお、サーバ150に対応するエントリの組織701には、サーバ150を示す識別子「システム」が格納される。閾値702は、組織701に対応する組織のリクエスト数の閾値を示す。
本実施形態では、閾値702に格納された閾値に基づいて後述する処理(図7参照)が実行される。
図6に示すように、閾値テーブル177は、各組織の閾値と、システム(サーバ150)の閾値とを格納する。具体的には、組織Aの閾値は「30」、組織Bの閾値は「20」、組織Cの閾値は「10」、及びシステム(サーバ150)の閾値は「50」である。
次に、ステップ301における処理について説明する。
図7は、本発明の第1の実施形態のリクエスト取得プログラム173が実行するステップ301における処理の詳細を説明するフローチャートである。リクエスト取得プログラム173は、サーバ150がリクエストを取得する度に以下で説明する処理を実行する。
なお、以下で説明する処理は、CPU160がメモリ170に格納されるプログラムを読む出し、読み出されたプログラムを実行することによって実現される。
リクエスト取得プログラム173は、最後にチェックした組織識別子178を参照し、最後にチェックした組織識別子178に示された組織の次の組織から以下の処理を開始する(ステップ601)。以下、ステップ601において、処理の対象となる組織を処理対象組織とも呼ぶ。
なお、リクエスト取得プログラム173は、閾値テーブル177、及び最後にチェックした組織識別子178を参照することによって、処理対象組織が分かる。
例えば、前回実行されたステップ301の処理において、「組織B」で処理が終了した場合、最後にチェックした組織識別子178には、「組織B」が格納され、当該最後にチェックした組織識別子178を参照したリクエスト取得プログラム173は、「組織C」から処理を開始する。なお、各組織における処理の順番の決定方法は、予めサーバ150に設定された各組織の処理の順番に基づいて決定する方法、及び、サーバ150が格納する、各組織の処理の順番を規定するテーブル(図示省略)に基づいて決定する方法が考えられる。
毎回、同じ組織から処理が開始された場合当該組織のリクエストが優先的に処理されるが、ステップ601の処理によって、各組織のリクエストを均等に処理できる。
リクエスト取得プログラム173は、リクエストキュー175に処理対象組織のリクエストが格納されるか否かを判定する(ステップ602)。
リクエストキュー175に処理対象組織のリクエストが格納されないと判定された場合、リクエスト取得プログラム173は、流量制御装置110にnullを返す(ステップ603)。
リクエストキュー175に処理対象組織のリクエストが格納されると判定された場合、リクエスト取得プログラム173は、サーバ150が処理する全てのサービス量(総サービス量)がシステム全体(サーバ150)の閾値702以下であるか否かを判定する(ステップ604)。
具体的には、リクエスト取得プログラム173は、スレッド−要求元対応テーブル176を参照して、システム(サーバ150)全体の総サービス量Q(t)を算出する。次に、リクエスト取得プログラム173は、閾値テーブル177を参照して、算出された総サービス量Q(t)がシステムの閾値702以下であるか否を判定する。以下、システムの閾値702をシステムの閾値Tとも呼ぶ。
ステップ604における処理は、組織間のサービス量を調整する必要があるか否かを判定するための処理である。総サービス量Q(t)がシステムの閾値以下である場合、リクエスト取得プログラム173は、組織間のサービス量を調整する必要がないと判定する。総サービス量Q(t)がシステムの閾値より大きい場合、リクエスト取得プログラム173は、各組織間のサービス量を調整する必要がある判定し、ステップ606以下の処理を開始する。
なお、総サービス量Q(t)の算出方法としては、処理中の要求元402に格納された、全ての組織の数を足し合わせる方法が考えられる。例えば、図4に示す例では、総サービス量Q(t)は、「3」と算出される。
総サービス量Q(t)がシステムの閾値T以下であると判定された場合、リクエスト取得プログラム173は、リクエストキュー175からリクエストを取得する(ステップ605)。
当該取得されたリクエストは、リクエスト処理プログラム174によって処理され、当該リクエストに対するレスポンスが流量制御装置110に送信される。また、リクエスト取得プログラム173は、最後にチェックした組織識別子178を当該処理対象組織の識別子に更新する。
総サービス量Q(t)がシステムの閾値Tより大きいと判定された場合、リクエスト取得プログラム173は、組織間のサービス量を調整するための処理を開始する。
まず、リクエスト取得プログラム173は、処理対象組織のサービス量が当該処理対象組織の閾値702以下であるか否かを判定する(ステップ606)。
具体的には、リクエスト取得プログラム173は、スレッド−要求元対応テーブル176を参照して、処理対象組織のサービス量Qi(t)を算出する。次に、リクエスト取得プログラム173は、閾値テーブル177を参照して、算出された処理対象組織のサービス量Qi(t)が当該処理対象組織の閾値702以下であるか否を判定する。ここで、iは、組織A又はBなどの処理対象組織を識別するための添え字であり、組織の数だけ存在する。以下、処理対象組織の閾値702を処理対象組織の閾値Tiとも呼ぶ。
なお、処理対象組織のサービス量Qi(t)の算出方法としては、処理中の要求元402に格納された、処理対象組織に対応する識別子の数を足し合わせる方法が考えられる。例えば、図4に示す例において、処理対象組織が「A」である場合、処理対象組織のサービス量QA(t)は、「2」と算出される。
処理対象組織のサービス量が当該処理対象組織の閾値以下であると判定された場合、リクエスト取得プログラム173は、リクエストキュー175からリクエストを取得する(ステップ607)。
当該取得されたリクエストは、リクエスト処理プログラム174によって処理され、当該リクエストに対するレスポンスが流量制御装置110に送信される。また、リクエスト取得プログラム173は、最後にチェックした組織識別子178を当該処理対象組織の識別子に更新する。
処理対象組織のサービス量が当該処理対象組織の閾値より大きいと判定された場合、リクエスト取得プログラム173は、リクエストキュー175に処理されていない組織のリクエストがあるか否かを判定する(ステップ608)。つまり、当該処理対象組織のサービス量が集中していることを示す。したがって、当該処理対象組織のサービス量を調整するため、当該処理対象組織のリクエストは取得されない。
リクエストキュー175に処理されていない組織のリクエストがあると判定された場合、リクエスト取得プログラム173は、ステップ606に戻り同様の処理を実行する。
リクエストキュー175に処理されていない組織のリクエストがないと判定された場合、リクエスト取得プログラム173は、流量制御装置110にnullを返す(ステップ609)。
図7のステップ604〜ステップ609の処理による効果について説明する。
本実施形態では、まず、システム全体の総サービス量がシステムの閾値702以下であるか否かが判定される(ステップ604)。
システム全体の総サービス量がシステムのリクエスト数の閾値702以下であれば、リクエスト取得プログラム173がリクエストキューからリクエストを取得し(ステップ605)、リクエスト処理プログラム174によって、当該リクエストに対応するサービスが処理対象組織に提供される。つまり、組織間のサービス量の調整は実行されない。
一方、システム全体の総サービス量がシステムのリクエスト数の閾値702より大きい場合、処理中の組織ごとのサービス量に応じて、リクエストを受け付けるか否かを判定するための処理(ステップ606〜ステップ609)が実行される。つまり、組織間のサービス量を調整するための処理が実行される。
従来は、システム全体の総サービス量が一定以上であればリクエストの受け付けを拒否していたため、組織間のサービス量が考慮されることなく、リクエストの受け付けが拒否されていた。したがって、組織間にサービス量の偏りが生じる原因となっていた。
しかし、本実施形態では、システム全体の総サービス量がシステムの閾値702より大きいと判定されたことを契機に、組織毎のサービス量に基づいて、受け付けるリクエスト数を調整するための処理(ステップ606〜ステップ609)が実行される。つまり、組織間のサービス量の偏りを考慮して、リクエストを受け付けるか否かの処理が実行される。これによって、組織間のサービス量の偏りを解消することが可能となる。
したがって、サービス量が少ない組織からのリクエストを優先的に処理することができる。
また、ステップ604〜ステップ609の処理による別の効果について説明する。なお、以下の説明において、閾値テーブル177は、図6に示す状態とし、また、現在、サーバ150が処理中のサービス量については、Aが「30」、Bが「0」、Cが「0」であるとする。
処理対象組織の閾値のみを考慮する場合、組織Aは、閾値テーブル177において設定された閾値702より大きくなるため、サーバ150は、組織Aから、閾値702以上のリクエストを受け付けない。
しかし、組織B及びCのサービス量は「0」であるため、スレッドに空きがある。そこで、システムの閾値を考慮することによって、サーバ150が処理中の全サービス量の合計がシステムの閾値以下の場合に、サーバ150が組織Aからのリクエストを受け付けることによって、スレッドに空きを有効に利用することが可能となる。
なお、組織Aの閾値を超えるリクエストが受け付けられた後、組織B又はCのサービス量が増加することによってシステム全体のサービス量がシステムの閾値より大きくなった場合、組織間のサービス量を調整するための処理(ステップ606〜ステップ609)が実行される。したがって、組織の閾値より多くのリクエストが受け付けられた組織Aのリクエストは受け付けらない。したがって、組織Aのサービス量は減少していき、組織Aのサービス量は閾値の範囲内に落ち着く。
次に、システムの閾値Tの設定方法について説明する。
図8は、本発明の第1の実施形態における各組織の処理中のサービス量の一例を示した図である。
閾値テーブル177が図6に示す値である場合、システムのサービス量は、図8に示す状態で最大となる。つまり、組織の閾値が最も小さい組織Cのサービス量が、図6に示すシステムの閾値と同一であり(組織Cのサービス量が50)、他の組織A及びBが、各々の組織のサービス量が閾値までサービスを受けているときが最大(組織Aのサービス量が30、組織Bのサービス量が20)のとき、システムのサービス量が最大となる。
具体的には、システムの最大サービス量Qmaxは、下式で表される。
max=T+ΣTi−min(TA、TB、・・・) (数1)
システムの最大サービス量Qmaxが上限値136に設定された値に収まるようにすれば最もスループットが高くなる。
ここで、上限値136に設定された値をKとすると、Qmax=Kをシステムの閾値Tで解いた式は以下のようになる。
T=K−(ΣTi−min(TA、TBm、・・・)) (数2)
第1の実施形態では、(式2)によって算出される値が、システムの閾値Tとして閾値テーブル177に設定される。
[第2の実施形態]
第1の実施形態において、システムの閾値T≒Kの場合、サーバ150に空きがある(スレッドに空きがある)ときには、リクエストは原則到着順に処理され、当該リクエストに対するサービスが提供される。したがって、システムとしては高スループットを期待する(サーバ150のCPU160の利用率の向上を期待する)ことができる。しかし、この場合、特定の組織のリクエストが大量に到着すると、後から到着した他の組織からのリクエストに対するサービスを提供できない可能性がある。
また、第1の実施形態において、システムの閾値T≒0の場合、サーバ150は、各組織から、各々の組織に設定された閾値までのリクエストを受け付けることができる。すなわち、各組織からのリクエストに対して偏りなくサービスを提供することができる。しかし、リクエストキュー175にリクエストが留まる確率が高くなる。そのため、特定の組織からのリクエストしか到着しない場合においては、当該組織に設定された閾値までしかサービスを提供することができず、システムとしてはスループットの低下を招く(サーバ150のCPU160の利用率の低下を招く)ことになる。
そこで、第2の実施形態では、各組織からのリクエストの到着状況に応じて、(1)システムスループットの最大化を図る。(2)各組織間の処理中のサービス量を保証するように、システムの閾値Tの値を変更させる。
具体的には、第2の実施形態では、CPU利用率に応じて、システムの閾値Tを変更する。
第2の実施形態の計算機システムの構成は、第1の実施形態と同一であるため説明を省略する。第2の実施形態では、Webブラウザ101及び流量制御装置110の構成は第1の実施形態と同一であるが、サーバ900の構成が第1の実施形態と異なる。以下、第1の実施形態との差異を中心に説明する。
図9は、本発明の第2の実施形態のサーバ900の構成を示すブロック図である。
サーバ900のハードウェア構成は第1の実施形態と同一であるため説明を省略する。
サーバ900のメモリ170は、新たに、CPU利用率監視プログラム901、閾値制御プログラム902、CPU基準値903、及びCPU利用率−サービス量対応テーブル904を含む。
CPU利用率監視プログラム901は、サーバ900のCPU160の利用率を監視するプログラムである。CPU160が、周期的に、CPU利用率監視プログラム901を実行することによって、CPU160の利用率を取得する。
閾値制御プログラム902は、CPU160の利用率に応じて、閾値テーブル177におけるシステムの閾値Tを変更するプログラムである。閾値制御プログラム902によって実行される処理の詳細は、図10を用いて後述する。
CPU基準値903は、後述する閾値制御プログラム902によって実行される処理において、CPU160の利用率を判定する場合に用いられる値である。CPU基準値903は、予め設定された値であるが、システムの管理者等によって変更することも可能な値である。
CPU利用率−サービス量対応テーブル904は、CPU160の利用率とサーバ150が提供するサービス量との対応関係を示すテーブルである。
図10は、本発明の第2の実施形態の閾値制御プログラム902によって実行される処理を説明するフローチャートである。
なお、以下で説明する処理は、CPU160がメモリ170に格納されるプログラムを読む出し、読み出されたプログラムを実行することによって実現される。
CPU利用率監視プログラム901は、CPU160の利用率を取得し、CPU基準値903を参照して、取得されたCPU160の利用率が、CPU基準値903より低いか否かを判定する(ステップ1001)。なお、CPU160の利用率は、CPU利用率監視プログラム901が実行されることによって得られた値である。
取得されたCPU160の利用率が、CPU基準値903より低いと判定された場合、閾値制御プログラム902は、システムの閾値Tを増加させ(ステップ1002)、ステップ1001に戻り同様の処理を実行する。
取得されたCPU160の利用率が、CPU基準値903より低いと判定された場合、閾値制御プログラム902は、システムの閾値Tを減少させ(ステップ1003)、ステップ1001に戻り同様の処理を実行する。
次に、システムの閾値Tの変更の方法について説明する。
図11は、本発明の第2の実施形態におけるシステムの閾値Tの変更方法を説明するための図である。
図11において、横軸はシステムの閾値Tを示し、縦軸はサーバ150が提供する全サービス量(システムのサービス量)を示す。
以下の説明において、現在の全サービス量をQ0とし、現在のシステムの閾値をT0とする。また、ステップ1001の判定時に使用されるCPU基準値903に対応する全サービス量をQ1とする。なお、閾値制御プログラム902は、CPU利用率−サービス量対応テーブル904を参照することによって、CPU160の利用率から、現在、サーバ150が提供するサービス量を知ることができる。なお、閾値制御プログラム902は、CPU160によってメモリ170から読み出され、CPU160によって実行される。
直線1101は、(数1)をプロットしたものである。具体的には、システムの閾値Tの最大値をプロットした直線である。
ステップ1001において、現在の全サービス量Q0が、CPU基準値903に対応するサービス量Q1より低いため、閾値制御プログラム902は、ステップ1002に進む。
ステップ1002において、閾値制御プログラム902は、現在の全サービス量Q0及び閾値T0が交わった交点1103と、サービス量の上限値Qmax及びシステムの閾値の上限値Kが交わった交点1104とを結ぶ直線1102を算出する。
次に、閾値制御プログラム902は、直線1102に、CPU基準値903に対応するサービス量Q1を代入し、T1を算出する。
閾値制御プログラム902は、算出されたシステムの閾値T1を新たなシステムの閾値Tとして設定する。具体的には、閾値テーブル177のシステムのエントリの閾値702がT0からT1に変更される。
前述した方法では、閾値制御プログラム902は、算出されたT1を新たなシステムの閾値Tとしたが、T0からT1の範囲にある値に変更する方法であってもよい。
なお、ステップ1003においても、同様の処理によって、システムの閾値Tが変更される。
[第3の実施形態]
第3の実施形態では、計算機システムが複数のサーバを備える点が第1の実施形態と異なる。以下、第1の実施形態との差異を中心に第3の実施形態について説明する。
図12は、本発明の第3の実施形態の計算機システムの構成例を示すブロック図である。
第3の実施形態の計算機システムは、複数のサーバ1202を備え、また、流量制御装置110と複数のサーバ1202との間にロードバランサ1201を備える。図12に示す例では、計算機システムは、サーバ1〜サーバnまでのn個のサーバを備える。
ロードバランサ1201は、サーバ1202が受け付けるリクエスト数を制御するための機能を備える。具体的には、ロードバランサ1201は、少なくとも、要求元識別プログラム171、スレッド−要求元対応テーブル176、閾値テーブル177、及び最後にチェックした組織識別子178を格納する。
第3の実施形態では、サーバ1202がリクエストの受け付けを制御するための機能を備える必要はない。
ロードバランサ1201は、第1の実施形態と同様に、各組織に提供されるサービス量に応じて、リクエストを取得する。さらに、ロードバランサ1201は、各サーバ1202に取得されたリクエストを割り振る。割り振る方法としては、ラウンドロビン方式、及び負荷の最も低いサーバ1202に割り振る方式が考えられる。
本発明の一形態によれば、システム及び各組織の閾値に基づいて、サーバ150がリクエストを受け付けるか否かを判定することによって、組織間のサービス量のバランスをとることができる。したがって、ある組織からのリクエスト量が多過ぎるために、サーバ150が、他の組織のリクエストを処理できないという状況を解消できる。
101 Webブラウザ
110 流量制御装置
120 CPU
130 メモリ
131 リクエスト取得プログラム
132 リクエスト数確認プログラム
133 リクエスト投入プログラム
134 リクエスト数更新プログラム
135 リクエスト数
136 上限値
140 通信部
150 サーバ
160 CPU
170 メモリ
171 要求元識別プログラム
172 キュー追加プログラム
173 リクエスト取得プログラム
174 リクエスト処理プログラム
175 リクエストキュー
176 スレッド−要求元対応テーブル
177 閾値テーブル
178 最後にチェックした組織識別子
179 スレッドプール
180 通信部
401 スレッド番号
402 処理中の要求元
701 組織
702 閾値
900 サーバ
901 CPU利用率監視プログラム
902 閾値制御プログラム
903 CPU基準値
904 CPU利用率−サービス量対応テーブル
1101 直線
1102 直線
1103 交点
1104 交点
1201 ロードバランサ
1202 サーバ

Claims (15)

  1. 一以上のクライアント装置からリクエストを受け付ける第1の計算機と、前記第1の計算機から送信される前記リクエストを受け付ける第2の計算機とを備える計算機システムであって、
    前記第1の計算機は、第1のプロセッサと、前記第1のプロセッサに接続される第1のメモリと、前記第2の計算機と通信するための第1の通信部を備え、
    前記第2の計算機は、第2のプロセッサと、前記第2のプロセッサに接続され、前記第2の計算機に設定される第1の閾値及び前記クライアント装置を操作するユーザが所属するグループごとに設定される第2の閾値が格納される第2のメモリと、前記第1の計算機と通信するための第2の通信部を備え、
    前記第2の計算機は、
    前記第1の計算機からリクエストを受信した場合、前記第1の計算機から受け付けたリクエストの総数を算出して、前記第1の計算機から受け付けたリクエストの総数が前記第1の閾値以下か否かを判定し、
    前記第1の計算機から受け付けたリクエストの総数が前記第1の閾値より大きいと判定された場合、前記第1の計算機から受信したリクエストの送信元のユーザが所属する前記グループを特定し、
    前記特定されたグループから受け付けたリクエスト数を算出し、前記特定されたグループから受け付けたリクエスト数が前記第2の閾値以下か否かを判定し、
    前記特定されたグループから受け付けたリクエスト数が前記第2の閾値以下と判定された場合、前記特定されたグループからのリクエストを受け付けることを特徴とする計算機システム。
  2. 前記第2の計算機は、
    前記第1の計算機から受け付けたリクエストの総数が前記第1の閾値以下と判定された場合、前記第1の計算機から受信したリクエストの送信元のユーザが所属する前記グループを特定し、前記特定されたグループからのリクエストを受け付けることを特徴とする請求項1に記載の計算機システム。
  3. 前記第2の計算機は、
    前記特定されたグループから受け付けたリクエスト数が前記第2の閾値より大きいと判定された場合、前記特定されたグループからのリクエストを受け付けないことを特徴とする請求項2に記載の計算機システム。
  4. 前記第2の閾値は、前記第2の計算機が当該グループから受け付け可能なリクエスト数を示すことを特徴とする請求項3に記載の計算機システム。
  5. 前記第1のメモリには、前記第1の計算機が受け付けることが可能なリクエスト数を示す上限値と、前記第1の計算機から前記第2の計算機に送信され、前記第2の計算機に受け付けられたリクエストの数を示す、受け付けリクエスト数とが格納され、
    前記第1の計算機は、
    前記クライアント装置からリクエストが送信された場合、前記受け付けリクエスト数と前記上限値とを参照して、前記受け付けリクエスト数が、前記上限値以上か否かを判定し、
    前記受け付けリクエスト数が、前記上限値より小さいと判定された場合、前記クライアント装置から受信したリクエストを受け付け、前記受け付けたリクエストを前記第2の計算機に送信することを特徴とする請求項4に記載の計算機システム。
  6. 前記第2のメモリは、前記第2のプロセッサの負荷を監視するための監視プログラムを備え、
    前記第2の計算機は、
    前記第2のプロセッサの負荷が所定値以上の場合、前記第1の閾値が小さくなるように変更し、
    前記第2のプロセッサの負荷が前記所定値以下の場合、前記第1の閾値が大きくなるように変更することを特徴とする請求項5に記載の計算機システム。
  7. 前記第2の計算機は、
    前記クライアント装置から送信されたリクエストの送信元のユーザが、前記クライアント装置からリクエストを送信するために使用されたログイン情報を、前記クライアント装置から取得し、
    前記取得された前記ログイン情報に基づいて、前記第1の計算機から受信したリクエストの送信元のユーザが所属するグループを特定することを特徴とする請求項6に記載の計算機システム。
  8. 前記第2のメモリは、前記第2の計算機が、各々の前記グループに所属するユーザから受け付けたリクエストを管理するためのリクエスト数管理テーブルを備え、
    前記第2の計算機は、前記リクエスト数管理テーブルを参照して、前記特定されたグループから受け付けたリクエスト数を算出することを特徴とする請求項6に記載の計算機システム。
  9. 前記第2のメモリは、前記第1の閾値と前記第2の閾値とを格納する閾値管理テーブルを備え、
    前記第2の計算機は、
    前記閾値管理テーブルを参照して、前記第1の計算機から受け付けたリクエストの総数が前記第1の閾値以下か否かを判定し、
    前記閾値管理テーブルを参照して、前記特定されたグループから受け付けたリクエストが前記第2の閾値以下か否かを判定することを特徴とする請求項6に記載の計算機システム。
  10. 前記計算機システムは、さらに、前記リクエストを処理する複数の第3の計算機を備え、
    前記第2の計算機は、前記受け付けたリクエストをラウンドロビンによって前記第3の計算機に割り当てることを特徴とする請求項1に記載の計算機システム。
  11. 前記計算機システムは、さらに、前記リクエストを処理する複数の第3の計算機を備え、
    前記第2の計算機は、前記第3の計算機の負荷の低い順に、前記受け付けたリクエストを前記各第3の計算機に割り当てることを特徴とする請求項1に記載の計算機システム。
  12. 一以上のクライアント装置からリクエストを受け付ける第1の計算機と、前記第1の計算機から送信される前記リクエストを受け付ける第2の計算機とを備える計算機システムにおけるリクエスト処理方法であって、
    前記第1の計算機は、第1のプロセッサと、前記第1のプロセッサに接続される第1のメモリと、前記第2の計算機と通信するための第1の通信部を備え、
    前記第2の計算機は、第2のプロセッサと、前記第2のプロセッサに接続され、前記第2の計算機に設定される第1の閾値及び前記クラインと装置を操作するユーザが所属するグループごとに設定される第2の閾値が格納される第2のメモリと、前記第1の計算機と通信するための第2の通信部を備え、
    前記方法は、
    前記第2の計算機が、前記第1の計算機からリクエストを受信した場合、前記第1の計算機から受け付けたリクエストの総数を算出して、前記第1の計算機から受け付けたリクエストの総数が前記第1の閾値以下か否かを判定する第1のステップと、
    前記第2の計算機が、前記第1の計算機から受け付けたリクエストの総数が前記第1の閾値より大きいと判定された場合、前記第1の計算機から受信したリクエストの送信元のユーザが所属する前記グループを特定する第2のステップと、
    前記第2の計算機が、前記特定されたグループから受け付けたリクエスト数を算出し、前記特定されたグループから受け付けたリクエスト数が前記第2の閾値以下か否かを判定する第3のステップと、
    前記第2の計算機が、前記特定されたグループから受け付けたリクエスト数が前記第2の閾値以下と判定された場合、前記特定されたグループからのリクエストを受け付ける第4のステップと、を含むことを特徴とするリクエスト処理方法。
  13. 前記第1のステップにおいて、前記第1の計算機から受け付けたリクエストの総数が前記第1の閾値以下と判定された場合、前記第2の計算機が、前記第1の計算機から受信したリクエストの送信元のユーザが所属する前記グループを特定し、前記特定されたグループからのリクエストを受け付けるステップを含むこと特徴とする請求項12に記載のリクエスト処理方法。
  14. 前記第2の閾値は、前記第2の計算機が当該グループから受け付け可能なリクエスト数を示す閾値であり、
    前記方法は、前記第3のステップにおいて、前記特定されたグループから受け付けたリクエスト数が前記第2の閾値より大きいと判定された場合、前記第2の計算機が、前記特定されたグループからのリクエストを受け付けないステップを含むこと特徴とする請求項12に記載のリクエスト処理方法。
  15. 一以上のクライアント装置からリクエストを受け付ける計算機と接続され、前記計算機から送信される前記リクエストを受け付けるサーバ装置であって、
    前記サーバ装置は、プロセッサと、前記プロセッサに接続され、前記サーバ装置に設定される第1の閾値及び前記クライアント装置を操作するユーザが所属するグループごとに設定される第2の閾値が格納されるメモリと、前記計算機と通信するための通信部を備え、
    前記サーバ装置は、
    前記計算機からリクエストを受信した場合、前記計算機から受け付けたリクエストの総数を算出して、前記計算機から受け付けたリクエストの総数が前記第1の閾値以下か否かを判定し、
    前記計算機から受け付けたリクエストの総数が前記第1の閾値以下と判定された場合、前記計算機から受信したリクエストの送信元のユーザが所属する前記グループを特定し、前記特定されたグループからのリクエストを受け付け、
    前記計算機から受け付けたリクエストの総数が前記第1の閾値より大きいと判定された場合、前記計算機から受信したリクエストの送信元のユーザが所属する前記グループを特定し、
    前記特定されたグループから受け付けたリクエスト数を算出し、前記特定されたグループから受け付けたリクエスト数が前記第2の閾値以下か否かを判定し、
    前記特定されたグループから受け付けたリクエスト数が前記第2の閾値より大きいと判定された場合、前記特定されたグループからのリクエストを受け付けず、
    前記特定されたグループから受け付けたリクエスト数が前記第2の閾値以下と判定された場合、前記特定されたグループからのリクエストを受け付けることを特徴とするサーバ装置。
JP2009221426A 2009-09-25 2009-09-25 計算機システム、リクエスト処理方法及びサーバ装置 Pending JP2011070435A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009221426A JP2011070435A (ja) 2009-09-25 2009-09-25 計算機システム、リクエスト処理方法及びサーバ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009221426A JP2011070435A (ja) 2009-09-25 2009-09-25 計算機システム、リクエスト処理方法及びサーバ装置

Publications (1)

Publication Number Publication Date
JP2011070435A true JP2011070435A (ja) 2011-04-07

Family

ID=44015661

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009221426A Pending JP2011070435A (ja) 2009-09-25 2009-09-25 計算機システム、リクエスト処理方法及びサーバ装置

Country Status (1)

Country Link
JP (1) JP2011070435A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016057871A (ja) * 2014-09-10 2016-04-21 日本電気株式会社 情報処理装置、情報処理方法、及び、プログラム
JP2017162287A (ja) * 2016-03-10 2017-09-14 富士通株式会社 情報処理装置、システム、方法及びプログラム
JP2021022126A (ja) * 2019-07-26 2021-02-18 株式会社デンソー 電子制御装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016057871A (ja) * 2014-09-10 2016-04-21 日本電気株式会社 情報処理装置、情報処理方法、及び、プログラム
JP2017162287A (ja) * 2016-03-10 2017-09-14 富士通株式会社 情報処理装置、システム、方法及びプログラム
JP2021022126A (ja) * 2019-07-26 2021-02-18 株式会社デンソー 電子制御装置
JP7226169B2 (ja) 2019-07-26 2023-02-21 株式会社デンソー 電子制御装置

Similar Documents

Publication Publication Date Title
US10733026B2 (en) Automated workflow selection
US10877801B2 (en) Systems and methods for scheduling tasks
KR101242954B1 (ko) 저장부로 향하는 입/출력(i/o) 요청을 큐잉할지 여부를 결정하기 위한 우선순위의 이용
US9729488B2 (en) On-demand mailbox synchronization and migration system
WO2010100859A1 (ja) 分散システム
JP6881575B2 (ja) 資源割当システム、管理装置、方法およびプログラム
KR20170029263A (ko) 부하 분산 장치 및 방법
JP6428012B2 (ja) 分散処理プログラム、分散処理管理装置及び分散処理方法
JP5775481B2 (ja) 情報処理システム及びその処理方法
JP2012079242A (ja) 複合イベント分散装置、複合イベント分散方法および複合イベント分散プログラム
JP2010238051A (ja) 負荷分散プログラム及び負荷分散装置
CN110300188B (zh) 数据传输系统、方法和设备
JP5544522B2 (ja) 負荷調整方法、負荷調整サーバ、負荷調整用サーバ装置、および、負荷調整プログラム
CN112711479A (zh) 服务器集群的负载均衡系统、方法、装置和存储介质
JP2016024612A (ja) データ処理制御方法、データ処理制御プログラムおよびデータ処理制御装置
Convolbo et al. DRASH: A data replication-aware scheduler in geo-distributed data centers
JP2010152818A (ja) サーバシステム
JP2011070435A (ja) 計算機システム、リクエスト処理方法及びサーバ装置
JP2012022555A (ja) サーバ構成管理システム
US11206673B2 (en) Priority control method and data processing system
CN114339135A (zh) 一种负载均衡方法、装置、电子设备和存储介质
JP5388134B2 (ja) 計算機システム、及び、移動データ決定方法
CN115576684A (zh) 任务处理方法、装置、电子设备及存储介质
JP2019526860A (ja) スケーラブルなリアルタイムメッセージングシステム
JP6219771B2 (ja) 負荷分散装置、負荷分散方法、および、負荷分散システム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120309