JP2007265244A - Web system performance monitoring device - Google Patents
Web system performance monitoring device Download PDFInfo
- Publication number
- JP2007265244A JP2007265244A JP2006091961A JP2006091961A JP2007265244A JP 2007265244 A JP2007265244 A JP 2007265244A JP 2006091961 A JP2006091961 A JP 2006091961A JP 2006091961 A JP2006091961 A JP 2006091961A JP 2007265244 A JP2007265244 A JP 2007265244A
- Authority
- JP
- Japan
- Prior art keywords
- performance
- prediction
- prediction model
- web system
- overflow
- 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
Images
Landscapes
- Computer And Data Communications (AREA)
Abstract
Description
本発明は、ネットワーク上で所定のサービスを提供するウェブシステムの性能を監視する技術に関する。 The present invention relates to a technique for monitoring the performance of a web system that provides a predetermined service on a network.
ユーザがウェブブラウザ等を使用してインターネット経由でウェブシステムに送信するサービス要求は、年々飛躍的に増大している。近年では、トラフィック量の増加にシステムの増強が追いつかず、システムダウンするようなケースも頻発している。そこで、ウェブシステムの性能を監視し性能あふれの発生を事前に予測するとともに、性能あふれが発生したときにそれを素早く検知して的確な対策を実施できるウェブシステムの性能監視技術が求められている。そのような技術として、例えば特許文献1には、WWWサイトのサイトアクセスの変動を定期的に予測することによってサイトの性能を予測し、定められた性能を維持できるか否かを判断するWWWサイトの性能監視装置が開示されている。
ウェブシステムは通常、非常に多数のサーバから構成されており、提供されるサービスも多岐にわたっていることが多い。そのため、ウェブシステムの全体に対して単一のモデルを作成しても、システム全体としての性能しか把握できず、また性能あふれの発生箇所も特定できないため、適切なシステム増強や性能あふれ回避対策の実施が困難であるという問題がある。 Web systems are usually composed of a very large number of servers, and the services provided are often diverse. Therefore, even if a single model is created for the entire web system, only the performance of the entire system can be grasped, and the location where the performance overflow has occurred cannot be identified. There is a problem that it is difficult to implement.
本発明はこうした状況に鑑みてなされたものであり、その目的は、予測モデルを利用してウェブシステムの性能を予測するウェブシステムの性能監視装置を提供することにある。 The present invention has been made in view of such circumstances, and an object thereof is to provide a web system performance monitoring apparatus that predicts the performance of a web system using a prediction model.
本発明のある態様は、ウェブシステムの性能監視装置である。この装置は、ネットワーク上でサービスを提供する監視対象のウェブシステムから所定のパラメータを取得するデータ取得部と、ウェブシステムの性能を予測するための予測モデルのベースとなるベースモデルを格納するモデル格納部と、予測モデルを用いた予測結果に影響を与えるデータであるファクタの入力を受け付けるファクタ入力部と、ファクタを利用してベースモデルを修正し予測モデルを作成する予測モデル作成部と、作成された予測モデルとパラメータとから、ウェブシステムの特定時点における性能を表すデータである性能予測値を求め、該性能予測値と所定のしきい値との比較によってウェブシステムにおいて所定の性能を維持できなくなる性能あふれの発生を予知する性能あふれ予知部と、性能あふれが予知されたとき、ウェブシステムの性能を回復させる所定の対策プロセスを実行する対策実行部と、を備える。 One embodiment of the present invention is a web system performance monitoring apparatus. This apparatus stores a model that stores a data acquisition unit that acquires predetermined parameters from a monitored web system that provides a service on a network, and a base model that is a base of a prediction model for predicting the performance of the web system. A factor input unit that accepts input of factors that are data that affects the prediction results using the prediction model, a prediction model creation unit that modifies the base model using the factor and creates a prediction model, The performance prediction value, which is data representing the performance of the web system at a specific point in time, is obtained from the predicted model and parameters, and the web system cannot maintain the predetermined performance by comparing the performance prediction value with a predetermined threshold value. When a performance overflow is predicted, and when a performance overflow is predicted Comprising a countermeasure execution unit for executing a predetermined countermeasure processes to recover the performance of a web system, a.
この態様によると、ウェブシステムの性能を予測するための予測モデルの精度に影響を及ぼすファクタを特定し、ファクタを反映させた予測モデルを作成するようにした。これによって、ウェブシステムの将来の特定時点における性能を高精度に予測することができる。したがって、性能あふれの発生を予知しそれを予防する対策を事前にとることができる。 According to this aspect, the factors that affect the accuracy of the prediction model for predicting the performance of the web system are specified, and the prediction model reflecting the factors is created. This makes it possible to predict the performance of the web system at a specific point in the future with high accuracy. Therefore, it is possible to take in advance measures to predict and prevent the occurrence of overflow of performance.
ウェブシステムが異なるサービスを提供する複数のアプリケーションサーバを含み、各サービスが複数のアプリケーションの組合せで実現される場合、モデル格納部は、サービス、アプリケーション、およびサーバのそれぞれの性能を予測するための予測モデルのベースとなるベースモデルを格納し、予測モデル作成部は、サービス、アプリケーション、およびサーバのそれぞれに対して予測モデルを作成し、性能あふれ予知部は、作成されたサービス、アプリケーション、およびサーバの予測モデルを使用して、各予測モデルに予め対応付けられている性能予測値を求めてもよい。 When the web system includes a plurality of application servers that provide different services, and each service is realized by a combination of a plurality of applications, the model storage unit predicts the performance of each of the services, applications, and servers. The base model that is the base of the model is stored, the predictive model creation unit creates a predictive model for each of the service, application, and server, and the full-performance predictor predicts the created service, application, and server. You may obtain | require the performance prediction value matched beforehand with each prediction model using a prediction model.
個々のアプリケーションや、アプリケーションの組合せで実現されるサービス、またはサーバ毎に予測モデルを作成することによって、ウェブシステム内のいずれのハードウェアまたはソフトウェアが性能のボトルネックとなるのか、およびウェブシステム内のいずれのハードウェアまたはソフトウェアが性能あふれの原因となりうるのかを容易に発見することができる。したがって、予測される性能あふれに対して適切な回避対策を立てることが可能になる。ウェブシステムが当該ウェブシステムへのアクセス経路毎にサービスを分担する複数のサーバを含む場合も同様である。 By creating a predictive model for each application, service realized by a combination of applications, or for each server, which hardware or software in the web system is a performance bottleneck, and in the web system It is easy to discover which hardware or software can cause performance overflow. Therefore, it is possible to take appropriate avoidance measures against the predicted performance overflow. The same applies when the web system includes a plurality of servers that share services for each access route to the web system.
なお、以上の構成要素の任意の組合せ、本発明を方法、装置、システム、記録媒体、コンピュータプログラムにより表現したものもまた、本発明の態様として有効である。 It should be noted that any combination of the above-described components and a representation of the present invention by a method, apparatus, system, recording medium, and computer program are also effective as an aspect of the present invention.
本発明によれば、ネットワーク上でサービスを提供するウェブシステムの予測モデルを作成して、ウェブシステムにおける将来の性能を予測することができる。 According to the present invention, it is possible to create a prediction model of a web system that provides a service on a network and predict future performance in the web system.
本発明の一実施形態は、ネットワーク上でサービスを提供するウェブシステムの性能を監視する性能監視装置である。この性能監視装置は、ウェブシステムにかかる性能予測モデルを作成し、この予測モデルにウェブシステムから取得したパラメータを入力することによって、将来のウェブシステムの性能を予測する。 One embodiment of the present invention is a performance monitoring apparatus that monitors the performance of a web system that provides a service on a network. This performance monitoring apparatus predicts the performance of a future web system by creating a performance prediction model for the web system and inputting parameters obtained from the web system to the prediction model.
以下では、証券の売買注文を処理したり売買に関する情報を提供したりする証券システムの性能監視装置を例として、本実施形態について詳細に説明する。 In the following, the present embodiment will be described in detail by taking as an example a performance monitoring device for a securities system that processes securities trading orders and provides information relating to trading.
図1は、本実施形態にかかる性能監視装置の監視対象である証券システム100の構成を示す。証券システム100は、証券会社に設置され、顧客からの証券の売買注文を受け付けたり、証券注文に役立つ様々な情報を提供するシステムである。
FIG. 1 shows a configuration of a
証券システム100は、プレゼンテーションレイヤ110とビジネスロジックレイヤ120を含む。プレゼンテーションレイヤ110は、主にクライアント端末から入力されるデータを受け付けてビジネスロジックレイヤ120に渡したり、またはビジネスロジックレイヤ120から提供されるデータをウェブページに加工してクライアント端末に提供する役割を有する。ビジネスロジックレイヤ120は、証券の売買注文や情報の提供などの実際の処理を担当する役割を有する。
The
プレゼンテーションレイヤ110は、複数のウェブサーバを含む。本実施形態では、証券システム100に対するアクセスチャネル毎に、ウェブページの処理を実行するサーバのグループが準備されている。図1では、ウェブ経由の一般顧客、コールセンター、支店からそれぞれのクライアント端末82a〜82cを使用して証券システム100にアクセスする場合を想定している。したがって、プレゼンテーションレイヤ110には、一般顧客からのアクセスに対する処理を担当する一般用ウェブサーバ102と、コールセンターからのアクセスに対する処理を担当するコールセンター用ウェブサーバ104と、支店からのアクセスに対する処理を担当する支店用ウェブサーバ106とを備える。さらに、通常は休止している予備のウェブサーバ108を準備しておいてもよい。ウェブサーバ102〜108は、複数のサーバで構成されてもよい。各ウェブサーバ102〜108は、上記の機能の他、クライアント端末からの要求に応じてプログラムを実行しその結果を送信する動的ページの生成機能やトランザクション管理機能などを実装している。
The
ビジネスロジックレイヤ120には、アクセスチャネル毎ではなく、所定のサービスを専用に実行するサーバのグループが準備されている。本実施形態では、現在および過去の株価や出来高、会社情報などの証券売買の際に必要となる情報をクライアント端末に提供するサービスを実行する情報提供アプリケーションサーバ122、株や投資信託などの売買注文を受け付けるサービスを実行する注文処理アプリケーションサーバ124、ユーザのログインやログアウト、顧客情報などを管理するサービスを実行する事務処理アプリケーションサーバ126を備えているものとする。これ以外にも、例えば、外部の新聞社のサイトなどと連携して経済ニュースを提供する外部連携アプリケーションサーバや、顧客毎に取引残高の報告書などを提供する報告書アプリケーションサーバなどを備えていてもよい。アプリケーションサーバ122〜126は、複数のサーバで構成されてもよい。各アプリケーションサーバ122〜126は、上記の業務処理の機能の他、一般のアプリケーションサーバが有している機能、例えば、データベースへの接続機能、複数の処理を連結するトランザクション管理機能なども実装している。
In the
各アプリケーションサーバ122〜126では、複数のクライアント端末に対するサービス130〜140が同時に実行される。例えば、情報提供アプリケーションサーバ122では、一般顧客に対して株価情報を提供するサービスA130と、コールセンターに対して株価情報を提供するサービスB132が同時に実行されてもよい。注文処理アプリケーションサーバ124では、コールセンターからの株式売買注文を処理するサービスC134と、店舗からの投資信託売買注文を処理するサービスD136が同時に実行されてもよい。
In each of the
なお、本明細書では、個々の機能を実現するプログラムを「アプリケーション」と呼び、アプリケーションの組合せで実現されるものを「サービス」と呼ぶ。例えば、注文処理アプリケーションサーバ124で実行される「注文処理サービス」には、「注文規制銘柄チェック」「買い付け余力チェック」「顧客属性チェック」「注文処理」の各アプリケーションが含まれる。
In this specification, a program that realizes each function is called an “application”, and a program that is realized by a combination of applications is called a “service”. For example, the “order processing service” executed by the order
一般顧客、コールセンターや支店の担当員は、それぞれのクライアント端末82a〜82cからウェブブラウザなどのソフトウェアを使用し、インターネット等のネットワーク80を介して証券システム100にアクセスする。コールセンターや支店に備えられるクライアント端末82b、82cは、証券システム100と専用線84によって接続されていてもよい。
General customers, call center and branch office staff access the
クライアント端末82a〜82dから証券システム100にアクセスすると、プレゼンテーションレイヤ110のアクセスチャネルに応じたウェブサーバ102〜106によって作成されたウェブページが、クライアント端末82a〜82dに提供される。クライアント端末82a〜82dは、提供されたウェブページをディスプレイに表示する。ユーザがウェブページ上でログイン、情報の閲覧、売買注文などの操作を実行すると、その情報がウェブサーバ102〜106を介してビジネスロジックレイヤ120のアプリケーションサーバ122〜126に渡される。各アプリケーションサーバ122〜126による処理の結果は、ウェブサーバ102〜106によってウェブページに加工され、そのデータがクライアント端末82a〜82dに送信される。こうしてユーザは、ウェブページに表示される種々の情報を参照したり、またはウェブページを通じて証券の売買注文をすることができる。
When the
図2は、性能監視装置10の構成を示す機能ブロック図である。これらの構成は、ハードウェア的には、CPU、メモリ、その他のLSIで実現でき、ソフトウェア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
FIG. 2 is a functional block diagram showing the configuration of the
データ取得部12は、監視対象の証券システム100から所定のパラメータを取得する。このパラメータは、ウェブシステムを構成するハードウェアの性能、実行中のアプリケーションにおける動作、提供しているサービスの利用状況などに関するものである。データ取得部12は、パラメータの種類に応じて取得のタイミングを変更してもよい。具体的なパラメータの例、および取得タイミングの例は、図5を参照して後述する。
The
モデル格納部18は、証券システム100の性能を予測するための予測モデルのベースとなるベースモデルを格納する。このベースモデルを、刻々と変化する証券システム100の利用状況に合わせて修正することによって、予測モデルが作成される。モデル格納部18には、サーバ、アプリケーション、サービスに対して別々のベースモデルが準備されている。ベースモデルは、過去の証券システム100の利用状況や動作状況、ハードウェア構成、実行するアプリケーションの種類、性能、将来のシステム利用予測などを考慮して、システム管理者によって予め作成され、モデル格納部18に格納される。
The
ファクタ入力部14は、予測モデルを修正するためのファクタの入力を受け付ける。本明細書において「ファクタ」とは、証券システムの予測モデルにおける予測の精度に影響を及ぼしうるデータのことをいう。ファクタは、システム管理者によりマニュアルで入力されるものもあれば、証券システム100から自動で取得されるものもある。ファクタの例については、図4を参照して後述する。
The
予測モデル作成部16は、モデル格納部18からベースモデルを取り出し、ファクタ入力部14から受け取ったファクタを用いてベースモデルを修正して、予測モデルを作成する。「予測モデル」とは、現時点のひとつまたは複数のパラメータを入力することにより、将来の特定時点における証券システム100の性能を予測することができるモデルである。モデル格納部18に格納されるベースモデルは、サーバ、アプリケーション、およびサービスに対して共通であるが、予測モデル作成部16では、証券システム100に含まれるサーバ、証券システム100で実行されているアプリケーションや個々のサービス毎に別々の予測モデルが作成されることが好ましい。モデル格納部18に格納されるベースモデルが、サーバ、アプリケーション、およびサービスのそれぞれについて別のモデルであってもよい。図1の例でいえば、ウェブサーバ102〜106、またはアプリケーションサーバ122〜126のそれぞれについて「リソース予測モデル」が、アプリケーションサーバ122〜126で実行されるサービス130〜140のそれぞれについて「サービス予測モデル」が、各サービスに含まれるアプリケーションについて「アプリケーション予測モデル」が作成される。
The prediction
予測モデル作成部16は、リソース予測モデル、アプリケーション予測モデル、およびサービス予測モデルを作成するとき、それぞれ異なるファクタを利用してベースモデルを修正する。ファクタと修正すべき予測モデルの対応関係は予め定められている。
When creating a resource prediction model, an application prediction model, and a service prediction model, the prediction
性能あふれ予知部22は、データ取得部12で取得されたパラメータを受け取る。また、性能あふれ予知部22は、予測モデル作成部16からリソース予測モデル24、アプリケーション予測モデル26、およびサービス予測モデル28を受け取る。そして、作成された予測モデル24〜28にパラメータを入力して、証券システム100の特定時点における性能を表すデータである性能予測値を算出する。性能予測値には、例えば、サービスの処理時間、ユーザからのリクエスト数、ターンアラウンドタイム、計算負荷、ストレージ空き容量などが含まれるが、これらに限定されるわけではない。性能予測値のうちのすべてまたは一部は、データ取得部12で取得されるパラメータと同一のものであってよい。
The performance
なお、各予測モデル24〜28に入力されるべきパラメータは、予測モデル毎に予め定められている。また、各予測モデル24〜28で算出される性能予測値も、予測モデル毎に予め定められている。例えば、リソース予測モデル24からは、上述の性能予測値のうち、計算負荷、ストレージ空き容量を求めることができる。
Note that parameters to be input to each of the
さらに、性能あふれ予知部22は、算出された性能予測値と、性能予測値毎に定められたしきい値とを比較することによって、証券システム100が将来の特定時点で所望の性能を維持できるか否かを判定する。本明細書では、証券システム100が所望の性能を維持できなくなる状態を「性能あふれ」と呼ぶ。性能あふれの例には、トラフィックの増加によりサービスの処理時間やターンアラウンドタイムがしきい値より長くなること、ユーザからのリクエスト数がしきい値を越えること、計算負荷量がしきい値を越えること、ストレージ空き容量がしきい値未満となることなどがあるが、これらに限定されるわけではない。
Furthermore, the performance
対策実行部30は、性能あふれ予知部22によって将来の特定時点で性能あふれが発生すると判定されたとき、証券システム100の性能あふれを回復させる所定の対策プロセスを実行する。対策実行部30は、リソース割り当て部32と、ログイン制限部34と、サービス停止部36と、エラー通知部38とを含む。
The
リソース割り当て部32は、証券システム100においてアプリケーションまたはサービスを実行するリソースの不足のために性能あふれが発生すると判定された場合に、予め余分に準備されているサーバをリソースが不足すると予測されたアプリケーションまたはサービスに分配する。より具体的な例を述べると、例えば、性能あふれ予知部22において、ウェブサーバ102〜106のいずれかのリソース予測モデルにおいて、性能予測値である計算負荷がしきい値を上回ったり、ストレージ空き容量がしきい値を下回ったりすると予測されたとする。この場合、リソース割り当て部32は、予備のウェブサーバ108に対して、性能あふれが予測されたウェブサーバにおける処理の一部を分担するように指令する。
When it is determined that the performance overflow occurs due to a shortage of resources for executing the application or service in the
または、リソース割り当て部32は、証券システム100内の未使用のサーバまたはワークスペースを、リソースが不足すると予測されたアプリケーションまたはサービスに分配するようにしてもよい。この場合、データ取得部12は、証券システム100内で未使用のリソースを予め検出しておく必要がある。このように、リソース割り当て部32によって、システム内のリソースを動的に運用することができる。
Alternatively, the
ログイン制限部34は、証券システム100においてアプリケーションまたはサービスを実行するリソースの不足のために性能あふれが発生すると判定された場合に、証券システム100へのログインを制限させる。具体的には、ログイン制限部34は、事務処理アプリケーションサーバ126に対して、一定数以上のログインを受け付けないように指令する。
The
サービス停止部36は、証券システム100においてアプリケーションまたはサービスを実行するリソースの不足のために性能あふれが発生すると判定された場合に、特定のアプリケーションまたはサービス以外のアプリケーションまたはサービスの提供を停止させる。この特定のアプリケーションまたはサービスは、システムにおいて最も重要な基幹業務を実施するものであることが好ましい。証券システム100であれば、注文処理アプリケーションサーバ124における売買注文サービスが最も重要であるから、情報提供アプリケーションサーバ122における情報の提供サービスや、または事務処理アプリケーションサーバ126による顧客情報の更新などのサービスを停止させることが好ましい。このように一部のサービスを停止することによって、基幹となるサービスを維持しつつ、性能あふれによるシステム全体のダウンを回避することができる。
The
サービス停止部36は、証券システム100においてリソースが不足すると判定された場合、ウェブサーバのうち特定のアクセスチャネルに対応するものだけを停止するようにしてもよい。例えば、一般用ウェブサーバ102を停止させて、コールセンター用ウェブサーバ104と支店用ウェブサーバ106はそのまま維持してもよい。この場合、一般用ウェブサーバ102のリソースを、コールセンター用ウェブサーバ104や支店用ウェブサーバ106に割り当てるようにリソース割り当て部32に指示してもよい。
The
エラー通知部38は、性能あふれ予知部22によって証券システム100に性能あふれが発生すると判定された場合、システム管理者などに対して性能あふれが予知されている旨のeメールを発信する。これによって、システム管理者は性能あふれが実際に発生する前に迅速に対策を立てることができる。エラー通知部38は、「しばらくの間接続をお控えください」などのユーザに対する依頼をウェブページに表示するように、ウェブサーバ102〜106に指示してもよい。
When it is determined by the performance
対策実行部30は、証券システム100に実際に性能あふれが発生した場合の復旧手順や、将来的なトラフィックの増加が見込まれる場合のシステムの増強手順を策定して、システム管理者に提示する機能を有していてもよい。
The
システム診断部40は、証券システム100の性能を定期的に検査して、所望の性能が出ているか否かを診断する。例えば、アプリケーション毎の処理速度やターンアラウンドタイムを測定し、所定のしきい値や前回の測定結果と比較する。所望の性能が出ていない場合、アプリケーションやデータベースの設計の見直しなどのシステムの改善策を策定してシステム担当者に提示する。
システム診断部40は、証券システム100における実際の性能と、性能あふれ予知部22における予測モデルを用いて算出された性能とを比較し、実際の値と予測値との誤差を小さくするように、予測モデルを補正する機能を有していてもよい。
The
The
性能あふれ検知部20は、証券システム100の動作をリアルタイムで監視する。例えば、各サーバの処理負荷やトラフィック量を監視し、所定のしきい値を越えると、システム管理者に対して警告を発する。性能あふれ検知部20により性能あふれが検知されると、対策実行部30は、性能あふれが予知されたときと同様の対策プロセスを実行する。
The performance
次に、図3のフローチャートを参照して、予測モデル作成部16における予測モデルの作成プロセスを説明する。
まず、予測モデル作成部16は、モデル格納部18から、サーバ、アプリケーション、およびサービス毎に準備されているベースモデルを読み出す(S10)。続いて、ファクタ入力部14で入力されたファクタを受け取る(S12)。さらに、予測モデル作成部16は、証券システム100内の各サーバのマシン単位およびグループ単位のハードウェア性能値を取得する(S14)。このハードウェア性能値は、サーバおよびサーバグループが発揮すべき性能の目標値である。ハードウェア性能値は、システム管理者により予め入力されていてもよいし、証券システム100の処理負荷が低い時間帯に自動で測定されてもよい。予測モデルは、各サーバが取得したハードウェア性能値のもとで動作すると仮定して作成される。マシン単位およびグループ単位でハードウェア性能値を取得するのは、複数台のサーバが連携して動作すると発揮される性能が単なる合計にならないことが多いためである。
Next, a prediction model creation process in the prediction
First, the prediction
予測モデル作成部16は、取得したファクタおよびハードウェア性能値を用いてベースモデルを修正し、リソース予測モデル、アプリケーション予測モデル、およびサービス予測モデルを作成する(S16)。ファクタおよびハードウェア性能値によるベースモデルの修正方法としては、例えば、ベースモデルを構成する数式における比例係数の変更、特定の項の削除または追加などが考えられる。
The prediction
最後に、予測モデル作成部16は、各予測モデルについて、性能あふれと判定するためのしきい値を設定する(S18)。このしきい値は、予測モデル毎に予め定められていてもよいし、ファクタに比例して変化するものでもよい。作成された予測モデルとしきい値とは、性能あふれ予知部22に渡される。
Finally, the prediction
このように、予測モデルをサーバ毎、アプリケーション毎、サービス毎に作成することによって、アプリケーションやサービス単位での性能予測と性能あふれ対策の実施が可能になる。 As described above, by creating a prediction model for each server, each application, and each service, it becomes possible to perform performance prediction and performance overflow countermeasures for each application or service.
図4は、予測モデル作成の際に考慮されるファクタの一例を示す表である。表50は、ファクタのタイプを表す列52と、ファクタを表す列54と、ファクタを考慮した修正の対象となる予測モデルを表す列56とを含む。予測モデルは、あるファクタの影響を大きく受けるものからほとんど影響を受けないものまで様々である。そこで、ファクタ毎に、修正の対象となる予測モデルを定めておくことが好ましい。
FIG. 4 is a table showing an example of factors considered when creating a prediction model. The table 50 includes a
ファクタのタイプには、定常的ファクタと、期間的ファクタと、突発的ファクタとがある。定常的ファクタは、証券システム100の動作中、一定間隔で取得し続ける必要のあるファクタである。定常的ファクタには、契約口座数、注文件数、出来高、アクセスチャネル毎のログイン人数、リクエスト数などがある。このうち、「契約口座数」のファクタは、ユーザ情報の管理に関わる事務処理アプリケーションの性能に大きく影響を与えるので、事務処理アプリケーションの予測モデルが修正の対象となる。その他のファクタは、いずれも注文処理量に大きく影響を与えるので、注文処理アプリケーションが修正の対象となる。
Factor types include stationary factors, periodic factors, and sudden factors. The stationary factor is a factor that needs to be acquired at regular intervals during the operation of the
期間的ファクタは、ある一定の期間(例えば、一ヶ月間)だけ考慮すればよいファクタである。期間的ファクタには、新サービスの提供、高速回線の提供、営業の実施などがある。これらは、いずれも提供の後一定の期間、トラフィック量の増大につながると考えられるので、その間だけ予測モデルの比例係数を上げるなどの修正が必要になる。期間的ファクタは、その性質上、システム管理者によりマニュアルで入力される必要がある。 The period factor is a factor that needs to be considered only for a certain period (for example, one month). Periodic factors include the provision of new services, the provision of high-speed lines, and the implementation of sales. All of these are considered to lead to an increase in the traffic volume for a certain period after provision, and thus correction such as increasing the proportional coefficient of the prediction model is necessary only during that period. Due to its nature, the period factor must be entered manually by the system administrator.
突発的ファクタは、瞬間的(例えば、一日間)だけ考慮すればよいファクタである。突発的ファクタには、特定の事件の発生、システム障害の回復などがある。これらは、瞬間的にトラフィック量の増大につながると考えられるので、その間だけ予測モデルの比例係数を上げるなどの修正が必要になる。突発的ファクタも、システム管理者によりマニュアルで入力される必要がある。 An abrupt factor is a factor that needs to be considered only momentarily (eg, for one day). Sudden factors include the occurrence of specific incidents and the recovery of system failures. Since these are considered to lead to an increase in traffic momentarily, it is necessary to make corrections such as increasing the proportionality coefficient of the prediction model only during that time. Sudden factors must also be entered manually by the system administrator.
このように、ファクタと、そのファクタを考慮した修正の対象となる予測モデルとを対応付けておくことで、予測モデルの適切な修正が可能になる。 As described above, by associating a factor with a prediction model to be corrected in consideration of the factor, the prediction model can be appropriately corrected.
図5は、予測モデルに入力されるパラメータの一例を示す表である。表60は、パラメータが入力される予測モデルを表す列62と、パラメータを表す列64と、パラメータの取得タイミングを表す列66とを含む。
サービス予測モデルに入力されるパラメータには、リクエスト数、ログイン数などがある。これらの取得タイミングは、例えば毎分である。
アプリケーション予測モデルに入力されるパラメータには、アプリケーションの呼出し回数、処理時間、ターンアラウンドタイム、ページビューなどがある。呼出し回数の取得タイミングは所定時刻であり、他のパラメータの取得タイミングは例えば毎時である。
リソース予測モデルに入力されるパラメータには、CPU使用率、メモリ使用量、ストレージ空き容量などがある。これらの取得タイミングは、例えば毎分である。
FIG. 5 is a table showing an example of parameters input to the prediction model. The table 60 includes a
The parameters input to the service prediction model include the number of requests and the number of logins. These acquisition timings are, for example, every minute.
Parameters input to the application prediction model include the number of application calls, processing time, turnaround time, page view, and the like. The acquisition timing of the number of calls is a predetermined time, and the acquisition timing of other parameters is, for example, every hour.
Parameters input to the resource prediction model include a CPU usage rate, a memory usage amount, a storage free space, and the like. These acquisition timings are, for example, every minute.
図6は、性能あふれ予知部22における性能あふれ予知プロセスのフローチャートである。
まず、性能あふれ予知部22は、予測モデル作成部16から、リソース予測モデル、アプリケーション予測モデル、およびサービス予測モデルと、それぞれのしきい値とを受け取る(S30)。続いて、各予測モデルに対応するパラメータを入力して、将来の特定時点における性能予測値を算出する(S32)。性能あふれ予知部22は、算出された性能予測値としきい値とを比較し(S34)、証券システム100に性能あふれの発生が予測されるか否かを判定する(S36)。性能あふれの発生が予測されなければ(S36のN)、プロセスを終了し、性能あふれの発生が予測されると(S36のY)、対策実行部30により性能あふれ回復プロセスが実行される(S38)。
FIG. 6 is a flowchart of the performance overflow prediction process in the performance
First, the
図7は、証券システム100のウェブサーバ、アプリケーションサーバのハードウェア構成を示す。各サーバは、プログラムにしたがって各種処理を実行するCPU70と、一時的にデータやプログラムを記憶するメモリ72と、ハードディスクドライブ、DVDディスクドライブなどの記憶装置74と、ネットワークに接続し各種の入出力処理を実行するネットワークインタフェース76と、これらを相互接続するバス78と、を少なくとも含む。サーバは、必要に応じて、キーボードやマウス等の入力装置、ディスプレイなどの出力装置を有していてもよい。なお、一つのサーバが二つ以上のネットワークインタフェース76を有していてもよい。
FIG. 7 shows the hardware configuration of the web server and application server of the
各サーバは、一枚の基板にコンピュータとして動作するために必要な要素、つまりCPU、メモリ、ハードディスク、バスなどが搭載されたブレードサーバであることが好ましく、ウェブサーバ102〜108やアプリケーションサーバ122〜126は、このブレードサーバが筐体に複数差し込まれているような構成をとることが好ましいが、他の形態であってもよい。
Each server is preferably a blade server in which elements necessary for operating as a computer on a single board, that is, a CPU, a memory, a hard disk, a bus, and the like are mounted, and the
各サーバは、ルータ(図示せず)を介してネットワークストレージ(図示せず)と通信可能に構成されている。アプリケーションの実行に必要なマスタテーブルやデータベース等はネットワークストレージに格納されており、必要に応じてネットワークストレージから各サーバに送信可能となっている。ネットワークストレージは一般にはハードディスク装置であり、通常、複数のディスクを集めてRAIDを構成しているが、磁気テープ装置であってもよい。 Each server is configured to be able to communicate with a network storage (not shown) via a router (not shown). A master table, a database, and the like necessary for executing the application are stored in the network storage, and can be transmitted from the network storage to each server as necessary. The network storage is generally a hard disk device, and normally a RAID is formed by collecting a plurality of disks, but may be a magnetic tape device.
以上説明したように、本実施形態によれば、複数のサーバ、アプリケーション、サービス毎に、将来の特定時点での性能を予測するための予測モデルを作成するようにしたので、監視対象であるウェブシステム内のいずれのハードウェアまたはソフトウェアがシステム性能あふれの発生原因となりうるのかを容易に発見することができる。したがって、予測される性能あふれに応じて適切な回避対策を立てることが可能になる。 As described above, according to the present embodiment, a prediction model for predicting performance at a specific time in the future is created for each of a plurality of servers, applications, and services. It is possible to easily discover which hardware or software in the system can cause the overflow of system performance. Therefore, it is possible to take appropriate avoidance measures according to the predicted performance overflow.
従来のウェブシステムの監視装置では、トラフィックの増加などによりシステムに与える影響を予測することが困難であり、そのためシステムの増強などの対策を迅速に実施することができなかった。これに対し、本実施形態の性能監視装置では、予測モデルの精度に影響を及ぼすファクタを特定し、これらファクタを予測モデルの作成に反映させるようにした。これによって、証券システムの将来の特定時点における性能を高精度に予測することができる。したがって、性能あふれが発生してから事後的に対応するのではなく、性能あふれの発生を予知し、それを予防する対策をとることができる。 In the conventional web system monitoring device, it is difficult to predict the impact on the system due to an increase in traffic, and therefore, measures such as system enhancement cannot be implemented quickly. In contrast, in the performance monitoring apparatus of the present embodiment, factors that affect the accuracy of the prediction model are specified, and these factors are reflected in the creation of the prediction model. This makes it possible to predict the performance of the securities system at a specific point in the future with high accuracy. Therefore, instead of responding after the occurrence of overflow, it is possible to predict the occurrence of overflow and take measures to prevent it.
また、サーバ、アプリケーション、サービス毎にベースモデルを準備し、それぞれの特性に合ったファクタを利用してベースモデルを修正し、予測モデルを作成するようにしたので、システム性能の予測の精度が向上する。 In addition, a base model is prepared for each server, application, and service, and the base model is modified by using factors that match the characteristics of each to create a prediction model. This improves the accuracy of system performance prediction. To do.
また、ファクタのタイプを複数に分けて、定常的なファクタについては定常的に取得してモデルに反映させるようにしたので、システムの利用状況の変化を迅速に予測モデルに反映させることができる。さらに、期間的ファクタ、突発的ファクタを設け、限られた期間だけ考慮すればよい要因も予測モデルに反映させるようにしたので、システム性能の予測の精度が向上する。 In addition, since the factor types are divided into a plurality, and the steady factor is constantly acquired and reflected in the model, a change in the system usage status can be quickly reflected in the prediction model. Furthermore, since a period factor and an abrupt factor are provided and a factor that needs to be considered only for a limited period is reflected in the prediction model, the accuracy of system performance prediction is improved.
以上、本発明をいくつかの実施の形態をもとに説明した。これらの実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例がありうること、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。 The present invention has been described based on some embodiments. Those skilled in the art will understand that these embodiments are exemplifications, and that there may be various modifications to the combinations of the respective constituent elements and processing processes, and such modifications are also within the scope of the present invention. By the way.
請求項に記載の各構成要件が果たすべき機能は、本実施例において示された各機能ブロックの単体もしくはそれらの連係によって実現されることも当業者には理解されるところである。 It should also be understood by those skilled in the art that the functions to be fulfilled by the constituent elements described in the claims are realized by the individual functional blocks shown in the present embodiment or their linkage.
実施形態では、サービスについて予測モデルを作成することを述べたが、複数のサービスの組合せである「サービスグループ」について予測モデルを作成してもよい。ここで、サービスグループは、業務フローを完結させる一連のサービスを含むものである。例えば、「株価コード入力サービス」「時価確認サービス」「購入単位、方法入力サービス」「注文受付サービス」のすべてを含むサービスグループが考えられる。 In the embodiment, it is described that a prediction model is created for a service. However, a prediction model may be created for a “service group” that is a combination of a plurality of services. Here, the service group includes a series of services for completing the business flow. For example, a service group including all of “stock price code input service”, “market price confirmation service”, “purchase unit / method input service”, and “order reception service” can be considered.
実施形態では、性能監視装置の監視対象として証券システムを例示したが、監視対象となるウェブシステムはこれに限定されない。 In the embodiment, the securities system is exemplified as the monitoring target of the performance monitoring device, but the web system to be monitored is not limited thereto.
10 性能監視装置、 12 データ取得部、 14 ファクタ入力部、 16 予測モデル作成部、 18 モデル格納部、 20 性能あふれ検知部、 22 性能あふれ予知部、 24 リソース予測モデル、 26 アプリケーション予測モデル、 28 サービス予測モデル、 30 対策実行部、 32 リソース割り当て部、 34 ログイン制限部、 36 サービス停止部、 38 エラー通知部、 80 ネットワーク、 82a〜d クライアント端末、 100 証券システム、 102 一般用ウェブサーバ、 104 コールセンター用ウェブサーバ、 106 支店用ウェブサーバ、 122 情報提供アプリケーションサーバ、 124 注文処理アプリケーションサーバ、 126 事務処理アプリケーションサーバ、 130〜140 サービス。
DESCRIPTION OF
Claims (10)
前記ウェブシステムの性能を予測するための予測モデルのベースとなるベースモデルを格納するモデル格納部と、
前記予測モデルを用いた予測結果に影響を与えるデータであるファクタの入力を受け付けるファクタ入力部と、
前記ファクタを利用して前記ベースモデルを修正し予測モデルを作成する予測モデル作成部と、
作成された予測モデルと前記パラメータとから、前記ウェブシステムの特定時点における性能を表すデータである性能予測値を求め、該性能予測値と所定のしきい値との比較によって前記ウェブシステムにおいて所定の性能を維持できなくなる性能あふれの発生を予知する性能あふれ予知部と、
性能あふれが予知されたとき、前記ウェブシステムの性能を回復させる所定の対策プロセスを実行する対策実行部と、
を備えることを特徴とするウェブシステムの性能監視装置。 A data acquisition unit that acquires predetermined parameters from a monitored web system that provides a service on a network;
A model storage unit that stores a base model serving as a base of a prediction model for predicting the performance of the web system;
A factor input unit that accepts an input of a factor that is data that affects the prediction result using the prediction model;
A prediction model creation unit that creates the prediction model by correcting the base model using the factor;
A performance prediction value, which is data representing the performance of the web system at a specific point in time, is obtained from the created prediction model and the parameter, and a predetermined value is determined in the web system by comparing the performance prediction value with a predetermined threshold value. A performance overflow prediction unit that predicts the occurrence of performance overflow that can no longer maintain the performance,
When a performance overflow is predicted, a countermeasure execution unit that executes a predetermined countermeasure process for recovering the performance of the web system;
A web system performance monitoring apparatus comprising:
前記モデル格納部は、サービス、アプリケーション、およびサーバのそれぞれの性能を予測するための予測モデルのベースとなるベースモデルを格納し、
前記予測モデル作成部は、サービス、アプリケーション、およびサーバのそれぞれに対して予測モデルを作成し、
前記性能あふれ予知部は、作成されたサービス、アプリケーション、およびサーバの予測モデルを使用して、各予測モデルに予め対応付けられている性能予測値を求めることを特徴とする請求項1に記載の性能監視装置。 When the web system includes a plurality of application servers that provide different services, and each service is realized by a combination of a plurality of applications,
The model storage unit stores a base model that is a base of a prediction model for predicting the performance of each service, application, and server,
The prediction model creation unit creates a prediction model for each of a service, an application, and a server,
The said performance overflow prediction part calculates | requires the performance prediction value matched beforehand with each prediction model using the prediction model of the created service, an application, and a server. Performance monitoring device.
前記モデル格納部は、前記複数のサーバそれぞれの性能を予測するための予測モデルのベースとなるベースモデルを格納し、
前記予測モデル作成部は、前記複数のサーバのそれぞれに対して予測モデルを作成し、
前記性能あふれ予知部は、作成された予測モデルを使用して、各予測モデルに予め対応付けられている性能予測値を求めることを特徴とする請求項1に記載の性能監視装置。 When the web system includes a plurality of servers that share services for each access route to the web system,
The model storage unit stores a base model that is a base of a prediction model for predicting the performance of each of the plurality of servers,
The prediction model creation unit creates a prediction model for each of the plurality of servers,
The performance monitoring apparatus according to claim 1, wherein the performance overflow prediction unit obtains a performance prediction value associated with each prediction model in advance using the created prediction model.
前記対策実行部は、予め余分に準備されているサーバを前記ウェブシステム内でリソースが不足すると予測されたアプリケーションまたはサービスに分配するリソース割り当て部を備えることを特徴とする請求項1ないし6のいずれかに記載の性能監視装置。 When the performance overflow prediction unit predicts that a performance overflow occurs due to a shortage of resources for executing applications or services in the web system,
The said countermeasure execution part is provided with the resource allocation part which distributes the server prepared beforehand beforehand to the application or service estimated that the resource is insufficient in the said web system. The performance monitoring device according to the above.
前記データ取得部は、前記ウェブシステムにおいて未使用のリソースを検出し、
前記対策実行部は、検出された未使用のリソースを、前記ウェブシステム内でリソースが不足すると予測されたアプリケーションまたはサービスに分配するリソース割り当て部を備えることを特徴とする請求項1ないし6のいずれかに記載の性能監視装置。 When the performance overflow prediction unit predicts that a performance overflow occurs due to a shortage of resources for executing applications or services in the web system,
The data acquisition unit detects unused resources in the web system,
The said countermeasure execution part is provided with the resource allocation part which distributes the detected unused resource to the application or service with which it was estimated that the resource runs short in the said web system. The performance monitoring device according to the above.
前記対策実行部は、前記ウェブシステムへのログインを制限させるログイン制限部を含むことを特徴とする請求項1ないし6のいずれかに記載の性能監視装置。 When the performance overflow prediction unit predicts that a performance overflow occurs due to a shortage of resources for executing applications or services in the web system,
The performance monitoring apparatus according to claim 1, wherein the countermeasure execution unit includes a login restriction unit that restricts login to the web system.
前記対策実行部は、前記ウェブシステムにおいて一部のアプリケーションまたはサービスの提供を維持するために、それ以外のアプリケーションまたはサービスの提供を停止させるサービス停止部を含むことを特徴とする請求項1ないし6のいずれかに記載の性能監視装置。 When the performance overflow prediction unit predicts that a performance overflow occurs due to a shortage of resources for executing applications or services in the web system,
The said countermeasure execution part contains the service stop part which stops provision of another application or service, in order to maintain provision of a part of application or service in the said web system, The 1 thru | or 6 characterized by the above-mentioned. The performance monitoring device according to any one of the above.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006091961A JP2007265244A (en) | 2006-03-29 | 2006-03-29 | Web system performance monitoring device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006091961A JP2007265244A (en) | 2006-03-29 | 2006-03-29 | Web system performance monitoring device |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2007265244A true JP2007265244A (en) | 2007-10-11 |
Family
ID=38638140
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2006091961A Pending JP2007265244A (en) | 2006-03-29 | 2006-03-29 | Web system performance monitoring device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2007265244A (en) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2012094084A (en) * | 2010-10-29 | 2012-05-17 | Nomura Research Institute Ltd | Prediction apparatus and prediction method |
| JP2013045366A (en) * | 2011-08-25 | 2013-03-04 | Nomura Research Institute Ltd | Prediction device and prediction method |
| JP2017037471A (en) * | 2015-08-10 | 2017-02-16 | 日本電信電話株式会社 | Quality controller, and quality control method |
| CN113742187A (en) * | 2021-08-05 | 2021-12-03 | 中移(杭州)信息技术有限公司 | Capacity prediction method, device, equipment and storage medium of application system |
-
2006
- 2006-03-29 JP JP2006091961A patent/JP2007265244A/en active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2012094084A (en) * | 2010-10-29 | 2012-05-17 | Nomura Research Institute Ltd | Prediction apparatus and prediction method |
| JP2013045366A (en) * | 2011-08-25 | 2013-03-04 | Nomura Research Institute Ltd | Prediction device and prediction method |
| JP2017037471A (en) * | 2015-08-10 | 2017-02-16 | 日本電信電話株式会社 | Quality controller, and quality control method |
| CN113742187A (en) * | 2021-08-05 | 2021-12-03 | 中移(杭州)信息技术有限公司 | Capacity prediction method, device, equipment and storage medium of application system |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7840517B2 (en) | Performance evaluating apparatus, method, and computer-readable medium | |
| US7035919B1 (en) | Method for calculating user weights for thin client sizing tool | |
| US11003475B2 (en) | Interface for presenting performance data for hierarchical networked components represented in an expandable visualization of nodes | |
| EP3449205B1 (en) | Predictive rollup and caching for application performance data | |
| JP5980914B2 (en) | Mutual cloud management and fault diagnosis | |
| US10462027B2 (en) | Cloud network stability | |
| CN102959510B (en) | Method and system for computer power and resource consumption modeling | |
| US7783468B2 (en) | Automated system and method for service and cost architecture modeling of enterprise systems | |
| US8725886B1 (en) | Provisioned virtual computing | |
| US7047177B1 (en) | Thin client sizing tool for enterprise server farm solution configurator | |
| US20060085544A1 (en) | Algorithm for Minimizing Rebate Value Due to SLA Breach in a Utility Computing Environment | |
| US10452463B2 (en) | Predictive analytics on database wait events | |
| US20160315837A1 (en) | Group server performance correction via actions to server subset | |
| US10783002B1 (en) | Cost determination of a service call | |
| JP6424273B2 (en) | Utilizing semi-supervised machine learning for policy self-adjustment in computer infrastructure management | |
| JP7195108B2 (en) | COMPUTER SYSTEM OPERATING METHOD, COMPUTER SYSTEM, COMPUTER PROGRAM AND STORAGE MEDIUM | |
| US20210398176A1 (en) | Apparatus, method, and storage medium for burstable instance recommendation | |
| CN120029848A (en) | Optimization method, device, equipment and storage medium for database cluster management | |
| US10644971B2 (en) | Graph search in structured query language style query | |
| JP2013054493A (en) | Device, method and program for alert analysis | |
| US7542998B1 (en) | Cause to effect methodology for monitoring database performance | |
| Tandon et al. | Fault tolerant and reliable resource optimization model for cloud | |
| Zhou et al. | Implement HPA for Nginx Service Using Custom Metrics Under Kubernetes Framework | |
| JP2007265244A (en) | Web system performance monitoring device | |
| JP2007265245A (en) | Securities system traffic monitoring device |