(57)【要約】【課題】試験系を検証すべく本番系に入力される処理要求と同じ処理要求を本番系と並行して試験系にも入力して試験系の検証を行う際に、試験系の検証を確実に行うことができ、試験系が本番系に与える影響を確実に防ぐことができるようにする。【解決手段】Ｗｅｂサーバ３、本番系ＡＰサーバ３０、試験系ＡＰサーバ４０、及びストレージ装置２０と通信可能に接続し、本番系処理部１０１と試験系処理部１０２を備えた処理要求転送装置１０（リダイレクタ）が、通常モードにおいては、処理要求を本番系ＡＰサーバ３０に転送するとともに処理要求を試験系ＡＰサーバ４０に転送し、非常モードにおいては、処理要求を本番系ＡＰサーバ３０に転送するとともに、ストレージ装置２０に処理要求を出力するようにする。処理要求転送装置１０は、例えば、ストレージ装置２０とＦＣ等に従って高速に通信を行う。【選択図】図３
2015102951.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサ、記憶装置、及び通信装置を有し、Ｗｅｂサーバ、本番系アプリケーションサーバ、試験系アプリケーションサーバ、及びストレージ装置と通信可能に接続する、処理要求転送装置であって、
前記Ｗｅｂサーバから受信した処理要求を前記本番系アプリケーションサーバに転送する本番系処理部、
前記処理要求を前記試験系アプリケーションサーバに転送する試験系処理部、及び、
当該処理要求転送装置の動作モードを、通常モード又は非常モードに切り換える動作モード切換部、
を備え、
前記通常モードにおいて、前記本番系処理部は、前記処理要求を前記本番系アプリケーションサーバに転送するとともに前記試験系処理部に転送し、前記試験系処理部は、前記本番系処理部から受信した前記処理要求を前記試験系アプリケーションサーバに転送し、
前記非常モードにおいて、前記本番系処理部は、前記処理要求を前記本番系アプリケーションサーバに転送するとともに、前記試験系処理部に代えて前記ストレージ装置に前記処理要求を出力する
処理要求転送装置。
【請求項２】
請求項１に記載の処理要求転送装置であって、当該処理要求転送装置の負荷又はリソースをリアルタイムに監視し、前記負荷が予め設定された閾値を超えた場合又はリソースの残量が予め設定した閾値以下になった場合に当該処理要求装置の前記動作モードを非常モードに切り換える動作モード切換部を備える、処理要求転送装置。
【請求項３】
請求項２に記載の処理要求転送装置であって、
前記本番系処理部は、前記記憶装置の記憶領域である処理待ちキューを介して前記試験系処理部に前記処理要求を転送し、
前記動作モード切換部は、前記通常モードにおいて、前記処理待ちキューの残容量が予め設定された閾値以下になると当該処理要求装置の前記動作モードを前記非常モードに切り換える
処理要求転送装置。
【請求項４】
請求項１に記載の処理要求転送装置であって、当該処理要求転送装置、前記本番系アプリケーションサーバ、前記試験系アプリケーションサーバ、及びこれらの装置を通信可能に接続する通信手段のうちの少なくともいずれかについての障害の発生有無をリアルタイムに監視し、障害の発生を検知すると当該処理要求装置の前記動作モードを非常モードに切り換える動作モード切換部を備える、処理要求転送装置。
【請求項５】
請求項１に記載の処理要求転送装置であって、前記ストレージ装置とＦＣ（Fibre Channel）、ＦＣｏＥ（Fibre Channel over Ethernet）（「Ethernet」は登録商標）、及びｉＳＣＳＩ（Internet Small Computer System Interface）のうちの少なくともいずれかに従って通信を行う、処理要求転送装置。
【請求項６】
プロセッサ、記憶装置、及び通信装置を備え、
請求項１に記載の前記ストレージ装置と通信可能に接続し、
請求項１に記載の処理要求転送装置によって前記ストレージ装置に格納された前記処理要求を順次読み出して前記試験系アプリケーションサーバに転送する処理要求転送部を備える、
処理要求読込転送装置。
【請求項７】
請求項６に記載の処理要求読込転送装置であって、
前記ストレージ装置は、記憶している前記処理要求の夫々が前記処理要求転送装置から前記本番系アプリケーションサーバに転送されたタイミングを示すタイムスタンプを記憶し、
前記処理要求転送部は、前記タイムスタンプに基づき決定したタイミングで前記処理要求を前記試験系アプリケーションサーバに転送する、
処理要求読込転送装置。
【請求項８】
プロセッサ、記憶装置、及び通信装置を有し、Ｗｅｂサーバ、本番系アプリケーションサーバ、試験系アプリケーションサーバ、及びストレージ装置と通信可能に接続する処理要求転送装置が、
前記Ｗｅｂサーバから受信した処理要求を前記本番系アプリケーションサーバに転送するステップと、
前記処理要求を前記試験系アプリケーションサーバに転送するステップと、
当該処理要求転送装置の動作モードを、通常モード又は非常モードに切り換えるステップと、
前記通常モードにおいて、前記処理要求を前記本番系アプリケーションサーバに転送するとともに前記処理要求を前記試験系アプリケーションサーバに転送するステップと、
前記非常モードにおいて、前記処理要求を前記本番系アプリケーションサーバに転送するとともに、前記ストレージ装置に前記処理要求を出力するステップと
を実行する、処理要求転送方法。
【請求項９】
請求項８に記載の処理要求転送方法であって、前記処理要求転送装置が、当該処理要求転送装置の負荷又はリソースをリアルタイムに監視し、前記負荷が予め設定された閾値を超えた場合又はリソースの残量が予め設定した閾値以下になった場合に当該処理要求装置の前記動作モードを非常モードに切り換えるステップを実行する、処理要求転送方法。
【請求項１０】
請求項９に記載の処理要求転送方法であって、
前記処理要求転送装置が、
前記通常モードにおいて、前記記憶装置の記憶領域である処理待ちキューに前記処理要求を転送し、前記処理待ちキューから処理要求を読み出して前記試験系アプリケーションサーバに転送するステップと、
前記処理待ちキューの残容量が予め設定された閾値以下になると当該処理要求装置の前記動作モードを前記非常モードに切り換えるステップと
を実行する、処理要求転送方法。
【請求項１１】
請求項８に記載の処理要求転送方法であって、前記処理要求転送装置が、当該処理要求転送装置、前記本番系アプリケーションサーバ、前記試験系アプリケーションサーバ、及びこれらの装置を通信可能に接続する通信手段のうちの少なくともいずれかについての障害の発生有無をリアルタイムに監視し、障害の発生を検知すると当該処理要求装置の前記動作モードを非常モードに切り換えるステップを実行する、処理要求転送方法。
【請求項１２】
請求項８に記載の処理要求転送方法であって、前記処理要求転送装置が、前記ストレージ装置とＦＣ（Fibre Channel）、ＦＣｏＥ（Fibre Channel over Ethernet）（「Ethernet」は登録商標）、及びｉＳＣＳＩ（Internet Small Computer System Interface）の少なくともいずれかに従って通信を行う、処理要求転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理要求読込転送装置、及び処理要求転送方法に関する。
【背景技術】
【０００２】
特許文献１には、テストツールを用いることなく、実稼働環境のような公衆に利用可能な環境においてサーバが受けるｈｔｔｐリクエストのトラフィックを、テスト環境において忠実に再現することができるサーバおよびプログラムを提供するため、通信ネットワーク上で一般ユーザへのサービスを実施している公衆に利用可能なサーバが、クエリ情報を含むｈｔｔｐリクエストを受信し、ｈｔｔｐリクエストからクエリ情報を抽出し、クエリ情報に基づいた処理を行う他のサーバに、抽出したクエリ情報を送信し、所定の指示を受け付けたことに応じて、テスト用サーバにｈｔｔｐリクエストを送信することが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許公開２０１０−２０５２３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
データセンタや企業等の組織における情報処理センタなどでは、現行の情報処理システムのリプレースや新たなソフトウエアのリリースに際し、リプレースやリリース後の情報処理システム(以下、試験系と称する。）の検証を確実に行うべく、本番稼働している現行の情報処理システム(以下、本番系と称する。）に入力される処理要求と同じ処理要求を本番系と並行して試験系にも入力して試験を実施することがある。
【０００５】
しかしこうした形態による試験の実施に際しては、試験系等に何らかの障害が発生した場合においても試験系の検証が確実に行われるようにするとともに、試験系が本番系に与える影響を確実に防ぐ必要がある。
【０００６】
本発明はこのような観点からなされたもので、試験系を検証すべく本番系に入力される処理要求と同じ処理要求を本番系と並行して試験系にも入力して試験系の検証を行うにあたり、試験系の検証を確実に行うことができ、試験系が本番系に与える影響を確実に防ぐことができるようにすることを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するための本発明のうちの一つは、プロセッサ、記憶装置、及び通信装置を有し、Ｗｅｂサーバ、本番系アプリケーションサーバ、試験系アプリケーションサーバ、及びストレージ装置と通信可能に接続する、処理要求転送装置であって、前記Ｗｅｂサーバから受信した処理要求を前記本番系アプリケーションサーバに転送する本番系処理部、前記処理要求を前記試験系アプリケーションサーバに転送する試験系処理部、及び、当該処理要求転送装置の動作モードを、通常モード又は非常モードに切り換える動作モード切換部、を備え、前記通常モードにおいて、前記本番系処理部は、前記処理要求を前記本番系アプリケーションサーバに転送するとともに前記試験系処理部に転送し、前記試験系処理部は、前記本番系処理部から受信した前記処理要求を前記試験系アプリケーションサーバに転送し、前記非常モードにおいて、前記本番系処理部は、前記処理要求を前記本番系アプリケーションサーバに転送するとともに、前記試験系処理部に代えて前記ストレージ装置に前記処理要求を出力する。
【発明の効果】
【０００８】
本発明によれば、試験系の検証を確実に行うことができるとともに、試験系が本番系に与える影響を確実に防ぐことができる。
【図面の簡単な説明】
【０００９】
【図１】Ｗｅｂサービスシステム１の概略的な構成を示す図である。
【図２】通常モード時における処理要求転送装置１０の動作を説明する図である。
【図３】非常モード時における処理要求転送装置１０の動作を説明する図である。
【図４】メイン処理Ｓ４００を説明するフローチャートである。
【図５】本番系処理Ｓ４１０を説明するフローチャートである。
【図６】試験系処理Ｓ４３０を説明するフローチャートである。
【図７】処理要求読込転送装置７０の構成を説明する図である。
【図８】処理要求読込転送装置７０の機能を説明する図である。
【図９】蓄積された処理要求を用いた試験処理Ｓ９００を説明するフローチャートである。
【発明を実施するための形態】
【００１０】
以下、実施形態について添付図面を参照しつつ説明する。尚、以下の説明において、同一又は類似の部分に同一の符号を付して重複する説明を省略することがある。また以下の説明において、「アプリケーション」のことを「ＡＰ」と、「プログラム」のことを「ＰＧ」と、「インタフェース」のことを「Ｉ／Ｆ」と称することがある。
【００１１】
図１に一実施形態として説明するＷｅｂサービスシステム１の概略的な構成を示している。同図に示すように、Ｗｅｂサービスシステム１は、Ｗｅｂクライアント２、Ｗｅｂサーバ３、処理要求転送装置１０、ストレージ装置２０、本番系ＡＰサーバ３０、及び試験系ＡＰサーバ４０を備えて構成されている。
【００１２】
Ｗｅｂサービスシステム１は、Ｗｅｂクライアント２から受信した処理要求（例えば、ｈｔｔｐリクエスト（http:hypertext transfer protocol））に指定されている処理を実行し、処理要求に対する応答（例えば、ｈｔｔｐレスポンス）をＷｅｂクライアント２に送信するまでの一連の処理（以下、Ｗｅｂサービスとも称する。）を行う。試験系ＡＰサーバ４０は、例えば、本番系ＡＰサーバ３０のリプレースや新たなソフトウエアのリリースに際し、リプレースやリリース後の新たなＷｅｂサービスシステム１を検証する目的で設けられる。
【００１３】
Ｗｅｂクライアント２、Ｗｅｂサーバ３、処理要求転送装置１０、本番ＡＰサーバ３０、及び試験系ＡＰサーバ４０は、いずれもプロセッサ、記憶装置(メモリ、ハードディスク等）、及び通信装置を備えて構成される情報処理装置（コンピュータ）である。Ｗｅｂクライアント２は、Ｗｅｂサーバ３と通信ネットワーク（インターネット、ＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）等）を介して、ＴＣＰ／ＩＰ等の通信プロトコルに従って通信する。Ｗｅｂクライアント２ではＷｅｂブラウザ等のＷｅｂサーバ３を利用するソフトウエアが動作する。Ｗｅｂクライアント２はＷｅｂサーバ３に処理要求を送信し、その応答をＷｅｂサーバ３から受信することによりＷｅｂサービスを享受する。例えば、Ｗｅｂサービスが図書館において書籍の貸し出し管理に関するものである場合、Ｗｅｂクライアント２から送信される上記処理要求は、書籍の貸し出し状況や書籍の格納場所の照会要求である。また例えば、Ｗｅｂサービスが企業や官庁等の組織における会議室予約に関するものである場合、Ｗｅｂクライアント２から送信される上記処理要求は、会議室の予約状況の照会要求や会議室を予約するための要求である。
【００１４】
Ｗｅｂサーバ３は、Ｗｅｂクライアント２から受信した処理要求に指定されている処理のうち静的コンテンツ（単純構成のＨＴＭＬ（HyperText Markup Language）の応答、画像コンテンツ、動画コンテンツ）の送信などの主に静的な処理を行う。一方、本番系ＡＰサーバ３０は、Ｗｅｂクライアント２から受信した処理要求に指定されている処理のうちビジネスロジックの実行やデータベースの検索などの主に動的な処理を担う。Ｗｅｂサーバ３は、本番系ＡＰサーバ３０が担当すべき処理要求をＷｅｂクライアント２から受信すると、その処理要求を処理要求転送装置１０に転送する。処理要求転送装置１０は、Ｗｅｂサーバ３から受信した処理要求を本番系ＡＰサーバ３０及び試験系ＡＰサーバ４０に転送する。また処理要求転送装置１０は、本番系ＡＰサーバ３０から受信した応答をＷｅｂサーバ３に転送する。
【００１５】
Ｗｅｂサーバ３や処理要求転送装置１０のこうした機能を実現するソフトウエアとして、例えば、「Ａｐａｃｈｅ」（登録商標）がある。また本番系ＡＰサーバ３０や試験系ＡＰサーバ４０の機能を実現するソフトウエアとして、例えば、「Ｔｏｍｃａｔ」（登録商標）や「Ｊ２ＥＥ」（登録商標）がある。本番系ＡＰサーバ３０や試験系ＡＰサーバ４０は、ＤＢＭＳ（DataBase Management System）が機能するデータベースサーバと連携するものであってもよい。
【００１６】
Ｗｅｂサーバ３と処理要求転送装置１０との間の通信、並びに処理要求転送装置１０と本番系ＡＰサーバ３０又は試験系ＡＰサーバ４０との間の通信は、例えば、連携モジュール（例えば「Ａｐａｃｈｅ」（登録商標）に組み込まれた「ｍｏｄ＿ｊｋ」（登録商標））により所定のプロトコル（例えば「ａｊｐプロトコル」）に従って行われる。
【００１７】
処理要求転送装置１０は、プロセッサ１１（ＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）等）、記憶装置１２（ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、ＮＶＲＡＭ（Non Volatile RAM）、ハードディスクドライブ、ＳＳＤ（Solid State Drive）、光学式記憶装置等）、通信装置１３（ＮＩＣ（Network Interface Card）等）、ユーザＩ／Ｆ１４（キーボード、マウス、タッチパネル、液晶モニタ等）、及びストレージＩ／Ｆ１５を備える。
【００１８】
通信装置１３は、図示しない通信ネットワーク（ＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）等）を介して、Ｗｅｂサーバ３、本番系ＡＰサーバ３０、及び試験系ＡＰサーバ４０と通信する。
【００１９】
ストレージＩ／Ｆ１５は、例えば、ＨＢＡ（Host Bus Adapter）やＮＩＣ（Network Interface Card）等を用いて構成されている。ストレージＩ／Ｆ１５は、例えば、ＦＣ（Fibre Channel）、ＦＣｏＥ（Fibre Channel over Ethernet）（「Ethernet」は登録商標）、ｉＳＣＳＩ（Internet Small Computer System Interface）等のプロトコルに従ってストレージ装置２０と通信する。
【００２０】
処理要求転送装置１０の記憶装置１２には、本番系処理ＰＧ１２１、試験系処理ＰＧ１２２、動作モード切換ＰＧ１２３、ストレージ出力ＰＧ１２４、及び稼働状況監視ＰＧ１２５が格納されている。プロセッサ１１がこれらのプログラムを記憶装置１２から読み出して実行することにより、処理要求転送装置１０においてこれらに対応した機能が実現される。尚、以下の説明において、プロセッサ１１が、本番系処理ＰＧ１２１、試験系処理ＰＧ１２２、動作モード切換ＰＧ１２３、ストレージ出力ＰＧ１２４、及び稼働状況監視ＰＧ１２５を実行することにより実現される機能(処理主体）のことを、夫々、本番系処理部１０１、試験系処理部１０２、動作モード切換部１０３、ストレージ出力部１０４、及び稼働状況監視部１０５と称する。
【００２１】
本番系処理部１０１は、Ｗｅｂサーバ３から転送されてくる処理要求を本番系ＡＰサーバ３０に送信する。後述する通常モードにおいて、本番系処理部１０１は、Ｗｅｂサーバ３から受信した処理要求を試験系処理部１０２にも送信する。また後述する非常モードにおいて、本番系処理部１０１は、Ｗｅｂサーバ３から受信した処理要求を試験系処理部１０２に代えてストレージ装置２０に出力する。試験系処理部１０２は、後述する通常モードにおいて、本番系ＡＰサーバ３０から受信した処理要求を試験系ＡＰサーバ４０に送信する。尚、以上における処理要求の送信は、例えば、宛先となるプロセスの識別子、宛先となるノード（ホスト）の識別子、宛先となるポート番号等を指定したリダイレクト方式で行われる。
【００２２】
動作モード切換部１０３は、処理要求転送装置１０の動作モード（通常モード又は非常モード）を切り換える。
【００２３】
ストレージ出力部１０４は、本番系処理部１０１から転送されてくる処理要求をストレージ装置２０に出力する（後述する記憶ドライブ２５に書き込む）。
【００２４】
稼働状況監視部１０５は、処理要求転送装置１０の処理負荷、障害の発生有無、及びリソースの状態などのリアルタイムな監視、本番系ＡＰサーバ３０又は試験系ＡＰサーバ４０に送信した処理要求のタイムスタンプ付のログ情報の記録、本番系ＡＰサーバ３０又は試験系ＡＰサーバ４０から受信した処理要求に対する応答のタイムスタンプ付のログ情報の記録、処理要求転送装置１０が実行した処理に関する情報の記録などを行う。
【００２５】
ストレージ装置２０は、例えば、ディスクアレイ装置であって、通信Ｉ／Ｆ２１、コントローラ２２、キャッシュメモリ２３、ドライブＩ／Ｆ２４、及び一つ以上の記憶ドライブ２５を備える。
【００２６】
通信Ｉ／Ｆ２１は、処理要求転送装置１０のストレージＩ／Ｆ１５と通信し、処理要求転送装置１０から送られてくるＩ／Ｏ要求の受信、Ｉ／Ｏ要求のプロトコル解析、処理結果やリードデータの処理要求転送装置１０への送信等を行う。通信Ｉ／Ｆ２１とストレージＩ／Ｆ１５との間の通信（データ転送）はデータブロックを単位として高速で行われる。また上記通信では、複数の処理要求を区別せずにまとめて処理要求転送装置１０からストレージ装置２０に効率よく転送することができる。
【００２７】
コントローラ２２は、プロセッサ（ＣＰＵ、ＭＰＵ等）、メモリ（ＲＯＭ、ＲＡＭ、ＮＶＲＡＭ等）、及び高速データ転送チップ（ＤＭＡ（Direct Memory Access）等）を備え、処理要求転送装置１０から送られてくるＩ／Ｏ要求に応じて、通信Ｉ／Ｆ２１とキャッシュメモリ２３との間のデータ転送、キャッシュメモリ２３とドライブＩ／Ｆ２４との間のデータ転送等を行う。
【００２８】
キャッシュメモリ２３は、ＲＡＭ等を用いて構成されている。キャッシュメモリ２３には記憶ドライブ２５に書き込まれるライトデータや記憶ドライブ２５から読み出されたリードデータが一時的に格納される。
【００２９】
記憶ドライブ２５は、例えば、ＳＡＴＡ（Serial ATA）、ＳＡＳ（Serial Attached SCSI）、ＦＣ（Fibre Channel）、ＰＡＴＡ（Parallel ATA）、ＳＣＳＩ等のドライブ等のハードディスクドライブ、ＳＳＤ等である。記憶ドライブ２５は、ドライブＩ／Ｆ２４によってＲＡＩＤ（Redundant Arrays of Inexpensive （or Independent) Disks）の方式（ＲＡＩＤ０〜６の少なくともいずれか）で制御される場合もある。
【００３０】
本番系ＡＰサーバ３０では、図示しない本番系ＡＰ処理ＰＧによって本番系ＡＰ処理部３１の機能（処理主体）が、図示しない本番系監視処理ＰＧによって本番系監視処理部３２の機能（処理主体）が、夫々実現されている。本番系ＡＰ処理部３１は、処理要求転送装置１０から受信した処理要求に指定されている処理を実行し、その応答を処理要求転送装置１０に送信する。本番系監視処理部３２は、本番系ＡＰサーバ３０の処理負荷、障害の発生有無、及びリソースの状態のリアルタイムな監視、処理要求転送装置１０から受信した処理要求のタイムスタンプ付のログ情報の記録、処理要求転送装置１０に送信した処理要求に対する応答のタイムスタンプ付のログ情報の記録、本番系ＡＰ処理部３１が実行した処理に関する情報の記録等を行う。
【００３１】
試験系ＡＰサーバ４０では、図示しない試験系ＡＰ処理ＰＧによって試験系ＡＰ処理部４１の機能（処理主体）が、図示しない試験系監視処理ＰＧによって試験系監視処理部４２の機能（処理主体）が、夫々実現されている。試験系ＡＰ処理部４１は、処理要求転送装置１０から受信した処理要求に指定されている処理を実行し、その応答を処理要求転送装置１０に送信する。試験系監視処理部４２は、試験系ＡＰサーバ４０の処理負荷、障害の発生有無、及びリソースの状態のリアルタイムな監視、処理要求転送装置１０から受信した処理要求のタイムスタンプ付のログ情報の記録、処理要求転送装置１０に送信した処理要求に対する応答のタイムスタンプ付のログ情報の記録、試験系ＡＰ処理部４１が実行した処理に関する情報の記録等を行う。
【００３２】
図２は通常モードにおける処理要求転送装置１０の動作を説明する図である。処理要求転送装置１０は、本番系のＷｅｂサービス（Ｗｅｂサーバ３、本番系ＡＰサーバ３０を利用して行われるサービス）の処理性能の維持を目的として通常モードから非常モードへの切り換えを行う。例えば、処理要求転送装置１０は、Ｗｅｂサービスシステム１に何らかの障害が発生した場合や障害が近いうちに発生することが予測される場合に通常モードから非常モードへの切り換えを行う。動作モードの切り換え（通常モードから非常モードへの切り換えもしくは非常モードから通常モードへの切り換え）は、処理要求転送装置１０の動作モード切換部１０３が自動的に行う他、ユーザＩ／Ｆ１４から受け付けた切り換え指示に応じて行われることもある。より具体的には、処理要求転送装置１０は次のような場合に通常モードから非常モードへの切り換えを行う。
【００３３】
（１）処理要求転送装置１０の処理負荷が高い場合（例えば、Ｗｅｂサーバ３から送られてくる単位時間当たりの処理要求の数が予め設定された閾値以上となった場合、プロセッサ１１の使用率が予め設定された閾値以上となった場合）。
（２）処理要求転送装置１０のリソースが不足している場合又は近いうちに不足することが予想される場合（例えば、記憶装置１２の残容量が予め設定された閾値以下となった場合）。
（３）本番系処理部１０１から試験系処理部１０２に処理要求を転送する際に用いるバッファである処理待ちキュー１０５に溢れが生じている場合又は近いうちに溢れが生じることが予測される場合（例えば、処理待ちキュー１０５の残容量が予め設定された閾値以下になった場合、処理待ちキュー１０５に登録されている処理要求の数が予め設定された閾値を超えた場合）。
（４）処理待ちキュー１０５の残容量が予め設定された閾値以下になると処理待ちキュー１０５の容量を自動的に拡張する機能を）処理要求転送装置１０に設けている場合に記憶装置１２の容量不足等に因り容量の拡張に失敗した場合。
（５）処理要求転送装置１０、本番系ＡＰサーバ３０、試験系ＡＰサーバ４０、これらを通信可能に接続している通信手段のうちの少なくともいずれかに障害が発生している場合。
【００３４】
図２に示すように、通常モードにおいて、本番系処理部１０１は、Ｗｅｂサーバ３から処理要求を受信すると、受信した処理要求を本番系ＡＰサーバ３０に送信するとともに、当該処理要求を処理待ちキュー１０５に登録する。本番系処理部１０１は、転送した処理要求に対する応答を本番系ＡＰサーバ３０から受信すると、これをＷｅｂサーバ３に送信する。試験系処理部１０２は、処理待ちキュー１０５に格納されている処理要求を順次読み出し、読み出した処理要求を試験系ＡＰサーバ４０に送信する。試験系処理部１０２は、送信した処理要求に対する応答を試験系ＡＰサーバ４０から受信するとこれを破棄する。尚、処理要求は必ずしも破棄しなくてもよく、例えば、処理要求を記憶装置１２に蓄積して試験系ＡＰサーバ４０の検証に活用してもよい。
【００３５】
このように、通常モードにおいて、処理要求転送装置１０がＷｅｂサーバ３から受信した処理要求は、本番系ＡＰサーバ３０と試験系ＡＰサーバ４０の双方に送信され、本番系ＡＰサーバ３０及び試験系ＡＰサーバ４０の夫々において処理要求に指定されている処理が実行され、本番系ＡＰサーバ３０及び試験系ＡＰサーバ４０の夫々による処理要求の実行結果がログ情報などとして記録される。Ｗｅｂサービスシステム１の管理者等は、これらの情報に基づき試験系ＡＰサーバ４０が正常に機能しているか否かを検証する。
【００３６】
図３は非常モードにおける処理要求転送装置１０の動作を説明する図である。同図に示すように、非常モードにおいて、本番系処理部１０１は、Ｗｅｂサーバ３から処理要求を受信すると、受信した処理要求を本番系ＡＰサーバ３０に送信する。また非常モードにおいて、本番系処理部１０１は、処理要求の処理待ちキュー１０５への登録は行わず、代わりに当該処理要求をストレージ出力部１０４に送信する。ストレージ出力部１０４は、本番系処理部１０１から転送されてきた処理要求をストレージ装置２０に出力する。本番系処理部１０１は、転送した処理要求についての応答を本番系ＡＰサーバ３０から受信すると、これをＷｅｂサーバ３に転送する。
【００３７】
ここでストレージ出力部１０４によるストレージ装置２０への処理要求の出力（記憶ドライブ２５への書き込み）は、ＦＣ等のプロトコルに従って高速かつ確実に行われる。また出力に際してストレージ出力部１０４は複数の処理要求を（例えばブロック転送方式で）一括してストレージ装置２０に送出することもできる。このようにストレージ出力部１０４によるストレージ装置２０への処理要求の出力は、試験系処理部１０２から試験系ＡＰサーバ４０への処理要求の転送に比べて高速かつ効率よく行われる。このため、処理要求転送装置１０に負荷を生じさせることなく（本番系に影響を与えることなく）、本番系処理部１０１から転送されてくる処理要求を確実に記憶ドライブ２５に格納することができる。また障害等によって試験系ＡＰサーバ４０に処理要求を転送することができない状況となった場合でもその間に生じた処理要求はストレージ装置２０に蓄積されるため、蓄積された処理要求を試験系ＡＰサーバ４０に与えることで非常時に発生した処理要求についても試験を行うことができる。このため、試験系ＡＰサーバ４０が正しく機能するか否かを確実に検証することができる。このように、本実施形態のＷｅｂサービスシステム１によれば、試験系ＡＰサーバ４０を含むシステムの検証を確実に行うことができるとともに、試験の実施が本番系のシステムに与える影響を確実に防ぐことができる。
【００３８】
尚、動作モードを通常モードから非常モードに切り換える際の情報の欠落を防ぐべく、例えば、所定数の処理要求をＦＩＦＯ（First In First Out）方式で記憶装置１２に設けたバッファに常時記憶しておき、非常モードへの切り換えに際してこのバッファに記憶されている処理要求についてもストレージ装置２０に格納するようにしてよい。
【００３９】
＜処理説明＞
続いてＷｅｂサービスシステム１において行われる処理をフローチャートとともに説明する。尚、以下の説明において、符号の前に付している「Ｓ」の文字は「ステップ」を意味する。
【００４０】
図４はＷｅｂサーバ３から処理要求を受信した際に処理要求転送装置１０が行う処理（以下、メイン処理Ｓ４００と称する。）を説明するフローチャートである。同図に示すように、処理要求転送装置１０は、Ｗｅｂサーバ３から処理要求を受信すると（Ｓ４０１：Ｙ）、本番系処理Ｓ４１０及び試験系処理Ｓ４３０を行う。尚、これらの処理は必ずしも同図に示す順序で実行される必要はなく、例えば、マルチタスク方式で並行して実行させてもよい。尚、本番系処理Ｓ４１０及び試験系処理Ｓ４３０が実行されると処理はＳ４０１に戻る。
【００４１】
図５は、図４に示した本番系処理Ｓ４１０の詳細を説明するフローチャートである。同図に示すように、処理要求転送装置１０は、本番系ＡＰサーバ３０に処理要求を転送する（Ｓ４１１）。本番系ＡＰサーバ３０は、処理要求を受信すると（Ｓ４２１）、受信した処理要求に指定されている処理を実行し（Ｓ４２２）、当該処理要求に対する応答を生成して処理要求転送装置１０に送信する（Ｓ４２３）。またこのとき、本番系ＡＰサーバ３０は、受信した処理要求に関する情報、処理要求に対応して実行した処理に関する情報等をタイムスタンプ付のログ情報として記憶する（Ｓ４２４）。処理要求転送装置１０は、本番系ＡＰサーバ３０から応答を受信すると（Ｓ４１２）、Ｓ４０１で受信した処理要求に対する応答をＷｅｂサーバ３に送信する（Ｓ４１３）。その後、処理はメイン処理Ｓ４００に戻る。
【００４２】
図６は、図４に示した試験系処理Ｓ４３０の詳細を説明するフローチャートである。同図に示すように、処理要求転送装置１０は、まず現在設定されている動作モードを取得する（Ｓ４３１）。現在の動作モードが「通常モード」である場合（Ｓ４３１：通常）、処理要求転送装置１０はＳ４３２からの処理を実行し、現在の動作モードが「非常モード」である場合（Ｓ４３１：非常）、処理要求転送装置１０はＳ４３５の処理を実行する。
【００４３】
Ｓ４３２では、処理要求転送装置１０は、試験系ＡＰサーバ４０に処理要求を転送する。試験系ＡＰサーバ４０は、処理要求を受信すると（Ｓ４４１）、受信した処理要求に指定されている処理を実行し（Ｓ４４２）、当該処理要求に対する応答を生成して処理要求転送装置１０に送信する（Ｓ４４３）。またこのとき、試験系ＡＰサーバ４０は、受信した処理要求に関する情報、処理要求に対応して実行した処理に関する情報等をタイムスタンプ付のログ情報として記憶する（Ｓ４４４）。処理要求転送装置１０は、試験系ＡＰサーバ４０から応答を受信すると（Ｓ４３３）、当該応答を破棄する（Ｓ４３４）。その後、処理はメイン処理Ｓ４００に戻る。
【００４４】
一方、Ｓ４３５では、処理要求転送装置１０は、処理要求をストレージ装置２０に出力する。その後、処理はメイン処理Ｓ４００に戻る。
【００４５】
＜蓄積された処理要求を用いた試験＞
Ｗｅｂサービスシステム１の管理者等は、処理要求転送装置１０が非常モードで動作している際にストレージ装置２０の記憶ドライブ２５に蓄積された処理要求を試験系ＡＰサーバ４０に転送し、試験系ＡＰサーバ４０を含むシステムの検証を行う。
【００４６】
図７は上記検証に際し用いられる、記憶ドライブ２５に蓄積された処理要求を読み出して試験系ＡＰサーバ４０に転送する機能を備えた情報処理装置の一例（以下、処理要求読込転送装置７０と称する。）である。同図に示すように、処理要求読込転送装置７０は、プロセッサ７１、記憶装置７２、通信装置７３、ユーザＩ／Ｆ、及びストレージＩ／Ｆ７５を備える。尚、これらの各装置の構成は、夫々、前述した処理要求転送装置１０のプロセッサ１１、記憶装置１２，通信装置１３、ユーザＩ／Ｆ１４、及びストレージＩ／Ｆ１５と同様である。前述した処理要求転送装置１０を処理要求読込転送装置７０として機能させてもよい。
【００４７】
同図に示すように、処理要求読込転送装置７０の記憶装置７２には、処理要求読込ＰＧ７２１、処理要求転送ＰＧ７２２、及び本番系ログ情報７３０が格納されている。プロセッサ７１がこれらのプログラムを記憶装置７２から読み出して実行することにより、処理要求読込転送装置７０の様々な機能が実現される。以下の説明において、プロセッサ７１が処理要求読込ＰＧ７２１を実行することにより実現される機能(処理主体）のことを処理要求読込部７０１と、プロセッサ７１が処理要求転送ＰＧ７２２を実行することにより実現される機能(処理主体）のことを処理要求転送部７０２と称する。本番系ログ情報７３０は、本番系処理Ｓ４１０に際して本番系ＡＰサーバ３０が記憶したタイムスタンプ付のログ情報であり、本番系ＡＰサーバ３０が受信した処理要求に関する情報並びに本番系ＡＰサーバ３０が処理要求を受信したタイミングを示す情報が含まれる。本番系ログ情報７３０は、例えば、自動的に又は手動で本番系ＡＰサーバ３０から処理要求読込転送装置に複製される。処理要求転送部７０２は、この本番系ログ情報７３０を参照することにより試験系ＡＰサーバ４０に処理要求を転送するタイミングを決定する。
【００４８】
図８は処理要求読込転送装置７０の機能を説明する図である。同図に示すように、処理要求読込部７０１は、ストレージ装置２０の記憶ドライブ２５から処理要求を読み出し、これを処理要求読込部７０１から処理要求転送部７０２に処理要求を転送する際のバッファである処理待ちキュー７５０に登録する。尚、処理待ちキュー７５０は、記憶装置１２の領域を用いて構成される。
【００４９】
処理要求転送部７０２は、本番系ログ情報７３０に基づき、処理待ちキュー７５０に登録されている処理要求を試験系ＡＰサーバ４０に送信するタイミングを決定し、決定したタイミングが到来すると処理要求を試験系ＡＰサーバ４０に送信する。処理要求読込転送装置７０は、例えば、前後して送信する処理要求が、処理要求転送装置１０から本番系ＡＰサーバ３０に転送された間隔と同じ間隔で送信されるように送信タイミングを決定する。これにより本番系と同じ状況下で試験系を検証することができる。処理要求転送部７０２は、試験系ＡＰサーバ４０から処理要求に対する応答を受信するとこれを破棄する。尚、処理要求は必ずしも破棄しなくてもよく、例えば、処理要求を記憶装置１２に蓄積して試験系ＡＰサーバ４０の検証に活用してもよい。
【００５０】
図９はストレージ装置２０の記憶ドライブ２５に蓄積された処理要求を用いて試験系ＡＰサーバ４０を検証する際に処理要求読込転送装置７０及び試験系ＡＰサーバ４０が行う処理(以下、蓄積された処理要求を用いた試験処理Ｓ９００と称する。）を説明するフローチャートである。
【００５１】
同図に示すように、処理要求読込転送装置７０は、ストレージ装置２０から処理要求を順次読み出して処理待ちキュー７５０に登録する（Ｓ９１１）。処理要求は単数を順次読み出してもよいし複数を一括して読み出してもよい。    
【００５２】
続いて処理要求読込転送装置７０は、ログ情報に基づき処理待ちキュー７５０に登録されている処理要求を送信するタイミングを決定し、決定したタイミングで処理要求を試験系ＡＰサーバ４０に順次送信する（Ｓ９１２）。
【００５３】
試験系ＡＰサーバ４０は、処理要求を受信すると（Ｓ９４１）、処理要求に対応する処理を実行し（Ｓ９４２）、処理要求に対する応答を生成してこれを処理要求読込転送装置７０に転送する（Ｓ９４３）。またこのとき、試験系ＡＰサーバ４０は、受信した処理要求に関する情報、処理要求に応じて実行した処理に関する情報などをログ情報として記憶する（Ｓ９４４）。管理者等はこのログ情報と本番系ＡＰサーバ３０が同じ処理要求について記録したログ情報とを対照することにより試験系ＡＰサーバ４０を検証する。処理要求読込転送装置７０は、試験系ＡＰサーバ４０から応答を受信すると（Ｓ９１３）、当該応答を破棄する（Ｓ９１４）。
【００５４】
Ｓ９１５では、処理要求読込転送装置７０は、ストレージ装置２０に未だ読み出していない処理要求が残存するか否かを判定する。未だ読み出していない処理要求が残存する場合は（Ｓ９１５：Ｙ）Ｓ９１１に戻り、残存する処理要求について以上と同様の処理を繰り返す。一方、未だ読み出していない処理要求が残存しない場合は（Ｓ９１５：Ｎ）当該処理Ｓ９００は終了する。
【００５５】
以上に説明したように、処理要求転送装置１０は、非常時（非常モードでの動作時）において試験系処理部１０２に代えて高速で処理要求を書き出すことが可能なストレージ装置２０に処理要求を出力するので、試験系処理部１０２の処理要求の転送等に何らかの支障が生じた場合に処理要求転送装置１０の負荷の増大やリソース不足を防ぐことができ、本番系処理部１０１への影響を確実に防ぐことができる。また非常時に発生した処理要求がストレージ装置２０に蓄積されるのでこれを処理要求転送装置１０により試験系ＡＰサーバ４０に与えることで非常時に発生した処理要求についても確実に試験を行うことができる。このように本実施形態のＷｅｂサービスシステム１によれば、本番系に入力される処理要求と同じ処理要求を本番系と並行して試験系にも入力して試験系の検証を行うにあたり、試験系の検証を確実に行うことができるとともに、試験系が本番系に与える影響を確実に防ぐことができる。
【００５６】
尚、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【００５７】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウエアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウエアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ等の記録装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
【００５８】
また制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【００５９】
１  Ｗｅｂサービスシステム、２  Ｗｅｂクライアント、３  Ｗｅｂサーバ、１０  処理要求転送装置、１０１  本番系処理部、１０２  試験系処理部、１０３  動作モード切換部、１０４  ストレージ出力部、２０  ストレージ装置、２５  記憶ドライブ、３０  本番系ＡＰサーバ、３１  本番系ＡＰ処理部、３２  本番系監視処理部、４０  試験系ＡＰサーバ、４１  試験系ＡＰ処理部、４２  試験系監視処理部、７０  処理要求読込転送装置、７０１  処理要求読込部、７０２  処理要求転送部、７３０  本番系ログ情報、Ｓ４００  メイン処理、Ｓ４１０  本番系処理、Ｓ４３０  試験系処理
【図１】
2015102951.tif 000003
【図２】
2015102951.tif 000004
【図３】
2015102951.tif 000005
【図４】
2015102951.tif 000006
【図５】
2015102951.tif 000007
【図６】
2015102951.tif 000008
【図７】
2015102951.tif 000009
【図８】
2015102951.tif 000010
【図９】
2015102951.tif 000011