JPWO2009130967A1 - システム性能試験方法、プログラム及び装置 - Google Patents
システム性能試験方法、プログラム及び装置 Download PDFInfo
- Publication number
- JPWO2009130967A1 JPWO2009130967A1 JP2010509120A JP2010509120A JPWO2009130967A1 JP WO2009130967 A1 JPWO2009130967 A1 JP WO2009130967A1 JP 2010509120 A JP2010509120 A JP 2010509120A JP 2010509120 A JP2010509120 A JP 2010509120A JP WO2009130967 A1 JPWO2009130967 A1 JP WO2009130967A1
- Authority
- JP
- Japan
- Prior art keywords
- request
- types
- performance test
- sequences
- issuing
- 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
Links
- 238000011056 performance test Methods 0.000 title claims abstract description 66
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000012545 processing Methods 0.000 claims abstract description 38
- 238000012360 testing method Methods 0.000 claims abstract description 23
- 238000011156 evaluation Methods 0.000 claims description 47
- 230000008569 process Effects 0.000 claims description 15
- 238000005259 measurement Methods 0.000 description 17
- 230000006399 behavior Effects 0.000 description 14
- 230000004044 response Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3414—Workload generation, e.g. scripts, playback
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3433—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/815—Virtual
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/87—Monitoring of transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/875—Monitoring of systems including the internet
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
サーバシステムの性能を試験するためのシステム性能試験方法は、(A)サーバシステムに対して、複数種類のリクエストシーケンスを指定された発行比率で発行するステップと、(B)複数種類のリクエストシーケンスの処理中にサーバシステムの性能を計測するステップと、を含む。複数種類のリクエストシーケンスの各々は、サーバシステムに対する一連のリクエストから構成される。
Description
本発明は、サーバシステムの性能を試験するための技術に関する。特に、本発明は、現実に即した負荷を印加することによってサーバシステムの性能を試験する技術に関する。
サーバシステムは、クライアントからリクエストを受け取り、そのリクエストを処理し、処理結果をレスポンスとしてクライアントに返す。このようなサーバシステムの代表的なものが、ウェブサーバシステムである。ユーザは、クライアント端末のウェブブラウザを操作して、様々なアクションを実行する。クライアント端末は、URLで指定されたウェブサーバに、ユーザのアクションに応じたリクエストを送信する。ウェブサーバはそのリクエストを処理し、処理結果をクライアント端末に返す。クライアント端末は、ウェブブラウザを通して、その処理結果をユーザに通知する。クライアントからのリクエストを短時間に処理するこのようなウェブサーバシステムは、一般に「トランザクションシステム」とも呼ばれている。
一般的に、ウェブサーバの性能試験では、試験対象となるウェブサーバに接続されたサーバ試験装置が用いられる。サーバ試験装置は、試験対象のウェブサーバに対して仮想的なリクエスト(テストデータ)を送信することによって、当該ウェブサーバにアクセス負荷を印加する。そして、サーバ試験装置は、ウェブサーバの状態を観察することによって、ウェブサーバの性能を評価する。このような性能試験に関連する技術として、次のものが知られている。
特開2002−7232号公報には、多数のユーザ・エージェント(ウェブブラウザ)からの大量のHTTPリクエストがウェブサーバに同時並行して送信される場合を想定した性能試験方法が開示されている。サーバ試験装置は、多数のユーザ・エージェントを擬装した大量のHTTPリクエストを、試験対象のウェブサーバに同時並行的に送信する。そして、サーバ試験装置は、試験対象サーバからのHTTPレスポンスを個別に認識し、各HTTPリクエストで指定されたオブジェクトが各レスポンス中に誤りなく含まれているか否かを判別する。また、サーバ試験装置は、HTTPリクエストに含まれるパラメータを変化させたり、HTTPリクエストの出力頻度を変化させたりする。これにより、テスト条件を可変に設定することが可能となる。
特開2007−264967号公報には、シナリオ作成プログラムが開示されている。シナリオは、ウェブサーバ内のページデータをリクエストする順番を定義しており、サーバ試験装置によって実現される複数の仮想ウェブクライアントに与えられる。複数の仮想ウェブクライアントは、与えられたシナリオ通りにリクエストメッセージの送信とレスポンスメッセージの受信を行う。シナリオ作成プログラムは、各仮想ウェブクライアントがリクエストメッセージの送信とレスポンスメッセージの受信を適切に行えるようなシナリオを作成する。例えば、シナリオ作成プログラムは、ウェブサーバがタイムアウトの判定を下し、仮想ウェブクライアントが適正なレスポンスメッセージを得られなくなる状況を防止するように、シナリオを作成する。
特開2003−131907号公報には、ウェブシステムの性能評価方法が開示されている。性能評価すべきウェブシステムに接続される複数のクライアントが仮想的に実現される。当該ウェブシステムに負荷が課され、ボトルネックを含むウェブサーバの性能に関する情報が測定される。そして、その情報及びボトルネック回避に関する情報を含む評価結果が出力される。
特開2003−173277号公報には、サーバシステムの性能測定装置が開示されている。その性能測定装置は、異なる複数の測定条件を同時に入力できるような条件入力画面を備えている。そして、性能測定装置は、異なる複数の測定条件でのサーバシステムの性能試験を自動的に連続して実行する。
特開2005−332139号公報には、ウェブサーバに対するテストデータの作成を支援する方法が開示されている。データ送受信部は、入力装置から受け取ったUMLを基に、ウェブサーバにリクエストデータを送信する。また、データ送受信部は、ウェブサーバから受信したレスポンスデータをHTML登録部に渡す。HTML登録部は、レスポンスデータに含まれるHTMLデータを抽出し、シナリオデータに記録する。可変データ編集処理部は、シナリオデータを読み取り、HTMLデータに係る画面とフォームに対応するリストとを表示装置に表示させる。
本願発明者は、次の点に着目した。サーバシステムの性能試験では、なるべく現実に即した負荷を当該サーバシステムに印加することが望ましい。例えばウェブサーバシステムにおいて、ユーザがショッピングサイトにアクセスする場合を考える。ユーザが商品を閲覧するだけの場合と、ユーザが所望の商品を選択し購入する場合とでは、ユーザの行動パターンは全く異なる。性能試験において現実に即した負荷をサーバシステムにかけるためには、そのような様々な行動パターンをも考慮することが重要であると考えられる。しかしながら、既存の性能試験方法では、ユーザの様々な行動パターンは十分考慮されていなかった。
本発明の1つの目的は、現実に即した負荷をサーバシステムに印加することによって当該サーバシステムの性能試験を実施することができる技術を提供することにある。
本発明の第1の観点において、サーバシステムの性能を試験するためのシステム性能試験方法が提供される。そのシステム性能試験方法は、(A)サーバシステムに対して、複数種類のリクエストシーケンスを指定された発行比率で発行するステップと、(B)複数種類のリクエストシーケンスの処理中にサーバシステムの性能を計測するステップと、を含む。複数種類のリクエストシーケンスの各々は、サーバシステムに対する一連のリクエストから構成される。
本発明の第2の観点において、サーバシステムの性能を試験する性能試験処理をコンピュータに実行させるシステム性能試験プログラムが提供される。性能試験処理は、(A)サーバシステムに対して、複数種類のリクエストシーケンスを指定された発行比率で発行するステップと、(B)複数種類のリクエストシーケンスの処理中にサーバシステムの性能を計測するステップと、を含む。
本発明の第3の観点において、サーバシステムの性能を試験するためのシステム性能試験装置が提供される。そのシステム性能試験装置は、サーバシステムに対して複数種類のリクエストシーケンスを指定された発行比率で発行する実行モジュールと、複数種類のリクエストシーケンスの処理中にサーバシステムの性能を計測する性能評価モジュールと、を備える。
本発明の第4の観点において、リクエスト発行プログラムが提供される。リクエスト発行プログラムは、(a)サーバシステムに対して、複数種類のリクエストシーケンスを指定された発行比率で発行するステップと、(b)所定の停止条件が満たされるまで(a)ステップを実行するステップと、をコンピュータに実行させる。複数種類のリクエストシーケンスの各々は、サーバシステムに対する一連のリクエストから構成される。
本発明によれば、現実に即した負荷をサーバシステムに印加することによって、当該サーバシステムの性能試験を実施することが可能となる。
上記及び他の目的、長所、特徴は、次の図面と共に説明される本発明の実施の形態により明らかになるであろう。
1.概要
サーバシステムの性能試験では、なるべく現実に即した負荷を当該サーバシステムに印加することが望ましい。そのため、本願発明者は次の点に着目した。
サーバシステムの性能試験では、なるべく現実に即した負荷を当該サーバシステムに印加することが望ましい。そのため、本願発明者は次の点に着目した。
サーバシステム(トランザクションシステム)の性能は、単位時間あたりに処理できるリクエスト数(スループット)で表されることが多い。但し、スループットは、リクエストの種類にも依存する。それは、リクエストの処理に必要なシステムリソースや時間は、リクエストの種類によって大きく異なるからである。例えば、ウェブページ上で商品を閲覧するリクエストの場合、ウェブサーバはメモリやディスクに記録されている商品データを単に返すだけであり、その負荷は比較的軽い。一方、カートへの商品の追加などのリクエストの場合、ウェブサーバはメモリやディスク上のデータを書き換える必要があり、その負荷は商品閲覧時よりも重くなる。このように、サーバシステムの性能や負荷は、リクエストの種類に依存する。従って、サーバシステムの性能を試験する際には、リクエストの種類に応じた負荷を印加することが重要である。
また、近年のウェブアプリケーションにおいて、ユーザによって既に発行されたリクエストの情報をサーバが保持している場合がある。例えば、ショッピングサイトにおいてユーザが過去に選択した商品の情報を、ウェブサーバが内部に保持している場合がある。そのため、ウェブサーバの性能試験において意図通りの負荷をかけるためには、リクエストを一定の順序で発行することも重要である。このようにある一定の順序で発行されるリクエスト群は、以下「リクエストシーケンス」と参照される。1つのリクエストシーケンスは、ある目的を持ったユーザの一連のアクションに相当し、サーバシステムに対する一連のリクエストから構成される。リクエストシーケンスは、ある目的を持ったユーザの行動パターンを反映しているとも言える。
更に、サーバシステムにアクセスするユーザの行動パターンは様々である。例えばウェブサーバシステムにおいて、ユーザがショッピングサイトにアクセスする場合を考える。ユーザが商品を閲覧するだけの場合と、ユーザが所望の商品を選択し購入する場合とでは、ユーザの行動パターンは全く異なる。性能試験において現実に即した負荷をサーバシステムにかけるためには、そのようなユーザの様々な行動パターンをも考慮することが重要である。従って、本発明では、様々な行動パターンのそれぞれを反映した複数種類のリクエストシーケンスが予め用意される。すなわち、ユーザの典型的な行動パターンが類型化され、複数種類のリクエストシーケンスとして提供される。
例えば、図1に示されるように、n種類のリクエストシーケンスR1〜Rnを含むリクエストシーケンス集合が予め用意される(nは2以上の整数)。リクエストシーケンスR1〜Rnの各々は、サーバシステムに対する一連のリクエストから構成される。つまり、n種類のリクエストシーケンスR1〜Rnは、それぞれ異なるn種類の行動パターンに対応している。
例えば、リクエストシーケンスR1は、商品閲覧が目的のユーザの行動パターンを反映している。商品閲覧が目的のユーザは、典型的には次のようにサイト内を移動する:「トップ、商品カテゴリA選択、商品a閲覧、商品b閲覧、商品c閲覧」。この移動に伴ってウェブブラウザ等から発行される一連のリクエストが、1つのリクエストシーケンスR1に対応する。
また、リクエストシーケンスR2は、特定商品の購入が目的のユーザの行動パターンを反映している。特定商品の購入が目的のユーザは、典型的には次のようにサイト内を移動する:「トップ、ログイン、商品カテゴリB選択、商品d選択、カートに追加、カートを確認、ユーザ情報(送付先やカード番号)の入力、最終確認と決定、購入完了、ログアウト」。この移動や操作に伴ってウェブブラウザ等から発行される一連のリクエストが、1つのリクエストシーケンスR2に対応する。このリクエストシーケンスR2は、上述のリクエストシーケンスR1とは異なっている。
このように、様々な行動パターンを類型化することによって、複数種類のリクエストシーケンスR1〜Rnが作成される。そして、図1に示されるように、それら複数種類のリクエストシーケンスR1〜Rnが、性能評価対象のサーバシステム(以下、「評価対象システム」と参照される)に対して発行される。これにより、ユーザの様々な行動パターンが考慮された負荷を評価対象システムにかけることが可能になる。すなわち、性能試験において、現実に即した負荷を評価対象システムにかけることが可能になる。
ここで、上述の通り、サーバシステムの性能はリクエストの種類にも依存することに留意されたい。異なるリクエストシーケンスは、異なるリクエストを含んでいるので、サーバシステムに与える負荷も当然異なる。従って、複数種類のリクエストシーケンスR1〜Rnが評価対象システムに対して発行される場合、評価対象システムの性能は、それら複数種類のリクエストシーケンスR1〜Rn間の発行比率(混合比率)にも依存すると考えられる。図1に示されるように、リクエストシーケンスR1〜Rn間の発行比率は、X1:X2:・・・:Xnで与えられるとする(X1〜Xnは整数)。この発行比率を可変的に設定することによって、評価対象システムに対して、複数種類のリクエストシーケンスR1〜Rnを様々な比率で発行することができる。つまり、発行比率に応じて変化する評価対象システムの性能を試験することが可能となる。
以上に説明されたように、本発明は、現実のサーバシステム(トランザクションシステム)の性能が複数種類のリクエストシーケンスの発行比率によって決定されるという観点に立脚している。評価対象システムの性能試験においては、図1に示されるように、複数種類のリクエストシーケンスR1〜Rnが、指定された発行比率X1:X2:・・・:Xnで評価対象システムに対して発行される。これにより、現実に即した負荷を評価対象システムに印加して、当該評価対象システムの性能試験を実施することが可能となる。以下、図1で示された処理を実現するための具体的な構成及び方法を説明する。
2.リクエスト発行プログラム
図1で示された処理はプログラム化することができる。図1で示された処理をコンピュータに実行させるコンピュータプログラムは、以下、「リクエスト発行プログラムPREQ」と参照される。リクエスト発行プログラムPREQは、評価対象システムに対して、指定された発行比率で複数種類のリクエストシーケンスR1〜Rnを発行する。
図1で示された処理はプログラム化することができる。図1で示された処理をコンピュータに実行させるコンピュータプログラムは、以下、「リクエスト発行プログラムPREQ」と参照される。リクエスト発行プログラムPREQは、評価対象システムに対して、指定された発行比率で複数種類のリクエストシーケンスR1〜Rnを発行する。
図2は、本実施の形態に係るリクエスト発行プログラムPREQの一例を概念的に示している。図2に示されるように、リクエスト発行プログラムPREQは、ループ部M1、乱数発生部M2、及びシーケンス選択発行部M3を有している。
ループ部M1は、リクエスト発行プログラムPREQによる処理を停止させるか否かを判定する。所定の停止条件が満たされると(ステップS1;Yes)、ループ部M1は処理を停止させる。所定の停止条件としては、「プログラムの実行開始から30分が経過した場合」や「ユーザからのキー入力があった場合」などが挙げられる。その停止条件が満たされていない場合(ステップS1;No)、続く処理が実行される。
続く処理では、複数種類のリクエストシーケンスR1〜Rnが、指定された発行比率で発行される。そのためには、次のような手法が考えられる。リクエストシーケンスR1〜Rn間の発行比率は、X1:X2:・・・:Xnである(X1〜Xnは整数)。このとき、第iリクエストシーケンスRiは、Xi個の番号に対応付けられる(i=1〜n)。例として、3種類のリクエストシーケンスR1,R2,R3の発行比率が3:5:2である場合を考える。そして、リクエストシーケンスR1が3個の番号(数字)0〜2に対応付けられ、リクエストシーケンスR2が5個の番号3〜7に対応付けられ、リクエストシーケンスR3が2個の番号8〜9に対応付けられるとする。この場合、0〜9までの番号をランダムに発生させることによって、3種類のリクエストシーケンスR1,R2,R3を所望の比率3:5:2で選択することが可能となる。
そのため、乱数発生部M2は乱数を発生させる(ステップS2)。つまり、乱数発生部M2は、複数の番号(数字)をランダムに発生させる。その複数の番号は、複数種類のリクエストシーケンスR1〜Rnのそれぞれに対応付けられた番号を少なくとも含んでいる必要がある。上記例の場合、乱数発生部M2は、0以上10未満の整数をランダムに発生させる。それには、ハードウェアやプログラミング言語処理系のライブラリ等で提供される機能を利用すればよい。例えば、0以上1未満の小数(浮動小数点数)型の一様乱数を返す組み込み関数がよく知られている。その組み込み関数をrand()で表した場合、rand()×10の整数部分を用いることによって、0以上10未満の整数型の乱数を得ることができる。どのような乱数を発生させればよいかは、発行比率X1:X2:・・・:Xn(あるいはその総和X1+X2+・・・+Xn)から決定することができる。
次に、シーケンス選択発行部M3は、乱数発生部M2によって得られた1つの番号(乱数)に対応する1つのリクエストシーケンスを選択的に発行する。つまり、シーケンス選択発行部M3は、複数種類のリクエストシーケンスR1〜Rnの中から当該番号に対応するリクエストシーケンスを選択し(ステップS3)、選択されたリクエストシーケンスを評価対象システムに対して発行する(ステップS4)。例えば、発生した番号がリクエストシーケンスR1に対応付けられている場合(ステップS3−1;Yes)、そのリクエストシーケンスR1が発行される(ステップS4−1)。番号がリクエストシーケンスR1に対応していない場合(ステップS3−1;No)、次のリクエストシーケンスR2に対応しているかどうかが判定される。上記例の場合、番号が0〜2のいずれかであればリクエストシーケンスR1が選択的に発行され、番号が3〜7のいずれかであればリクエストシーケンスR2が選択的に発行され、番号が8〜9のいずれかであれば、リクエストシーケンスR3が選択的に発行される。
乱数発生部M2とシーケンス選択発行部M3による処理は、上述の停止条件が満たされるまで繰り返し実行される。各ループにおいて、乱数が生成され、その乱数に対応付けられたリクエストシーケンスが選択的に発行される。これを繰り返すことによって、複数種類のリクエストシーケンスR1〜Rnを指定された発行比率X1:X2:・・・:Xnで発行することが可能となる。尚、番号と各リクエストシーケンスとの対応付けは、上記例に限られない。
また、リクエスト発行プログラムPREQは、図2で示されたものに限られず、複数のプログラムから構成されていてもよい。図3A及び図3Bは、本実施の形態に係るリクエスト発行プログラムPREQの他の例を概念的に示している。本例では、リクエスト発行プログラムPREQが、各リクエストシーケンスの発行のみを担うデーモン部(図3B)と、そのデーモン部に対して命令を出すメイン部(図3A)から構成される。リクエストシーケンスR1〜Rnはそれぞれ異なるデーモンによって発行され、1つのデーモンDkが1つのリクエストシーケンスRkの発行を担うとする(k=1〜n)。
図2の場合と同様に、所定の停止条件が満たされると(ステップS1;Yes)、ループ部M1は処理を停止させる。具体的には、ループ部M1は、全デーモンに停止命令を送出する(ステップS5)。各デーモンDkは、停止命令を受け取ると(ステップS7−k;Yes)、処理を終了する。また、シーケンス選択発行部M3は、乱数発生部M2によって得られた1つの番号に対応する1つのリクエストシーケンスを選択的に発行する。具体的には、当該番号がリクエストシーケンスRkに対応付けられている場合(ステップS3−k;Yes)、シーケンス選択発行部M3は、デーモンDkに発行命令を送出する(ステップS6−k)。デーモンDkは、発行命令を受け取ると(ステップS8−k;Yes)、リクエストシーケンスRkを発行する(ステップS9−k)。これにより、図2の場合と同じ処理が実現される。
このように、リクエスト発行プログラムPREQとしては様々な例が考えられる。いずれの場合も、リクエスト発行プログラムPREQは、ループ部M1、乱数発生部M2、及びシーケンス選択発行部M3を有している。そして、リクエスト発行プログラムPREQは、所定の停止条件が満たされるまで、複数種類のリクエストシーケンスR1〜Rnを指定された発行比率で発行する。
3.システム性能試験装置
図4は、本実施の形態に係るシステム性能試験装置10の構成を示すブロック図である。システム性能試験装置10は、評価対象システム1の性能を試験するための装置であり、ネットワークを介して評価対象システム1と通信可能に接続されている。
図4は、本実施の形態に係るシステム性能試験装置10の構成を示すブロック図である。システム性能試験装置10は、評価対象システム1の性能を試験するための装置であり、ネットワークを介して評価対象システム1と通信可能に接続されている。
評価対象システム1は、例えばウェブサーバシステムである。ウェブサーバシステムは、少なくとも1台のサーバを備えている。ウェブサーバシステムは、物理的に複数台のサーバによって構成されている場合も多い。これは、ウェブアプリケーションが、ウェブサーバ、アプリケーションサーバ及びデータベースサーバの3種類のサーバを用いて構築されることが多いためである。ウェブサーバ及びアプリケーションサーバが1台の物理サーバで提供され、データベースサーバとしてもう1台の物理サーバが用意される場合もある。さらには、近年の仮想化技術を利用して、1台の物理サーバ上に構築される複数の仮想マシンを上記3種類のサーバとして稼動させてもよい。
システム性能試験装置10はコンピュータであり、処理装置20、記憶装置30、通信装置40、入力装置50及び出力装置60を備えている。処理装置20はCPUを含んでおり、各種データ処理を行う。記憶装置30として、HDD(Hard Disk Drive)やRAM(Random Access Memory)等が例示される。通信装置40は、ネットワークに接続されるネットワークインタフェースである。入力装置50として、キーボード、マウス、メディアドライブ等が例示される。出力装置60として、ディスプレイ等が例示される。
処理装置20は、性能試験プログラムPROGを実行することによって、評価対象システム1の性能試験処理を実現する。性能試験プログラムPROGは、コンピュータによって実行されるソフトウェアプログラムであり、典型的にはコンピュータ読み取り可能な記録媒体に記録されている。処理装置20は、その記録媒体から性能試験プログラムPROGを読み出し、実行する。
性能試験プログラムPROGは、生成プログラムPROG100、実行プログラムPROG200及び評価プログラムPROG300を含んでいる。生成プログラムPROG100は、上述のリクエスト発行プログラムPREQを生成する。実行プログラムPROG200は、生成されたリクエスト発行プログラムPREQを実行する。評価プログラムPROG300は、リクエスト発行プログラムPREQの実行中に、評価対象システム1の内部状態(性能)を計測し、計測結果をレポートする。
4.性能試験処理
次に、図4で示されたシステム性能試験装置10による処理を詳しく説明する。図5は、性能試験におけるシステム性能試験装置10の機能ブロックとデータの流れを示している。図5に示されるように、システム性能試験装置10は、リクエスト発行プログラム生成モジュール100と、リクエスト発行プログラム実行モジュール200と、性能評価モジュール300を備えている。リクエスト発行プログラム生成モジュール100は、処理装置20が生成プログラムPROG100を実行することによって実現される。リクエスト発行プログラム実行モジュール200は、処理装置20が実行プログラムPROG200を実行することによって実現される。性能評価モジュール300は、処理装置20が評価プログラムPROG300を実行することによって実現される。
次に、図4で示されたシステム性能試験装置10による処理を詳しく説明する。図5は、性能試験におけるシステム性能試験装置10の機能ブロックとデータの流れを示している。図5に示されるように、システム性能試験装置10は、リクエスト発行プログラム生成モジュール100と、リクエスト発行プログラム実行モジュール200と、性能評価モジュール300を備えている。リクエスト発行プログラム生成モジュール100は、処理装置20が生成プログラムPROG100を実行することによって実現される。リクエスト発行プログラム実行モジュール200は、処理装置20が実行プログラムPROG200を実行することによって実現される。性能評価モジュール300は、処理装置20が評価プログラムPROG300を実行することによって実現される。
図6は、本実施の形態に係る性能試験処理のフローを示している。以下、図4〜図6を適宜参照して、各ステップにおける処理を詳しく説明する。
4−1.ステップS100
リクエスト発行プログラム生成モジュール100は、記憶装置30に格納されている停止条件データDC、シーケンス集合データDR及び発行比率データDXに基づいて、リクエスト発行プログラムPREQを生成する。図7は、リクエスト発行プログラム生成モジュール100の機能ブロックを示している。リクエスト発行プログラム生成モジュール100は、ループ部生成モジュール110、乱数発生部生成モジュール120、及びシーケンス選択発行部生成モジュール130を含んでいる。
リクエスト発行プログラム生成モジュール100は、記憶装置30に格納されている停止条件データDC、シーケンス集合データDR及び発行比率データDXに基づいて、リクエスト発行プログラムPREQを生成する。図7は、リクエスト発行プログラム生成モジュール100の機能ブロックを示している。リクエスト発行プログラム生成モジュール100は、ループ部生成モジュール110、乱数発生部生成モジュール120、及びシーケンス選択発行部生成モジュール130を含んでいる。
(ステップS110)
ループ部生成モジュール110は、記憶装置30から停止条件データDCを読み出す。停止条件データDCは、生成されるリクエスト発行プログラムPREQの停止条件を示す。その停止条件としては、「プログラムの実行開始から30分が経過した場合」や「ユーザからのキー入力があった場合」などが挙げられる。ループ部生成モジュール110は、この停止条件データDCに基づいて、リクエスト発行プログラムPREQのループ部M1を生成する(図2、図3A参照)。
ループ部生成モジュール110は、記憶装置30から停止条件データDCを読み出す。停止条件データDCは、生成されるリクエスト発行プログラムPREQの停止条件を示す。その停止条件としては、「プログラムの実行開始から30分が経過した場合」や「ユーザからのキー入力があった場合」などが挙げられる。ループ部生成モジュール110は、この停止条件データDCに基づいて、リクエスト発行プログラムPREQのループ部M1を生成する(図2、図3A参照)。
(ステップS120)
乱数発生部生成モジュール120は、記憶装置30から発行比率データDXを読み出す。発行比率データDXは、発行比率X1:X2:・・・:Xnを指定する。乱数発行部生成モジュール120は、この発行比率データDXに基づいて、リクエスト発行プログラムPREQの乱数発生部M2を生成する(図2、図3A参照)。上述の通り、乱数発生部M2を生成するためには、ハードウェアやプログラミング言語処理系のライブラリ等で提供される組み込み関数randを利用すればよい。どのような乱数を発生させればよいかは、発行比率X1:X2:・・・:Xn(あるいはその総和X1+X2+・・・+Xn)から決定することができる。
乱数発生部生成モジュール120は、記憶装置30から発行比率データDXを読み出す。発行比率データDXは、発行比率X1:X2:・・・:Xnを指定する。乱数発行部生成モジュール120は、この発行比率データDXに基づいて、リクエスト発行プログラムPREQの乱数発生部M2を生成する(図2、図3A参照)。上述の通り、乱数発生部M2を生成するためには、ハードウェアやプログラミング言語処理系のライブラリ等で提供される組み込み関数randを利用すればよい。どのような乱数を発生させればよいかは、発行比率X1:X2:・・・:Xn(あるいはその総和X1+X2+・・・+Xn)から決定することができる。
(ステップS130)
シーケンス選択発行部生成モジュール130は、記憶装置30から発行比率データDX及びシーケンス集合データDRを読み出す。シーケンス集合データDRは、図1で示されたリクエストシーケンス集合(複数種類のリクエストシーケンスR1〜Rn)を与える。シーケンス選択発行部生成モジュール130は、リクエストシーケンスR1〜Rnとそれらの発行比率X1:X2:・・・:Xnに基づいて、リクエスト発行プログラムPREQのシーケンス選択発行部M3を生成する(図2、図3A、図3B参照)。具体的には、上述の通り、第iリクエストシーケンスRiが、乱数発生部M2によって生成される(X1+X2+・・・+Xn)個の番号のうちXi個の番号群に対応付けられる。これにより、生成された乱数に対応するリクエストシーケンスを選択的に発行するシーケンス選択発行部M3を生成することができる。
シーケンス選択発行部生成モジュール130は、記憶装置30から発行比率データDX及びシーケンス集合データDRを読み出す。シーケンス集合データDRは、図1で示されたリクエストシーケンス集合(複数種類のリクエストシーケンスR1〜Rn)を与える。シーケンス選択発行部生成モジュール130は、リクエストシーケンスR1〜Rnとそれらの発行比率X1:X2:・・・:Xnに基づいて、リクエスト発行プログラムPREQのシーケンス選択発行部M3を生成する(図2、図3A、図3B参照)。具体的には、上述の通り、第iリクエストシーケンスRiが、乱数発生部M2によって生成される(X1+X2+・・・+Xn)個の番号のうちXi個の番号群に対応付けられる。これにより、生成された乱数に対応するリクエストシーケンスを選択的に発行するシーケンス選択発行部M3を生成することができる。
このようにして、リクエスト発行プログラムPREQが完成する。リクエスト発行プログラム生成モジュール100は、生成されたリクエスト発行プログラムPREQを、記憶装置30に格納し、また、リクエスト発行プログラム実行モジュール200に送る。
また、リクエスト発行プログラム生成モジュール100は、様々なパターンの発行比率毎に、リクエスト発行プログラムPREQを生成することもできる。例えば、発行比率データDXが複数のパターンの発行比率を示している場合を考える。この場合、乱数発生部生成モジュール120とシーケンス選択発行部生成モジュール130は、発行比率データDXから発行比率を順番に選択し、選択した発行比率を用いて乱数発生部M2とシーケンス選択発行部M3を生成する。これにより、リクエスト発行プログラム生成モジュール100は、発行比率が互いに異なる複数種のリクエスト発行プログラムPREQを順番に生成することができる。複数のリクエスト発行プログラムPREQは、順番にリクエスト発行プログラム実行モジュール200に送られる。
4−2.ステップS200
リクエスト発行プログラム実行モジュール200は、ステップS100において生成されたリクエスト発行プログラムPREQを実行する。この時の処理は、リクエスト発行プログラムPREQの処理と同じである(図2、図3A及び図3B参照)。すなわち、リクエスト発行プログラム実行モジュール200は、評価対象システム1に対して、複数種類のリクエストシーケンスR1〜Rnを指定された発行比率で発行する。また、リクエスト発行プログラム実行モジュール200は、各リクエスト対するレスポンスを評価対象システム1から受け取る。リクエストシーケンスの送信とレスポンスの受信は、通信装置40を通して行われる。本ステップS200は、所定の停止条件が満たされるまで実行される。
リクエスト発行プログラム実行モジュール200は、ステップS100において生成されたリクエスト発行プログラムPREQを実行する。この時の処理は、リクエスト発行プログラムPREQの処理と同じである(図2、図3A及び図3B参照)。すなわち、リクエスト発行プログラム実行モジュール200は、評価対象システム1に対して、複数種類のリクエストシーケンスR1〜Rnを指定された発行比率で発行する。また、リクエスト発行プログラム実行モジュール200は、各リクエスト対するレスポンスを評価対象システム1から受け取る。リクエストシーケンスの送信とレスポンスの受信は、通信装置40を通して行われる。本ステップS200は、所定の停止条件が満たされるまで実行される。
尚、あるリクエストシーケンスに含まれる各リクエストを発行する際、リクエストの発行間隔は任意でよい。発行中のリクエストに対するレスポンスを取得したのち、ただちに次のリクエストを発行してもよいし、一定時間待ってから発行してもよい。また、発行間隔を一様乱数や指数乱数を使って決定してもよい。また、リクエスト発行プロセス(スレッド)を複数起動し、評価対象システム1に対してこれらのスレッドが同時にリクエストを発行するようにリクエスト発行プログラムPREQを構成することも可能である。
4−3.ステップS300
ステップS200と同時に、性能評価モジュール300は、評価対象システム1の性能(内部状態)を計測する。つまり、性能評価モジュール300は、リクエストシーケンスR1〜Rnを処理中の評価対象システム1の性能(内部状態)を計測する。そして、性能評価モジュール300は、計測結果を性能レポートとして出力する。図5に示されるように、性能評価モジュール300は、計測モジュール310とレポート作成モジュール320を含んでいる。
ステップS200と同時に、性能評価モジュール300は、評価対象システム1の性能(内部状態)を計測する。つまり、性能評価モジュール300は、リクエストシーケンスR1〜Rnを処理中の評価対象システム1の性能(内部状態)を計測する。そして、性能評価モジュール300は、計測結果を性能レポートとして出力する。図5に示されるように、性能評価モジュール300は、計測モジュール310とレポート作成モジュール320を含んでいる。
(ステップS310)
計測モジュール310は、評価対象システム1の性能を計測する。例えば、計測モジュール310は、評価対象システム1を構成するサーバの「CPU使用率」及び「スループット」を計測する。CPU使用率は、CPUが単位時間あたりに処理を行う割合である。例えば、CPUが単位時間のうち30%の時間だけ処理を行い、残りの70%の時間はアイドル状態であったとき、CPU使用率は0.3(30%)である。スループットは、単位時間あたりに処理できるリクエスト数である。CPU使用率やスループットは、評価対象システム1の上で動作するOSやウェブサーバプログラム等が備える機能を使って取得することができる。スループットに関しては、リクエスト発行プログラム実行モジュール200が受信するレスポンスの受信数を基に算出することもできる。
計測モジュール310は、評価対象システム1の性能を計測する。例えば、計測モジュール310は、評価対象システム1を構成するサーバの「CPU使用率」及び「スループット」を計測する。CPU使用率は、CPUが単位時間あたりに処理を行う割合である。例えば、CPUが単位時間のうち30%の時間だけ処理を行い、残りの70%の時間はアイドル状態であったとき、CPU使用率は0.3(30%)である。スループットは、単位時間あたりに処理できるリクエスト数である。CPU使用率やスループットは、評価対象システム1の上で動作するOSやウェブサーバプログラム等が備える機能を使って取得することができる。スループットに関しては、リクエスト発行プログラム実行モジュール200が受信するレスポンスの受信数を基に算出することもできる。
評価対象システム1は、ウェブサーバ、アプリケーションサーバ及びデータベースサーバの3種類のサーバを用いて構築される場合がある。その場合は、各サーバのCPU使用率と、リクエストを最初に受信するウェブサーバのスループットが計測される。また、近年の仮想化技術を利用して、1台の物理サーバ上に構築される複数の仮想マシンを上記3種類のサーバとして稼動させてもよい。その場合は、仮想マシン上のOSからCPU使用率を取得するとともに、物理サーバ上のOSやVMM(バーチャルマシンモニタ)から物理サーバのCPU使用率を取得してもよい。
計測モジュール310は、計測された性能を示す計測データMESを記憶装置30に順次格納する。つまり、計測データMESは、計測された性能(CPU使用率やスループット)の時系列データとなる。
(ステップS320)
レポート作成モジュール320は、あるタイミングで、記憶装置30から計測データMES及び発行比率データDXを読み出す。そして、レポート作成モジュール320は、計測データMESと発行比率データDXを組み合わせて性能レポートデータREPを作成する。性能レポートデータREPは、発行比率データDXで示される発行比率と計測データMESで示される計測性能との対応関係を示すデータである。
レポート作成モジュール320は、あるタイミングで、記憶装置30から計測データMES及び発行比率データDXを読み出す。そして、レポート作成モジュール320は、計測データMESと発行比率データDXを組み合わせて性能レポートデータREPを作成する。性能レポートデータREPは、発行比率データDXで示される発行比率と計測データMESで示される計測性能との対応関係を示すデータである。
上述の通り、計測データMESは、評価対象システム1の性能の時系列変化を示している。従って、レポート作成モジュール320は、評価対象システム1の性能(CPU使用率、スループット)の所定期間における平均値や最大値を求めることができる。その平均値や最大値が、発行比率データDXで示される発行比率に応じた性能として採用されてもよい。レポート作成モジュール320は、発行比率と算出された性能との対応関係を示す性能レポートデータREPを作成する。
発行比率を様々なパターン間で変化させることによって、様々な発行比率の場合の評価対象システム1の性能を見積もることができる。すなわち、発行比率の種類に応じた性能の変化を知ることができる。例えば、発行比率が互いに異なる複数種のリクエスト発行プログラムPREQが順番に生成される。そして、それらリクエスト発行プログラムPREQの各々に関して、上述のステップS200、S310及びS320が実施される。発行比率の異なるリクエスト発行プログラムPREQが実行されるたびに、発行比率と算出された性能との対応関係が性能レポートデータREPに書き加えられていく。
図8は、作成される性能レポートデータREPの一例を示している。図8に示されるように、性能レポートデータREPは、複数のパターンの発行比率のそれぞれと性能(スループット、CPU使用率)との対応関係を示している。スループットの単位はTPS(Transactions Per Second)である。このような性能レポートデータREPを用いることにより、ユーザは、発行比率に依存する評価対象システム1の性能の変化や変動範囲を解析することができる。
発行比率は、所定の規則に従って自動的に変化させることもできる。例えば、3種類のリクエストシーケンスR1〜R3の場合に、発行比率X1:X2:X3の分配比率を1ずつ変化させる。つまり、発行比率(X1:X2:X3)を、(0:0:5)、(0:1:4)、(0:2:3)、・・・、(1:0:4)、(1:1:3)、・・・、(5:0:0)のように変化させる。これにより、様々な発行比率に応じたシステム性能を網羅的に検証することが可能となる。
(ステップS330)
以上の処理により作成された性能レポートデータREPは、出力装置60(ディスプレイやプリンタ)にレポートとして出力される。例えば、性能レポートデータREPは、ディスプレイに表示される。ユーザは、その表示を参照して、発行比率に依存する評価対象システム1の性能の変化や変動範囲を検証することができる。
以上の処理により作成された性能レポートデータREPは、出力装置60(ディスプレイやプリンタ)にレポートとして出力される。例えば、性能レポートデータREPは、ディスプレイに表示される。ユーザは、その表示を参照して、発行比率に依存する評価対象システム1の性能の変化や変動範囲を検証することができる。
5.効果
以上に説明されたように、本実施の形態によれば、評価対象システム1の性能試験において有用なリクエスト発行プログラムPREQが提供される。そして、そのリクエスト発行プログラムPREQを用いることによって、評価対象システム1に対して、複数種類のリクエストシーケンスR1〜Rnを指定された発行比率X1:X2:・・・:Xnで発行することが可能となる。これにより、現実に即した負荷を印加して、当該評価対象システム1の性能試験を実施することが可能となる。結果として、性能試験の精度が向上する。
以上に説明されたように、本実施の形態によれば、評価対象システム1の性能試験において有用なリクエスト発行プログラムPREQが提供される。そして、そのリクエスト発行プログラムPREQを用いることによって、評価対象システム1に対して、複数種類のリクエストシーケンスR1〜Rnを指定された発行比率X1:X2:・・・:Xnで発行することが可能となる。これにより、現実に即した負荷を印加して、当該評価対象システム1の性能試験を実施することが可能となる。結果として、性能試験の精度が向上する。
また、発行比率は、システム設計者や運用管理者の想定する前提や状況によって変化する。よって、様々な発行比率を想定してシステム性能を予め計測しておくことは、システム運用上非常に有益である。例えば、システム設計者や運用管理者は、上述の性能レポートを使って、システムのユーザとあらかじめ性能の保証に関する契約を交わすことができる。また、性能レポートと運用データをもとに、システムの増強や契約更改の計画を立案することもできる。
本実施の形態は、データセンター等におけるシステム運用管理業務のための性能検査および性能試験に好適である。
以上、本発明の実施の形態が添付の図面を参照することにより説明された。但し、本発明は、上述の実施の形態に限定されず、要旨を逸脱しない範囲で当業者により適宜変更され得る。
本出願は、2008年4月21日に出願された日本国特許出願2008−110326を基礎とする優先権を主張し、その開示の全てをここに取り込む。
Claims (17)
- サーバシステムの性能を試験するためのシステム性能試験方法であって、
前記サーバシステムに対して、複数種類のリクエストシーケンスを指定された発行比率で発行するステップと、
ここで、前記複数種類のリクエストシーケンスの各々は、前記サーバシステムに対する一連のリクエストから構成され、
前記複数種類のリクエストシーケンスの処理中に前記サーバシステムの性能を計測するステップと
を含む
システム性能試験方法。 - 請求の範囲1に記載のシステム性能試験方法であって、
前記発行比率を複数のパターン間で変化させながら、前記複数種類のリクエストシーケンスを発行するステップと前記サーバシステムの性能を計測するステップを実行するステップを更に含む
システム性能試験方法。 - 請求の範囲2に記載のシステム性能試験方法であって、
前記複数のパターンの前記発行比率のそれぞれと前記計測された性能との対応関係を示す性能レポートデータを作成するステップを更に含む
システム性能試験方法。 - 請求の範囲3に記載のシステム性能試験方法であって、
前記作成された性能レポートデータを表示装置に表示するステップを更に含む
システム性能試験方法。 - 請求の範囲1乃至4のいずれか一項に記載のシステム性能試験方法であって、
前記性能は、前記サーバシステムを構成するサーバのCPU使用率及びスループットを含む
システム性能試験方法。 - 請求の範囲1乃至5のいずれか一項に記載のシステム性能試験方法であって、
前記複数種類のリクエストシーケンスを発行するステップは、所定の停止条件が満たされるまで実行される
システム性能試験方法。 - 請求の範囲6に記載のシステム性能試験方法であって、
前記複数種類のリクエストシーケンスを発行するステップは、
前記複数種類のリクエストシーケンスが前記発行比率で選択されるように、前記複数種類のリクエストシーケンスを1つずつ選択するステップと、
前記選択されたリクエストシーケンスを前記サーバシステムに対して発行するステップと、
前記所定の停止条件が満たされるまで、前記複数種類のリクエストシーケンスを1つずつ選択するステップと前記選択されたリクエストシーケンスを発行するステップを繰り返し実行するステップと
を含む
システム性能試験方法。 - 請求の範囲7に記載のシステム性能試験方法であって、
前記複数種類のリクエストシーケンスは第1〜第nリクエストシーケンスを含み、nは2以上の整数であり、
前記第1〜第nリクエストシーケンス間の前記発行比率はX1:X2:・・・:Xnであり、X1〜Xnは整数であり、
第iリクエストシーケンスはXi個の番号に対応付けられ(i=1〜n)、
前記複数種類のリクエストシーケンスを1つずつ選択するステップは、
前記複数種類のリクエストシーケンスのそれぞれに対応付けられた番号を少なくとも含む複数の番号をランダムに発生させるステップと、
前記複数種類のリクエストシーケンスの中から前記発生した番号に対応するリクエストシーケンスを選択するステップと
を含む
システム性能試験方法。 - サーバシステムの性能を試験する性能試験処理をコンピュータに実行させるシステム性能試験プログラムであって、
前記性能試験処理は、
前記サーバシステムに対して、複数種類のリクエストシーケンスを指定された発行比率で発行するステップと、
ここで、前記複数種類のリクエストシーケンスの各々は、前記サーバシステムに対する一連のリクエストから構成され、
前記複数種類のリクエストシーケンスの処理中に前記サーバシステムの性能を計測するステップと
を含む
システム性能試験プログラム。 - サーバシステムの性能を試験するためのシステム性能試験装置であって、
前記サーバシステムに対して、複数種類のリクエストシーケンスを指定された発行比率で発行する実行モジュールと、
ここで、前記複数種類のリクエストシーケンスの各々は、前記サーバシステムに対する一連のリクエストから構成され、
前記複数種類のリクエストシーケンスの処理中に前記サーバシステムの性能を計測する性能評価モジュールと
を備える
システム性能試験装置。 - 請求の範囲10に記載のシステム性能試験装置であって、
更に、リクエスト発行プログラムを生成するリクエスト発行プログラム生成モジュールを備え、
前記実行モジュールは、前記生成されたリクエスト発行プログラムを実行することによって、前記複数種類のリクエストシーケンスを前記発行比率で発行する
システム性能試験装置。 - 請求の範囲11に記載のシステム性能試験装置であって、
前記複数種類のリクエストシーケンスは第1〜第nリクエストシーケンスを含み、nは2以上の整数であり、
前記第1〜第nリクエストシーケンス間の前記発行比率はX1:X2:・・・:Xnであり、X1〜Xnは整数であり、
第iリクエストシーケンスはXi個の番号に対応付けられ(i=1〜n)、
前記リクエスト発行プログラムは、
前記複数種類のリクエストシーケンスのそれぞれに対応付けられた番号を少なくとも含む複数の番号をランダムに発生させる乱数発生部と、
前記複数種類のリクエストシーケンスの中から前記発生した番号に対応するリクエストシーケンスを選択し、前記選択されたリクエストシーケンスを前記サーバシステムに対して発行するリクエスト選択発行部と、
所定の停止条件が満たされると処理を停止させるループ部と
を含む
システム性能試験装置。 - 請求の範囲12に記載のシステム性能試験装置であって、
前記リクエスト発行プログラム生成モジュールは、
前記所定の停止条件を示す停止条件データに基づいて前記ループ部を生成する第1モジュールと、
前記発行比率を示す発行比率データに基づいて前記乱数発生部を生成する第2モジュールと、
前記発行比率データと前記複数種類のリクエストシーケンスに基づいて、第iリクエストシーケンスをXi個の番号に対応付けることによって、前記リクエスト選択発行部を生成する第3モジュールと
を含む
システム性能試験装置。 - 請求の範囲13に記載のシステム性能試験装置であって、
前記発行比率データは、複数のパターンの前記発行比率を示し、
前記リクエスト発行プログラム生成モジュールは、前記複数のパターン毎に前記リクエスト発行プログラムを生成する
システム性能試験装置。 - 請求の範囲14に記載のシステム性能試験装置であって、
前記性能評価モジュールは、前記複数のパターンの前記発行比率のそれぞれと前記計測された性能との対応関係を示す性能レポートデータを作成する
システム性能試験装置。 - サーバシステムに対して、複数種類のリクエストシーケンスを指定された発行比率で発行するステップと、
ここで、前記複数種類のリクエストシーケンスの各々は、前記サーバシステムに対する一連のリクエストから構成され、
所定の停止条件が満たされるまで、前記複数種類のリクエストシーケンスを発行するステップを実行するステップと
をコンピュータに実行させる
リクエスト発行プログラム。 - 請求の範囲16に記載のリクエスト発行プログラムであって、
前記複数種類のリクエストシーケンスは第1〜第nリクエストシーケンスを含み、nは2以上の整数であり、
前記第1〜第nリクエストシーケンス間の前記発行比率はX1:X2:・・・:Xnであり、X1〜Xnは整数であり、
第iリクエストシーケンスはXi個の番号に対応付けられ(i=1〜n)、
前記複数種類のリクエストシーケンスを発行するステップは、
前記複数種類のリクエストシーケンスのそれぞれに対応付けられた番号を少なくとも含む複数の番号をランダムに発生させるステップと、
前記複数種類のリクエストシーケンスの中から前記発生した番号に対応するリクエストシーケンスを選択するステップと、
前記選択されたリクエストシーケンスを前記サーバシステムに対して発行するステップと
を含む
リクエスト発行プログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008110326 | 2008-04-21 | ||
JP2008110326 | 2008-04-21 | ||
PCT/JP2009/056073 WO2009130967A1 (ja) | 2008-04-21 | 2009-03-26 | システム性能試験方法、プログラム及び装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2009130967A1 true JPWO2009130967A1 (ja) | 2011-08-18 |
Family
ID=41216706
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010509120A Pending JPWO2009130967A1 (ja) | 2008-04-21 | 2009-03-26 | システム性能試験方法、プログラム及び装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20110022911A1 (ja) |
JP (1) | JPWO2009130967A1 (ja) |
WO (1) | WO2009130967A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013145628A1 (ja) * | 2012-03-30 | 2013-10-03 | 日本電気株式会社 | 情報処理装置及び負荷テスト実施方法 |
WO2013145629A1 (ja) * | 2012-03-30 | 2013-10-03 | 日本電気株式会社 | 負荷評価を実行する情報処理装置及び負荷評価方法 |
JP2014078166A (ja) * | 2012-10-11 | 2014-05-01 | Fujitsu Frontech Ltd | 情報処理装置、ログ出力制御方法、およびログ出力制御プログラム |
GB2523134A (en) * | 2014-02-13 | 2015-08-19 | Spatineo Oy | Service level monitoring for geospatial web services |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10293747A (ja) * | 1997-04-18 | 1998-11-04 | Nec Corp | クライアント・サーバシステムの性能評価装置及び方式 |
JP2002007232A (ja) * | 2000-06-21 | 2002-01-11 | Cybird Co Ltd | Wwwサーバーの性能試験方法およびサーバー試験装置 |
JP2005100161A (ja) * | 2003-09-25 | 2005-04-14 | Hitachi Software Eng Co Ltd | 性能試験支援装置 |
JP2007264967A (ja) * | 2006-03-28 | 2007-10-11 | Fujitsu Ltd | シナリオ作成プログラム |
-
2009
- 2009-03-26 JP JP2010509120A patent/JPWO2009130967A1/ja active Pending
- 2009-03-26 US US12/922,788 patent/US20110022911A1/en not_active Abandoned
- 2009-03-26 WO PCT/JP2009/056073 patent/WO2009130967A1/ja active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10293747A (ja) * | 1997-04-18 | 1998-11-04 | Nec Corp | クライアント・サーバシステムの性能評価装置及び方式 |
JP2002007232A (ja) * | 2000-06-21 | 2002-01-11 | Cybird Co Ltd | Wwwサーバーの性能試験方法およびサーバー試験装置 |
JP2005100161A (ja) * | 2003-09-25 | 2005-04-14 | Hitachi Software Eng Co Ltd | 性能試験支援装置 |
JP2007264967A (ja) * | 2006-03-28 | 2007-10-11 | Fujitsu Ltd | シナリオ作成プログラム |
Also Published As
Publication number | Publication date |
---|---|
WO2009130967A1 (ja) | 2009-10-29 |
US20110022911A1 (en) | 2011-01-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7844036B2 (en) | Visual test automation tool for message-based applications, web applications and SOA systems | |
US8245140B2 (en) | Visualization and consolidation of virtual machines in a virtualized data center | |
CN106576114A (zh) | 基于策略的资源管理和分配系统 | |
US20130326202A1 (en) | Load test capacity planning | |
WO2008134143A1 (en) | Resource model training | |
US20130246950A1 (en) | Methods and apparatus for creating overlays according to trending information | |
Matam et al. | Pro Apache JMeter | |
US11016633B2 (en) | Intelligent support recommendations for snap-ins | |
US11301362B1 (en) | Control system for distributed load generation | |
Grinshpan | Solving enterprise applications performance puzzles: queuing models to the rescue | |
AU2016278352A1 (en) | A system and method for use in regression testing of electronic document hyperlinks | |
WO2009130967A1 (ja) | システム性能試験方法、プログラム及び装置 | |
US20140331205A1 (en) | Program Testing Service | |
JP5896862B2 (ja) | テスト装置及びテスト方法及びプログラム | |
JP4843379B2 (ja) | 計算機システムの開発プログラム | |
US20230401086A1 (en) | Quality control system for quantum-as-a-service brokers | |
JP5967091B2 (ja) | システムパラメータ設定支援システム、システムパラメータ設定支援装置のデータ処理方法、およびプログラム | |
WO2016006101A1 (ja) | シミュレーションシステム、及び、シミュレーション方法 | |
JP2008171234A (ja) | システム構成候補導出装置、方法およびプログラム | |
US10380339B1 (en) | Reactively identifying software products exhibiting anomalous behavior | |
JP4169771B2 (ja) | Webサーバ、Webアプリケーションテスト方法、Webアプリケーションテストプログラム | |
JP2021174066A (ja) | テスト管理システム、テスト管理装置およびテスト管理方法 | |
JP5668836B2 (ja) | 情報処理装置,情報取得方法及び情報取得プログラム | |
Chynał | Hybrid approach to web based systems usability evaluation | |
JP2015036970A (ja) | 相場表示プログラム、相場表示装置及び相場表示システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120207 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130618 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130807 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20130902 |