JP2011107862A - 最大スループット評価システム、評価装置、評価方法、及び評価プログラム - Google Patents

最大スループット評価システム、評価装置、評価方法、及び評価プログラム Download PDF

Info

Publication number
JP2011107862A
JP2011107862A JP2009260689A JP2009260689A JP2011107862A JP 2011107862 A JP2011107862 A JP 2011107862A JP 2009260689 A JP2009260689 A JP 2009260689A JP 2009260689 A JP2009260689 A JP 2009260689A JP 2011107862 A JP2011107862 A JP 2011107862A
Authority
JP
Japan
Prior art keywords
throughput
load amount
measurement
evaluation
evaluation target
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.)
Withdrawn
Application number
JP2009260689A
Other languages
English (en)
Inventor
Ikudai Ajiro
育大 網代
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2009260689A priority Critical patent/JP2011107862A/ja
Publication of JP2011107862A publication Critical patent/JP2011107862A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】Webシステムの最大スループットを効率よく求める最大スループット評価システムを提供する。
【解決手段】評価対象装置へ課す負荷量の範囲を示す計測区間のうちから実際に評価対象装置に課すべき計測負荷量を決定する負荷量設定部と、計測負荷量を評価対象装置へ課して評価対象装置のスループットを計測するスループット計測部と、計測負荷量における評価対象装置のスループットが計測区間の始点の負荷量における評価対象装置のスループットから線形に増加しているか否かに基づいて計測区間の範囲を減縮する線形性判定部と、計測区間が所定の範囲により示される許容誤差以下である場合に、計測区間の始点の負荷量における評価対象装置のスループットを評価対象装置の最大スループットとして出力する収束判定部とを備える。
【選択図】図2

Description

本発明は、Webシステムの最大スループットを評価する最大スループット評価システムに関する。
Webシステムの性能評価システムが知られている。通信の高速化やインターネットの普及に伴い、ネットワーク上に多数のWebシステムが接続されて、様々なサービスが提供されている。このようなWebシステムは、多数の利用者が同時に利用することも多い。そのため、Webシステムの性能を効率よく評価することが求められている。
特許文献1は、Webシステムの性能評価を簡単かつ効率的に行うことが可能であり、また当該評価を反映してミドルウェア等を自動的に設定することが可能なWebシステムの性能評価システムを開示している。特許文献1のWebシステム性能評価システムは、データベースと、測定手段と、制御手段とを備える。データベースは、性能評価すべきWebシステムの構成に関する設定情報、測定に係る仕様に関する情報、ボトルネック判断基準に関する情報及びボトルネック回避候補に関する情報を保存する。測定手段は、Webシステムに接続される複数のクライアントを実現して外部から取り込んだ性能測定対象に対して負荷を課してボトルネックを含むWebシステムの性能に関する情報を測定する。制御手段は、Webシステムから性能測定に係る情報の採取と、データベースから性能測定に必要な情報の取り出しと、ボトルネックを含むWebシステムの性能評価結果の出力を制御する。特許文献1のWebシステムの性能評価システムは、測定対象のコンピュータに負荷をかけた際のハードウェアリソース値を採取し、リソース値に関する閾値と比較して、ボトルネックとなっているリソースを特定する。特許文献1のWebシステムの性能評価システムによれば、性能評価に関する専門的な知識や環境を必要としないで、Webシステムの性能評価を得ることが可能となる。
また、ある区間において単峰性を有する1変数の関数に対して、その区間の最大値、あるいは最小値を効率的に求める方法として黄金分割法が知られている(非特許文献1)。ここで、単峰性を有する関数とは、関数を図示したときに山(最大値)や谷(最小値)が一つしか現れない関数である。黄金分割法による最大値の算出は、次の手順で行われる。
ここでは、区間(a,b)において、単峰性の関数fの最大値を求めることを考える。黄金分割法では、まず、区間(a,b)に2点cとdとをとる。なお、a<c<d<bである。次に、f(c)とf(d)を比較する。その結果、f(c)<f(d)である場合、区間(a,c)に最大値があると仮定すると、単峰性の仮定に矛盾して山が2つあることになってしまう。そのため、区間(c,b)に最大値があると判断できる。
次に、同様に区間(c,b)に2点をとり、最大値が存在する区間を絞り込んでいく。区間にとる2つの点のうち、小さいほうを黄金比1:(1+√5)/2の点に、大きいほうを(1+√5)/2:1)の点にすると、最も収束が早いことが知られている。絞込みを続けて、2点jとkの距離が十分小さくなると、このときのf(j)あるいはf(k)の値を関数fの最大値とみなすことができる。このように、黄金分割法により単峰性を有する関数の最大値を求めることができる。
しかし、特許文献1のWebシステムの性能評価システムでは、多数の統計を行わなければ、同時接続クライアント数とスループットとの関係がわからない。そのため、Webシステムの最大スループットを求めるのに時間がかかってしまう。また、非特許文献1の黄金分割法は、1回の絞込みによる区間の削減率が「0.618」であり、二分法や、二分探索法の削減率「0.5」に比べて効率が落ちる。
この他、特許文献2、特許文献3は、システムの性能評価に関連する技術を開示している。
特開2003−131907号公報 特開2006−031178号公報 特許第3987333号公報
「C言語によるアルゴリズム事典」、奥村晴彦、技術評論社、1991年、pp.18−19
本発明の目的は、Webシステムの最大スループットを効率よく求める最大スループット評価システムを提供することにある。
本発明の最大スループット評価システムは、評価対象装置へ課す負荷量の範囲を示す計測区間のうちから実際に評価対象装置に課すべき計測負荷量を決定する負荷量設定部と、計測負荷量を評価対象装置へ課して評価対象装置のスループットを計測するスループット計測部と、計測負荷量における評価対象装置のスループットが計測区間の始点の負荷量における評価対象装置のスループットから線形に増加しているか否かに基づいて計測区間の範囲を減縮する線形性判定部と、計測区間が所定の範囲により示される許容誤差以下である場合に、計測区間の始点の負荷量における評価対象装置のスループットを評価対象装置の最大スループットとして出力する収束判定部とを備える。
本発明の最大スループット評価装置は、上述の最大スループット評価システムにおいて、負荷量設定部と、スループット計測部と、線形性判定部と、収束判定部とを備える。
本発明の最大スループット評価方法は、評価対象装置へ課す負荷量の範囲を示す計測区間のうちから実際に評価対象装置に課すべき計測負荷量を決定するステップと、計測負荷量を評価対象装置へ課して評価対象装置のスループットを計測するステップと、計測負荷量における評価対象装置のスループットが計測区間の始点の負荷量における評価対象装置のスループットから線形に増加しているか否かに基づいて計測区間の範囲を減縮するステップと、計測区間が所定の範囲により示される許容誤差以下である場合に計測区間の始点の負荷量における評価対象装置のスループットを評価対象装置の最大スループットとして出力するステップとを備える。
本発明の最大スループット評価プログラムは、上述の最大スループット評価方法をコンピュータに実行させる。
本発明によれば、Webシステムの最大スループットを効率よく求める最大スループット評価システムを提供することができる。
Webシステムにおける負荷量とスループットの一般的な関係を示す図である。 本実施形態における最大スループット評価システムの構成を示す図である。 本実施形態における最大スループット評価システムの動作フローを示す図である。
添付図面を参照して、本発明の実施形態による最大スループット評価システムを以下に説明する。
[概要]
はじめに、本発明の最大スループット評価システムの目的は、Webシステムの最大スループットを求めることにある。スループットとは、評価対象のWebシステムよって処理される単位時間(毎秒または毎分)あたりのリクエスト数を表す。Webシステムの最大スループットを求めるには、Webシステムに適切な量の負荷をかける必要がある。以下において、Webシステムに負荷をかけてWebシステムの性能を評価する作業を負荷テストと呼ぶ。また、負荷量とは、リクエストの到着量、すなわち、Webシステムが受け取る単位時間(毎秒または毎分)あたりのリクエスト数を表す。
ここで、スループットは、Webシステムの一部として稼動するWebサーバや、アプリケーションサーバ、及びクライアントによって直接計測し得るが、負荷量を直接計測することは原理的に困難である。なぜなら、Webシステムに到着しただけであって、未だ処置が開始されていないリクエストを認識する主体が存在しないからである。そのため、Webシステムの負荷テストを行う際には、リクエストを発行するクライアント側の発行リクエスト数や、スレッド数、プロセス数、TCP(Transmission Control Protocol)コネクション数、あるいはクライアントが模しているユーザの人数等が負荷量として用いられる。
図1は、Webシステムにおける負荷量とスループットの一般的な関係を示す図である。図1のグラフは、横軸に負荷量をとり、縦軸にスループットをとったグラフである。Webシステムは、計算機の備えるリソースの量や、アプリケーションの特性によって最大性能、すなわち最大スループットが決定される。負荷量を「0」から少しずつ増加させていくと、最大スループットの値まではほぼ線形にスループットが増加する。これは、計算機に到達したリクエストが全て処理されていることを示している。
ここで、負荷量が、Webシステムの最大スループットを超えたときを考える。Webシステムは、最大スループット以上のリクエストを受信しても、最大スループット以上のリクエストに対する処理は行えない。そのため、Webシステムのスループットは、頭打ちとなる。図1において負荷量mは、Webシステムの最大スループットtpに対応する負荷量である。このとき、Webシステムに到着したリクエストは、全て処理されずにWebシステムのバッファに滞留し、やがて、システムに重大な障害をもたらすか、あるいは通信等の失敗によって破棄される。負荷量が最大スループットを大きく超えると、バッファや接続の管理に余計な処理が必要なるため、本来の仕事であるリクエストの処理ができなくなり、スループットが低下していく。この場合におけるスループットの低下の有無や、低下のペースは、Webシステムの構成やアプリケーションの特性に依存し、また、負荷テスト時においては、クライアントの動作にも依存する。
従って、最大スループットを求めるためには、最大スループットが得られる必要最小限の負荷量を見極める必要がある。この負荷量を、以下において、耐負荷量と呼ぶことにする。本実施形態の最大スループット評価システムは、この耐負荷量を効率的に探索することによりWebシステムの最大スループットを評価する。
[構成の説明]
次に、図2を参照して、本実施形態における最大スループット評価システムの構成の説明を行う。図2は、本実施形態における最大スループット評価システムの構成を示す図である。
本実施形態の最大スループット評価システムは、処理装置1と、記憶装置2と、入力装置3と、通信装置4と、出力装置5と、評価対象Webシステム100とを備える。なお、処理装置1と、記憶装置2と、入力装置3と、通信装置4と、出力装置5とは、一般に、これらの構成を備えた最大スループット評価装置として実現される。以下に、各構成を説明する。
まず、評価対象Webシステム100は、ウェブサーバシステムに例示される。評価対象Webシステム100は、単独のサーバにより構成されても良いし、複数のサーバにより構成されても良い。評価対象Webシステム100が、複数のサーバにより構成される場合には、各々のサーバは、物理的に複数の装置により構築されても良いし、仮想的に単独の装置により構築されても良い。評価対象Webシステム100は、通信装置4とインターネットやLAN(Local Area Network)に例示されるネットワークを介して接続されており、通信装置4を介して処理装置1と通信を行うことが可能である。
次に、入力装置3は、キーボードや、マウスや、メディアドライブ等に例示される。通信装置4は、ネットワークと接続される通信インターフェースに例示される。出力装置5は、ディスプレイに例示される。入力装置3、通信装置4、及び出力装置5は、処理装置1と接続される。なお、前述の通り、通信装置4は、評価対象Webシステム100とネットワークを介して接続される。
次に、記憶装置2は、ハードディスクや、RAM(Random Access Memory)、ROM(Read Only Memory)に例示される。記憶装置2は、最大スループット評価装置100の機能を実現する処理用プログラムやデータを記憶している。処理用プログラムは、典型的には、コンピュータの読み取り可能な記憶媒体に記録されている。記憶媒体は、CD(Compact Disc)や、フラッシュメモリを搭載したUSBメモリに例示される。この場合、処理用プログラムは、記憶媒体から記憶装置2へ導入される。また、記憶装置2は、処理装置1と接続される。
次に、記憶装置2は、スループット許容誤差記憶部21と、計測結果記憶部22と、負荷量許容誤差記憶部23とを備える。スループット許容誤差記憶部21は、スループットに対する許容誤差Etを記憶する。計測結果記憶部22は、耐負荷量を含む区間を記憶する。負荷量許容誤差記憶部23は、負荷量に対する許容誤差Edを記憶する。
次に、処理装置1は、CPU(Central Processing Unit)に例示される。処理装置1は、記憶装置2に記憶される処理用プログラムを読み込んで、実行することによって最大スループット評価装置100の機能を実行する。処理装置1は、許容誤差取得モジュール11と、初期計測区間取得モジュール12と、スループット計測モジュール13と、線形性判定モジュール14と、負荷量設定モジュール15と、収束判定モジュール16とを備える。これら、処理装置1が備える各モジュールは、処理装置1が処理用プログラムを実行することによって実現される。
以上が、本実施形態における最大スループット評価システムの構成の説明である。
[動作の説明]
次に、図3を参照して、上述のような構成である本実施形態における最大スループット評価システムの動作方法の説明を行う。図3は、本実施形態における最大スループット評価システムの動作フローを示す図である。
(ステップS01)
まず、許容誤差取得モジュール11は、負荷量とスループットに関する許容誤差を取得する。許容誤差取得モジュール11は、負荷量に関する許容誤差(以下、負荷量許容誤差)Edと、スループットに関する許容誤差(以下、スループット許容誤差)Etとを取得する。許容誤差取得モジュール11は、負荷量許容誤差Edを負荷量許容誤差記憶部23へ記憶させ、スループット許容誤差Etをスループット許容誤差記憶部21へ記憶させる。なお、負荷量許容誤差Ed、及びスループット許容誤差Etは、10や20といった絶対値で与えられても良いし、5%といった割合で与えられても良い。また、負荷量許容誤差Ed、及びスループット許容誤差Etは、同じ値が用いられても良いし、異なる値が用いられても良い。加えて、負荷量許容誤差Ed、及びスループット許容誤差Etは、入力装置3を介して外部から入力されても良いし、予め、処理用プログラムに設定されていても良い。
(ステップS02)
初期計測区間取得モジュール12は、初期計測区間を取得する。初期計測区間は、耐負荷量を含む負荷量の区間である始点Lと終点Rの初期値である。初期値計測区間取得モジュール12は、初期計測区間を計測結果記憶部22へ記憶させる。初期計測区間取得モジュール12は、初期計測区間を計測結果記憶部22へ記憶させるときに、始点Lにおけるスループットの値を「0」として共に記憶させる。なお、初期計測区間取得モジュール12は、予め始点Lにおけるスループットの値が判明している場合、始点Lにおけるスループットの値を「0」に換えてその値を記憶させても良い。また、初期計測区間の与え方は、例えば、始点Lを負荷量「0」として、終点Rを十分大きな値の負荷量に設定すればよい。なお、他の初期計測区間の与え方については、後述する。初期計測区間は、入力装置3を介して外部から入力されても良いし、予め、処理用プログラムに設定されていても良い。
(ステップS03)
収束判定モジュール16は、計測区間のサイズが負荷量許容誤差Ed以下であるか否かを判定する。収束判定モジュール16は、計測結果記憶部22に記憶された計測区間と、負荷量許容値誤差記憶部23に記憶された負荷量許容誤差Edとに基づいて、計測区間のサイズが負荷量許容誤差Ed以下であるか否かを判定する。
このとき、収束判定モジュール16は、負荷量許容誤差Edが5%といった割合で与えられている場合、次の数式(1)を用いて判定を行う。
R−L≦L×Ed ・・・(1)
また、収束判定モジュール16は、負荷量許容誤差Edが10や20といった絶対値で与えられている場合、次の数式(2)を用いて判定を行う。
R−L≦Ed ・・・(2)
収束判定モジュール16が、上記の数式(1)あるいは数式(2)を用いて判定を行った結果、数式(1)あるいは数式(2)が成立しない場合、つまり、計測区間のサイズが負荷量許容誤差Edより大きい場合、ステップS04へ進む。一方、数式(1)あるいは数式(2)が成立する場合、つまり、計測区間のサイズが負荷量許容誤差Ed以下の場合、ステップS09へ進む。
(ステップS04)
負荷量設定モジュール15は、始点Lと終点Rの中間値を負荷量Mとして設定する。負荷量設定モジュール15は、ステップS03の判定において計測区間のサイズが負荷量許容誤差Edより大きい場合、評価対象Webシステム100のスループット計測に用いるべき負荷量Mを、始点Lと終点Rの中間値に対応する負荷量に設定する。
負荷量設定モジュール15は、次に示す数式(3)を用いて負荷量Mを設定する。
負荷量M=(L+R)/2 ・・・(3)
(ステップS05)
スループット計測モジュール13は、設定された負荷量Mでスループットを計測する。スループット計測モジュール13は、負荷量設定モジュール15により設定された負荷量Mで評価対象Webシステム100へリクエストを発行して、評価対象Webシステム100のスループットを計測する。スループットの計測は、スループット計測モジュール13が行うが、例えば、評価対象Webシステム100により計測の行われた値を、スループット計測モジュール13が取得する動作としても良い。
(ステップS06)
線形性判定モジュール14は、スループットが線形に増加しているか否かを判定する。線形性判定モジュール14は、スループット計測モジュール13により計測の行われた負荷量Mにおけるスループットが、計測結果記憶部22に記憶された始点Lにおけるスループットに比べて線形に増加しているか否かを、スループット許容誤差記憶部21に記憶されたスループット許容誤差Etに基づいて判定する。
線形性判定モジュール14は、スループット許容誤差Etが5%のような割合で与えられる場合、次の数式(4)を用いてスループットが線形に増加しているか否かを判定する。
TP(M)≧TP(L)+TP(L)×(M−L)/L×(1−Et) ・・・(4)
なお、数式(4)において、TP(L)は、始点Lにおけるスループットを表し、TP(M)は、負荷量Mにおけるスループットを表す。数式(4)は、始点Lに対応する負荷量から負荷量Mへ増加させた場合に期待されるスループットの増加量「TP(L)×(M−L)/L」に対して、スループット許容誤差Etの分だけ増加量が少なくても許容できることを示している。また、誤差分の「1−Et」を、スループットの増加量「TP(L)×(M−L)/L」だけに掛け合わせているのは、後述により計測区間の削減が進んだ場合に、「1−Et」を「TP(L)+TP(L)×(M−L)/L」に掛け合わせていると、TP(M)がTP(L)より若干低下したような場合でも、スループットが線形に増加していると誤って判定されることがあり、これを防ぐためである。
一方、線形性判定モジュール14は、スループット許容誤差Etが10や20といった絶対値で与えられる場合、次の数式(5)を用いてスループットが線形に増加しているか否かを判定する。
TP(M)≧TP(L)×(M/L)―Et ・・・(5)
なお、数式(5)において、TP(L)は、始点Lにおけるスループットを表し、TP(M)は、負荷量Mにおけるスループットを表す。
線形性判定モジュール14が、上記の数式(4)あるいは数式(5)を用いて判定を行った結果、数式(4)あるいは数式(5)が成立しない場合、つまり、スループットが線形に増加していない場合、ステップS07へ進む。一方、数式(4)あるいは数式(5)が成立する場合、つまり、スループットが線形に増加している場合、ステップS08へ進む。
(ステップS07)
線形性判定モジュール14は、計測区間の終点Rを計測区間の中間値である負荷量Mへ更新する。線形性判定モジュール14は、ステップS06の判定においてスループットが線形に増加していない場合、計測結果記憶部22に記憶されたスループットの計測区間の終点Rを負荷量Mへ更新する。スループットが線形に増加していない場合、負荷量Mは耐負荷量より大きいと考えられ、耐負荷量は、計測区間の始点Lと負荷量Mとの間に存在すると考えられるからである。なお、線形性判定モジュール14は、負荷量Mによるスループット計測において、評価対象Webシステム100が過負荷によるエラーを出力した場合、あるいは過負荷によりダウンしてしまった場合においても、同様に終点Rを負荷量Mへ更新する。この後、ステップS03へ戻り、再度、計測区間のサイズが負荷量許容誤差Ed以下であるか否かの判定が行われることになる。
(ステップS08)
線形性判定モジュール14は、計測区間の始点Lを計測区間の中間値である負荷量Mへ更新する。線形性判定モジュール14は、ステップS06の判定においてスループットが線形に増加している場合、計測結果記憶部22に記憶されたスループットの計測区間の始点Lを負荷量Mへ更新する。スループットが線形に増加している場合、負荷量Mは耐負荷量より小さいと考えられ、耐負荷量は、負荷量Mと計測区間の終点Rとの間に存在すると考えられるからである。この後、ステップS03へ戻り、再度、計測区間のサイズが負荷量許容誤差Ed以下であるか否かの判定が行われることになる。
(ステップS09)
収束判定モジュール16は、始点Lにおけるスループットを、評価対象Webシステム100の最大スループットとして、出力装置5へ出力する。収束判定モジュール16は、ステップS03において計測区間のサイズが負荷量許容誤差Ed以下であると判定すると、計測結果記憶部22に記憶された計測区間の始点Lの負荷量に対応するスループットを、評価対象Webシステム100における最大スループットとして、出力装置5へ出力する。このように、収束判定モジュール16は、計測区間のサイズが負荷量許容誤差Ed以下となると、計測区間が十分に小さくなったとみなして、始点Lにおけるスループットを評価対象Webシステム100の最大スループットと決定する。これにより、本動作フローは終了となる。
以上が、本実施形態における最大スループット評価システムの動作方法の説明である。このように、ステップS07あるいはステップS08において、線形性判定モジュール14が、負荷量の計測区間の始点L、あるいは終点Rを中間値Mにより更新する。これによって、計測区間が半分に削減される。本実施形態の最大スループット評価システムは、ステップS03からステップS08までを繰り返すことで計測区間が繰り返し半減されて、負荷量許容誤差Ed以下となると、つまり、計測区間が十分に小さくなると、始点Lにおけるスループットを最大スループットとして出力装置5へ出力する。これによって、Webシステムの最大スループットを効率よく求める最大スループット評価システムを提供することができる。
ここで、ステップS02における初期区間を与える他の方法を説明する。まず、負荷量の初期値を十分小さな値、例えば「1」に設定する。次に、負荷量を等比級数的に増やすための係数を設定する。ここでは、係数を「10」に設定したとする。これらの設定値に基づいて、負荷量を「1、10、100」と増加させながら、評価対象Webシステム100のスループットを計測する。この計測において、スループットが線形に増加しなくなった区間を初期区間と決定する。仮に、負荷量1のときのスループットが5であり、負荷量10のときのスループットが50、負荷量100のときのスループットが237であったとすれば、区間(10、100)を初期区間と決定する。区間(10,100)においてスループットが約10倍に増えていないためである。また、負荷量100のときに評価対象Webシステム100が、過負荷によるエラーを応答したり、過負荷によりダウンしたりした場合も同様に考えることができる。
このような処理を図2の最大スループット評価システムに適用する場合を考える。まず、初期計測区間取得モジュール12が、負荷量に対する初期値と係数とを取得する。これらの値は、入力装置3を介して外部から入力されても良いし、予め処理用プログラムに設定されていても良い。初期計測区間取得モジュール12は、負荷量に対する初期値と係数とに基づいて、初期計測区間を設定するために計測するべき負荷量を決定する。スループット計測モジュール13は、初期計測区間取得モジュール12により設定された負荷量を用いて、評価対象Webシステム100のスループットを計測する。線形性判定モジュール14は、スループット計測モジュール13により計測された評価対象Webシステム100のスループットが線形に増加しているか否かを判定して初期計測区間を決定する。初期計測区間取得モジュール12は、線形性判定モジュール14により決定された初期計測区間を計測結果記憶部12へ記憶させる。このようにして、前述のステップS02における初期計測区間が決定されてもよい。
[実施例]
次に、上述した本実施形態における最大スループット評価システムの構成、及び動作方法の具体例の説明を行う。以下の説明では、評価対象Webシステム100にリクエストを発行するクライアントプログラムのスレッド数を負荷量として用いる。クライアントプログラムの1スレッドは、「評価対象Webシステム100にリクエストを発行し、評価対象Webシステム100からレスポンスを受信した後、1秒間待機する。」という動作を一定時間繰り返し行う。並行動作するスレッドの個数を変化させることで、Webシステムに様々な量の負荷をかけることができる。
このとき、1スレッドのリクエスト発行間隔が1秒であっても、1スレッドが評価対象Webシステムに毎秒1リクエストを発行するわけではないので注意が必要である。リクエスト到着量は、評価対象Webシステム100のレスポンスタイムやクライアントプログラムの処理効率に依存するため、1スレッドによって生成される負荷量は、毎秒1リクエストよりも小さくなる。
まず、許容誤差取得モジュール11は、スループット許容誤差Etと負荷量許容誤差Edとを、共に「10%」として、それぞれスループット許容誤差記憶部21、及び負荷量許容誤差記憶部23へ記憶させる(ステップS01)。
また、初期計測区間取得モジュール12は、初期計測区間を、始点L=50、終点R=90として、計測結果記憶部22へ記憶させる(ステップS02)。つまり、スレッド数50から90の間に、最大スループットが得られるポイントがあると想定して初期計測区間が設定されたといえる。なお、始点L=50のときの評価対象Webシステム100のスループットがTP(L)=33であることが判明しているとする。この始点L=50におけるスループットの情報も計測結果記憶部22へ記憶される。
収束判定モジュール16は、前述の数式(1)を用いて、計測区間のサイズが負荷量許容誤差Ed以下であるか否かを判定する(ステップS03)。収束判定モジュール16は、数式(1)より90−50≦50×0.1であるため数式(1)は成立せず、計測区間のサイズが負荷量許容誤差Ed以下でないと判定する。
この判定を受けて、負荷量設定モジュール15は、前述の数式(3)を用いて負荷量Mを設定する(ステップS04)。すなわち、負荷量設定モジュール15は、数式(3)により負荷量M=(50+90)/2=70であるため、負荷量M=70に設定する。
スループット計測モジュール13は、評価対象Webシステム100に対して負荷量M=70、すなわち、スレッド数を70に設定した負荷を生成して、スループットを計測する(ステップS05)。スループット計測モジュール13は、この計測の結果、TP(M)=50を取得したとする。なお、スループット計測モジュール13は、1回のみの計測によりスループットを取得しても良いし、複数回の計測の平均によりスループットを取得しても良い。
線形性判定モジュール14は、前述の数式(4)を用いてスループットが線形に増加しているか否かを判定する(ステップS06)。線形性判定モジュール14は、50≧33+33×(70−50)/50×(1−0.1)=44.7であり数式(4)は成立するため、スループットが線形に増加していると判定する。
そのため、線形性判定モジュール14は、計測結果記憶部22の始点Lを負荷量Mへ更新して、始点L=70と設定する(ステップS08)。同時に線形性判定モジュール14は、TP(L)=50を計測結果記憶部22へ記憶させる。
この後、ステップS03へ戻り、2回目のループ処理となる。そのため、収束判定モジュール16は、前述の数式(1)を用いて、計測区間のサイズが負荷量許容誤差Ed以下であるか否かを判定する(ステップS03)。収束判定モジュール16は、数式(1)より90−70≦70×0.1であるため数式(1)は成立せず、計測区間のサイズが負荷量許容誤差Ed以下でないと判定する。この判定を受けて、負荷量設定モジュール15は、前述の数式(3)を用いて負荷量Mを設定する(ステップS04)。すなわち、負荷量設定モジュール15は、数式(3)により負荷量M=(70+90)/2=80であるため、負荷量M=80に設定する。
スループット計測モジュール13は、評価対象Webシステム100に対して負荷量M=80、すなわち、スレッド数を80に設定した負荷を生成して、スループットを計測する(ステップS05)。スループット計測モジュール13は、この計測の結果、TP(M)=57を取得したとする。線形性判定モジュール14は、前述の数式(4)を用いてスループットが線形に増加しているか否かを判定する(ステップS06)。線形性判定モジュール14は、57≧50+50×(80−70)/70×(1−0.1)=56.3であり数式(4)は成立するため、スループットが線形に増加していると判定する。そのため、線形性判定モジュール14は、計測結果記憶部22の始点Lを負荷量Mへ更新して、始点L=80と設定する(ステップS08)。同時に線形性判定モジュール14は、TP(L)=57を計測結果記憶部22へ記憶させる。
さらに、ステップS03へ戻り、3回目のループ処理となる。そのため、収束判定モジュール16は、前述の数式(1)を用いて、計測区間のサイズが負荷量許容誤差Ed以下であるか否かを判定する(ステップS03)。収束判定モジュール16は、数式(1)より90−80≦80×0.1であるため数式(1)は成立せず、計測区間のサイズが負荷量許容誤差Ed以下でないと判定する。この判定を受けて、負荷量設定モジュール15は、前述の数式(3)を用いて負荷量Mを設定する(ステップS04)。すなわち、負荷量設定モジュール15は、数式(3)により負荷量M=(80+90)/2=85であるため、負荷量M=85に設定する。
スループット計測モジュール13は、評価対象Webシステム100に対して負荷量M=85、すなわち、スレッド数を85に設定した負荷を生成して、スループットを計測する(ステップS05)。スループット計測モジュール13は、この計測の結果、TP(M)=58を取得したとする。線形性判定モジュール14は、前述の数式(4)を用いてスループットが線形に増加しているか否かを判定する(ステップS06)。線形性判定モジュール14は、58≧57+57×(85−80)/80×(1−0.1)=59.7であり数式(4)は成立しないため、スループットが線形に増加していないと判定する。そのため、線形性判定モジュール14は、計測結果記憶部22の終点Rを負荷量Mへ更新して、終点R=85と設定する(ステップS07)。このとき、線形性判定モジュール14は、TP(R)=58を計測結果記憶部22に記憶させても良いが、最大スループットを求めるにあたってTP(R)の記憶は必ずしも必要でない。
そして、ステップS03へ戻り、4回目のループ処理となる。そのため、収束判定モジュール16は、前述の数式(1)を用いて、計測区間のサイズが負荷量許容誤差Ed以下であるか否かを判定する(ステップS03)。収束判定モジュール16は、数式(1)より85−80≦80×0.1であり数式(1)は成立するため、計測区間のサイズが負荷量許容誤差Ed以下であると判定する。
この判定結果を受けて、収束判定モジュール16は、計測結果記憶部22に記憶されたTP(L)=57を、評価対象Webシステム100の最大スループットとして出力装置5へ出力する(ステップS08)。このとき、収束判定モジュール16は、スレッド数がL=80であることを、出力装置5へ同時に出力しても良い。このようにして、評価対象Webシステム100の最大スループットが計測される。
なお、上述の処理の過程において、実際には、スレッド数85のときに最も高いスループットである58が得られており、この値を最大スループットとして出力することも可能である。しかし、スループットが線形に伸びていない範囲の負荷量は、短時間であれば評価対象Webシステム100により処理が行われて真の値よりも大きなスループットが得られることもあるものの、長時間は処理し続けられない可能性が高い。そのため、本実施形態では安全を考えてTP(80)=57を出力することとする。なお、TP(85)=58として出力を行うか否かは、最大スループット評価システムの管理者や評価者に依存する。
以上が、本実施形態における最大スループット評価システムの構成、及び動作方法の具体例の説明である。
ここまで、本実施形態の最大スループット評価システムを説明してきた。本発明の最大スループット評価システムにより、評価対象のWebシステムの最大スループットを効率よく求めることが可能となる。また、本発明の最大スループット評価システムにより、評価対象のWebシステムが処理することの可能なリクエスト数やユーザ数の見極めが可能となる。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の範囲内で当業者が理解し得る様々な変更を行うことが可能である。
1 処理装置
2 記憶装置
3 入力装置
4 通信装置
5 出力装置
11 許容誤差取得モジュール
12 初期計測区間取得モジュール
13 スループット計測モジュール
14 線形性判定モジュール
15 負荷量設定モジュール
16 収束判定モジュール
21 スループット許容誤差記憶部
22 計測結果記憶部
23 負荷量許容誤差記憶部
100 評価対象Webシステム

Claims (15)

  1. 評価対象装置へ課す負荷量の範囲を示す計測区間のうちから実際に評価対象装置に課すべき計測負荷量を決定する負荷量設定部と、
    前記計測負荷量を前記評価対象装置へ課して前記評価対象装置のスループットを計測するスループット計測部と、
    前記計測負荷量における前記評価対象装置のスループットが前記計測区間の始点の負荷量における前記評価対象装置のスループットから線形に増加しているか否かに基づいて前記計測区間の範囲を減縮する線形性判定部と、
    前記計測区間が所定の範囲により示される許容誤差以下である場合に、前記計測区間の始点の負荷量における前記評価対象装置のスループットを前記評価対象装置の最大スループットとして出力する収束判定部と
    を備える最大スループット評価システム。
  2. 請求項1に記載の最大スループット評価システムであって、
    前記線形性判定部は、前記計測負荷量における前記評価対象装置のスループットが前記計測区間の始点の負荷量における前記評価対象装置のスループットから線形に増加している場合に前記計測区間の始点の負荷量を前記計測負荷量へ更新し、前記計測負荷量における前記評価対象装置のスループットが前記計測区間の始点の負荷量における前記評価対象装置のスループットから線形に増加していない場合に前記計測区間の終点の負荷量を前記計測負荷量へ更新することで前記計測区間の範囲を減縮する
    最大スループット評価システム。
  3. 請求項1または請求項2に記載の最大スループット評価システムであって、
    前記負荷量設定部は、前記計測区間の中間値に対応する負荷量を前記計測負荷量と決定する
    最大スループット評価システム。
  4. 請求項1から請求項3までのいずれかに記載の最大スループット評価システムであって、
    前記線形性判定モジュールは、前記計測負荷量における前記評価対象装置のスループットが前記計測区間の始点の負荷量における前記評価対象装置のスループットから線形に増加しているとしたときに前記計測負荷量における前記評価対象装置のスループットが含まれるべき所定の誤差範囲を示すスループット許容誤差に、前記計測負荷量における前記評価対象装置のスループットが含まれるか否かに基づいて前記計測区間の範囲を減縮する
    最大スループット評価システム。
  5. 請求項4に記載の最大スループット評価システムであって、
    前記線形性判定モジュールは、前記スループット許容誤差が割合で与えられる場合には、前記計測区間の始点の負荷量をL、前記計測負荷量をM、前記計測区間の始点Lの負荷量における前記評価対象装置のスループットをTP(L)、前記計測負荷量Mにおける前記評価対象装置のスループットをTP(M)、前記スループット許容誤差をEtとして、
    TP(M)≧TP(L)+TP(L)×(M−L)/L×(1−Et)
    に基づいて、また、スループット許容誤差が絶対値で与えられる場合には、
    TP(M)≧TP(L)×(M/L)―Et
    に基づいて、前記計測負荷量における前記評価対象装置のスループットが前記計測区間の始点の負荷量における前記評価対象装置のスループットから線形に増加しているか否かを判定する
    最大スループット評価システム。
  6. 請求項1から請求項5までのいずれかに記載の最大スループット評価システムであって、
    所定の方法により選択された複数の負荷量における前記スループットを計測して、前記複数の負荷量における前記スループットが線形に増加しなくなった区間を、前記計測区間の初期値として決定する初期計測区間取得部
    をさらに備える最大スループット評価システム。
  7. 請求項1から請求項6までに記載の最大スループット評価システムにおいて、前記負荷量設定部と、前記スループット計測部と、前記線形性判定部と、前記収束判定部とを備える最大スループット評価装置。
  8. 請求項1から請求項6までに記載の最大スループット評価システムにおいて、前記負荷量設定部と、前記スループット計測部と、前記線形性判定部と、前記収束判定部と、前記初期計測区間取得部とを備える最大スループット評価装置。
  9. 評価対象装置へ課す負荷量の範囲を示す計測区間のうちから実際に評価対象装置に課すべき計測負荷量を決定するステップと、
    前記計測負荷量を前記評価対象装置へ課して前記評価対象装置のスループットを計測するステップと、
    前記計測負荷量における前記評価対象装置のスループットが前記計測区間の始点の負荷量における前記評価対象装置のスループットから線形に増加しているか否かに基づいて前記計測区間の範囲を減縮するステップと、
    前記計測区間が所定の範囲により示される許容誤差以下である場合に前記計測区間の始点の負荷量における前記評価対象装置のスループットを前記評価対象装置の最大スループットとして出力するステップと
    を備える最大スループット評価方法。
  10. 請求項9に記載の最大スループット評価方法であって、前記計測区間の範囲を減縮するステップは、
    前記計測負荷量における前記評価対象装置のスループットが前記計測区間の始点の負荷量における前記評価対象装置のスループットから線形に増加している場合に前記計測区間の始点の負荷量を前記計測負荷量へ更新し、前記計測負荷量における前記評価対象装置のスループットが前記計測区間の始点の負荷量における前記評価対象装置のスループットから線形に増加していない場合に前記計測区間の終点の負荷量を前記計測負荷量へ更新することで前記計測区間の範囲を減縮するステップ
    を含む最大スループット評価方法。
  11. 請求項9または請求項10に記載の最大スループット評価方法であって、前記計測負荷量を決定するステップは、
    前記計測区間の中間値に対応する負荷量を前記計測負荷量と決定するステップ
    を含む最大スループット評価方法。
  12. 請求項9から請求項11までのいずれかに記載の最大スループット評価方法であって、前記計測区間の範囲を減縮するステップは、
    前記計測負荷量における前記評価対象装置のスループットが前記計測区間の始点の負荷量における前記評価対象装置のスループットから線形に増加しているとしたときに前記計測負荷量における前記評価対象装置のスループットが含まれるべき所定の誤差範囲を示すスループット許容誤差に、前記計測負荷量における前記評価対象装置のスループットが含まれるか否かに基づいて前記計測区間の範囲を減縮するステップ
    を含む最大スループット評価方法。
  13. 請求項12に記載の最大スループット評価方法であって、前記計測区間の範囲を減縮するステップは、
    前記スループット許容誤差が割合で与えられる場合には、前記計測区間の始点の負荷量をL、前記計測負荷量をM、前記計測区間の始点Lの負荷量における前記評価対象装置のスループットをTP(L)、前記計測負荷量Mにおける前記評価対象装置のスループットをTP(M)、前記スループット許容誤差をEtとして、
    TP(M)≧TP(L)+TP(L)×(M−L)/L×(1−Et)
    に基づいて、また、スループット許容誤差が絶対値で与えられる場合には、
    TP(M)≧TP(L)×(M/L)―Et
    に基づいて、前記計測負荷量における前記評価対象装置のスループットが前記計測区間の始点の負荷量における前記評価対象装置のスループットから線形に増加しているか否かを判定するステップ
    を含む最大スループット評価方法。
  14. 請求項9から請求項13までのいずれかに記載の最大スループット評価方法であって、
    所定の方法により選択された複数の負荷量における前記スループットを計測するステップと、
    前記複数の負荷量における前記スループットが線形に増加しなくなった区間を、前記計測区間の初期値として決定するステップと
    をさらに備える最大スループット評価方法。
  15. 請求項9から請求項14までのいずれかに記載の最大スループット評価方法をコンピュータに実行させる最大スループット評価プログラム。
JP2009260689A 2009-11-16 2009-11-16 最大スループット評価システム、評価装置、評価方法、及び評価プログラム Withdrawn JP2011107862A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009260689A JP2011107862A (ja) 2009-11-16 2009-11-16 最大スループット評価システム、評価装置、評価方法、及び評価プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009260689A JP2011107862A (ja) 2009-11-16 2009-11-16 最大スループット評価システム、評価装置、評価方法、及び評価プログラム

Publications (1)

Publication Number Publication Date
JP2011107862A true JP2011107862A (ja) 2011-06-02

Family

ID=44231276

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009260689A Withdrawn JP2011107862A (ja) 2009-11-16 2009-11-16 最大スループット評価システム、評価装置、評価方法、及び評価プログラム

Country Status (1)

Country Link
JP (1) JP2011107862A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012073580A1 (ja) * 2010-11-29 2012-06-07 日本電気株式会社 性能評価装置及び性能評価方法
WO2013145629A1 (ja) * 2012-03-30 2013-10-03 日本電気株式会社 負荷評価を実行する情報処理装置及び負荷評価方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012073580A1 (ja) * 2010-11-29 2012-06-07 日本電気株式会社 性能評価装置及び性能評価方法
WO2013145629A1 (ja) * 2012-03-30 2013-10-03 日本電気株式会社 負荷評価を実行する情報処理装置及び負荷評価方法

Similar Documents

Publication Publication Date Title
US10318366B2 (en) System and method for relationship based root cause recommendation
JP6952719B2 (ja) ヒープをため込んでいるスタックトレースを特定するための、スレッド強度とヒープ使用量との相関
US8301761B2 (en) Determining server load capacity with virtual users
US10983856B2 (en) Identifying root causes of performance issues
US10909018B2 (en) System and method for end-to-end application root cause recommendation
US8407340B2 (en) Page load performance analysis
US20200379892A1 (en) Automated determination of operating parameter configurations for applications
US10223397B1 (en) Social graph based co-location of network users
US10108520B2 (en) Systems and methods for service demand based performance prediction with varying workloads
US10122603B2 (en) Inter-nodes multicasting communication in a monitoring infrastructure
US10135709B1 (en) Tracking work in an asynchronous application or service during load testing
JP2008171235A (ja) システム構成変更ルール生成システム、方法およびプログラム
JP4646649B2 (ja) 通信サーバ設定値決定装置,そのプログラム及びその方法
CN111159131A (zh) 性能优化方法、装置、设备及计算机可读存储介质
JP2011107862A (ja) 最大スループット評価システム、評価装置、評価方法、及び評価プログラム
CN108390770B (zh) 一种信息生成方法、装置及服务器
JP5967091B2 (ja) システムパラメータ設定支援システム、システムパラメータ設定支援装置のデータ処理方法、およびプログラム
US11243857B2 (en) Executing test scripts with respect to a server stack
CN113778780B (zh) 应用稳定性的确定方法、装置、电子设备和存储介质
JP5636922B2 (ja) 性能予測装置、性能予測方法およびプログラム
US20230113776A1 (en) Traffic application amount calculation apparatus, method and program
WO2016165471A1 (zh) Hadoop集群组件指标的采集方法及装置
CN113342500A (zh) 任务执行方法、装置、设备及存储介质
CN113609168A (zh) 数据导出方法、装置、终端以及可读存储介质
JP5974905B2 (ja) 応答時間監視プログラム、方法および応答時間監視装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20130205