JP2015102951A - 処理要求読込転送装置、及び処理要求転送方法 - Google Patents

処理要求読込転送装置、及び処理要求転送方法 Download PDF

Info

Publication number
JP2015102951A
JP2015102951A JP2013242000A JP2013242000A JP2015102951A JP 2015102951 A JP2015102951 A JP 2015102951A JP 2013242000 A JP2013242000 A JP 2013242000A JP 2013242000 A JP2013242000 A JP 2013242000A JP 2015102951 A JP2015102951 A JP 2015102951A
Authority
JP
Japan
Prior art keywords
processing request
processing
test
server
application server
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.)
Granted
Application number
JP2013242000A
Other languages
English (en)
Other versions
JP6114683B2 (ja
Inventor
裕二 吉川
Yuji Yoshikawa
裕二 吉川
敏之 三国
Toshiyuki Mikuni
敏之 三国
正興 福地
Masaoki Fukuchi
正興 福地
玲子 豊田
Reiko Toyoda
玲子 豊田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2013242000A priority Critical patent/JP6114683B2/ja
Publication of JP2015102951A publication Critical patent/JP2015102951A/ja
Application granted granted Critical
Publication of JP6114683B2 publication Critical patent/JP6114683B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】試験系を検証すべく本番系に入力される処理要求と同じ処理要求を本番系と並行して試験系にも入力して試験系の検証を行う際に、試験系の検証を確実に行うことができ、試験系が本番系に与える影響を確実に防ぐことができるようにする。【解決手段】Webサーバ3、本番系APサーバ30、試験系APサーバ40、及びストレージ装置20と通信可能に接続し、本番系処理部101と試験系処理部102を備えた処理要求転送装置10(リダイレクタ)が、通常モードにおいては、処理要求を本番系APサーバ30に転送するとともに処理要求を試験系APサーバ40に転送し、非常モードにおいては、処理要求を本番系APサーバ30に転送するとともに、ストレージ装置20に処理要求を出力するようにする。処理要求転送装置10は、例えば、ストレージ装置20とFC等に従って高速に通信を行う。【選択図】図3

Description

本発明は、処理要求読込転送装置、及び処理要求転送方法に関する。
特許文献1には、テストツールを用いることなく、実稼働環境のような公衆に利用可能な環境においてサーバが受けるhttpリクエストのトラフィックを、テスト環境において忠実に再現することができるサーバおよびプログラムを提供するため、通信ネットワーク上で一般ユーザへのサービスを実施している公衆に利用可能なサーバが、クエリ情報を含むhttpリクエストを受信し、httpリクエストからクエリ情報を抽出し、クエリ情報に基づいた処理を行う他のサーバに、抽出したクエリ情報を送信し、所定の指示を受け付けたことに応じて、テスト用サーバにhttpリクエストを送信することが記載されている。
特許公開2010−205232号公報
データセンタや企業等の組織における情報処理センタなどでは、現行の情報処理システムのリプレースや新たなソフトウエアのリリースに際し、リプレースやリリース後の情報処理システム(以下、試験系と称する。)の検証を確実に行うべく、本番稼働している現行の情報処理システム(以下、本番系と称する。)に入力される処理要求と同じ処理要求を本番系と並行して試験系にも入力して試験を実施することがある。
しかしこうした形態による試験の実施に際しては、試験系等に何らかの障害が発生した場合においても試験系の検証が確実に行われるようにするとともに、試験系が本番系に与える影響を確実に防ぐ必要がある。
本発明はこのような観点からなされたもので、試験系を検証すべく本番系に入力される処理要求と同じ処理要求を本番系と並行して試験系にも入力して試験系の検証を行うにあたり、試験系の検証を確実に行うことができ、試験系が本番系に与える影響を確実に防ぐことができるようにすることを目的とする。
上記目的を達成するための本発明のうちの一つは、プロセッサ、記憶装置、及び通信装置を有し、Webサーバ、本番系アプリケーションサーバ、試験系アプリケーションサーバ、及びストレージ装置と通信可能に接続する、処理要求転送装置であって、前記Webサーバから受信した処理要求を前記本番系アプリケーションサーバに転送する本番系処理部、前記処理要求を前記試験系アプリケーションサーバに転送する試験系処理部、及び、当該処理要求転送装置の動作モードを、通常モード又は非常モードに切り換える動作モード切換部、を備え、前記通常モードにおいて、前記本番系処理部は、前記処理要求を前記本番系アプリケーションサーバに転送するとともに前記試験系処理部に転送し、前記試験系処理部は、前記本番系処理部から受信した前記処理要求を前記試験系アプリケーションサーバに転送し、前記非常モードにおいて、前記本番系処理部は、前記処理要求を前記本番系アプリケーションサーバに転送するとともに、前記試験系処理部に代えて前記ストレージ装置に前記処理要求を出力する。
本発明によれば、試験系の検証を確実に行うことができるとともに、試験系が本番系に与える影響を確実に防ぐことができる。
Webサービスシステム1の概略的な構成を示す図である。 通常モード時における処理要求転送装置10の動作を説明する図である。 非常モード時における処理要求転送装置10の動作を説明する図である。 メイン処理S400を説明するフローチャートである。 本番系処理S410を説明するフローチャートである。 試験系処理S430を説明するフローチャートである。 処理要求読込転送装置70の構成を説明する図である。 処理要求読込転送装置70の機能を説明する図である。 蓄積された処理要求を用いた試験処理S900を説明するフローチャートである。
以下、実施形態について添付図面を参照しつつ説明する。尚、以下の説明において、同一又は類似の部分に同一の符号を付して重複する説明を省略することがある。また以下の説明において、「アプリケーション」のことを「AP」と、「プログラム」のことを「PG」と、「インタフェース」のことを「I/F」と称することがある。
図1に一実施形態として説明するWebサービスシステム1の概略的な構成を示している。同図に示すように、Webサービスシステム1は、Webクライアント2、Webサーバ3、処理要求転送装置10、ストレージ装置20、本番系APサーバ30、及び試験系APサーバ40を備えて構成されている。
Webサービスシステム1は、Webクライアント2から受信した処理要求(例えば、httpリクエスト(http:hypertext transfer protocol))に指定されている処理を実行し、処理要求に対する応答(例えば、httpレスポンス)をWebクライアント2に送信するまでの一連の処理(以下、Webサービスとも称する。)を行う。試験系APサーバ40は、例えば、本番系APサーバ30のリプレースや新たなソフトウエアのリリースに際し、リプレースやリリース後の新たなWebサービスシステム1を検証する目的で設けられる。
Webクライアント2、Webサーバ3、処理要求転送装置10、本番APサーバ30、及び試験系APサーバ40は、いずれもプロセッサ、記憶装置(メモリ、ハードディスク等)、及び通信装置を備えて構成される情報処理装置(コンピュータ)である。Webクライアント2は、Webサーバ3と通信ネットワーク(インターネット、LAN(Local Area Network)、WAN(Wide Area Network)等)を介して、TCP/IP等の通信プロトコルに従って通信する。Webクライアント2ではWebブラウザ等のWebサーバ3を利用するソフトウエアが動作する。Webクライアント2はWebサーバ3に処理要求を送信し、その応答をWebサーバ3から受信することによりWebサービスを享受する。例えば、Webサービスが図書館において書籍の貸し出し管理に関するものである場合、Webクライアント2から送信される上記処理要求は、書籍の貸し出し状況や書籍の格納場所の照会要求である。また例えば、Webサービスが企業や官庁等の組織における会議室予約に関するものである場合、Webクライアント2から送信される上記処理要求は、会議室の予約状況の照会要求や会議室を予約するための要求である。
Webサーバ3は、Webクライアント2から受信した処理要求に指定されている処理のうち静的コンテンツ(単純構成のHTML(HyperText Markup Language)の応答、画像コンテンツ、動画コンテンツ)の送信などの主に静的な処理を行う。一方、本番系APサーバ30は、Webクライアント2から受信した処理要求に指定されている処理のうちビジネスロジックの実行やデータベースの検索などの主に動的な処理を担う。Webサーバ3は、本番系APサーバ30が担当すべき処理要求をWebクライアント2から受信すると、その処理要求を処理要求転送装置10に転送する。処理要求転送装置10は、Webサーバ3から受信した処理要求を本番系APサーバ30及び試験系APサーバ40に転送する。また処理要求転送装置10は、本番系APサーバ30から受信した応答をWebサーバ3に転送する。
Webサーバ3や処理要求転送装置10のこうした機能を実現するソフトウエアとして、例えば、「Apache」(登録商標)がある。また本番系APサーバ30や試験系APサーバ40の機能を実現するソフトウエアとして、例えば、「Tomcat」(登録商標)や「J2EE」(登録商標)がある。本番系APサーバ30や試験系APサーバ40は、DBMS(DataBase Management System)が機能するデータベースサーバと連携するものであってもよい。
Webサーバ3と処理要求転送装置10との間の通信、並びに処理要求転送装置10と本番系APサーバ30又は試験系APサーバ40との間の通信は、例えば、連携モジュール(例えば「Apache」(登録商標)に組み込まれた「mod_jk」(登録商標))により所定のプロトコル(例えば「ajpプロトコル」)に従って行われる。
処理要求転送装置10は、プロセッサ11(CPU(Central Processing Unit)、MPU(Micro Processing Unit)等)、記憶装置12(ROM(Read Only Memory)、RAM(Random Access Memory)、NVRAM(Non Volatile RAM)、ハードディスクドライブ、SSD(Solid State Drive)、光学式記憶装置等)、通信装置13(NIC(Network Interface Card)等)、ユーザI/F14(キーボード、マウス、タッチパネル、液晶モニタ等)、及びストレージI/F15を備える。
通信装置13は、図示しない通信ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して、Webサーバ3、本番系APサーバ30、及び試験系APサーバ40と通信する。
ストレージI/F15は、例えば、HBA(Host Bus Adapter)やNIC(Network Interface Card)等を用いて構成されている。ストレージI/F15は、例えば、FC(Fibre Channel)、FCoE(Fibre Channel over Ethernet)(「Ethernet」は登録商標)、iSCSI(Internet Small Computer System Interface)等のプロトコルに従ってストレージ装置20と通信する。
処理要求転送装置10の記憶装置12には、本番系処理PG121、試験系処理PG122、動作モード切換PG123、ストレージ出力PG124、及び稼働状況監視PG125が格納されている。プロセッサ11がこれらのプログラムを記憶装置12から読み出して実行することにより、処理要求転送装置10においてこれらに対応した機能が実現される。尚、以下の説明において、プロセッサ11が、本番系処理PG121、試験系処理PG122、動作モード切換PG123、ストレージ出力PG124、及び稼働状況監視PG125を実行することにより実現される機能(処理主体)のことを、夫々、本番系処理部101、試験系処理部102、動作モード切換部103、ストレージ出力部104、及び稼働状況監視部105と称する。
本番系処理部101は、Webサーバ3から転送されてくる処理要求を本番系APサーバ30に送信する。後述する通常モードにおいて、本番系処理部101は、Webサーバ3から受信した処理要求を試験系処理部102にも送信する。また後述する非常モードにおいて、本番系処理部101は、Webサーバ3から受信した処理要求を試験系処理部102に代えてストレージ装置20に出力する。試験系処理部102は、後述する通常モードにおいて、本番系APサーバ30から受信した処理要求を試験系APサーバ40に送信する。尚、以上における処理要求の送信は、例えば、宛先となるプロセスの識別子、宛先となるノード(ホスト)の識別子、宛先となるポート番号等を指定したリダイレクト方式で行われる。
動作モード切換部103は、処理要求転送装置10の動作モード(通常モード又は非常モード)を切り換える。
ストレージ出力部104は、本番系処理部101から転送されてくる処理要求をストレージ装置20に出力する(後述する記憶ドライブ25に書き込む)。
稼働状況監視部105は、処理要求転送装置10の処理負荷、障害の発生有無、及びリソースの状態などのリアルタイムな監視、本番系APサーバ30又は試験系APサーバ40に送信した処理要求のタイムスタンプ付のログ情報の記録、本番系APサーバ30又は試験系APサーバ40から受信した処理要求に対する応答のタイムスタンプ付のログ情報の記録、処理要求転送装置10が実行した処理に関する情報の記録などを行う。
ストレージ装置20は、例えば、ディスクアレイ装置であって、通信I/F21、コントローラ22、キャッシュメモリ23、ドライブI/F24、及び一つ以上の記憶ドライブ25を備える。
通信I/F21は、処理要求転送装置10のストレージI/F15と通信し、処理要求転送装置10から送られてくるI/O要求の受信、I/O要求のプロトコル解析、処理結果やリードデータの処理要求転送装置10への送信等を行う。通信I/F21とストレージI/F15との間の通信(データ転送)はデータブロックを単位として高速で行われる。また上記通信では、複数の処理要求を区別せずにまとめて処理要求転送装置10からストレージ装置20に効率よく転送することができる。
コントローラ22は、プロセッサ(CPU、MPU等)、メモリ(ROM、RAM、NVRAM等)、及び高速データ転送チップ(DMA(Direct Memory Access)等)を備え、処理要求転送装置10から送られてくるI/O要求に応じて、通信I/F21とキャッシュメモリ23との間のデータ転送、キャッシュメモリ23とドライブI/F24との間のデータ転送等を行う。
キャッシュメモリ23は、RAM等を用いて構成されている。キャッシュメモリ23には記憶ドライブ25に書き込まれるライトデータや記憶ドライブ25から読み出されたリードデータが一時的に格納される。
記憶ドライブ25は、例えば、SATA(Serial ATA)、SAS(Serial Attached SCSI)、FC(Fibre Channel)、PATA(Parallel ATA)、SCSI等のドライブ等のハードディスクドライブ、SSD等である。記憶ドライブ25は、ドライブI/F24によってRAID(Redundant Arrays of Inexpensive (or Independent) Disks)の方式(RAID0〜6の少なくともいずれか)で制御される場合もある。
本番系APサーバ30では、図示しない本番系AP処理PGによって本番系AP処理部31の機能(処理主体)が、図示しない本番系監視処理PGによって本番系監視処理部32の機能(処理主体)が、夫々実現されている。本番系AP処理部31は、処理要求転送装置10から受信した処理要求に指定されている処理を実行し、その応答を処理要求転送装置10に送信する。本番系監視処理部32は、本番系APサーバ30の処理負荷、障害の発生有無、及びリソースの状態のリアルタイムな監視、処理要求転送装置10から受信した処理要求のタイムスタンプ付のログ情報の記録、処理要求転送装置10に送信した処理要求に対する応答のタイムスタンプ付のログ情報の記録、本番系AP処理部31が実行した処理に関する情報の記録等を行う。
試験系APサーバ40では、図示しない試験系AP処理PGによって試験系AP処理部41の機能(処理主体)が、図示しない試験系監視処理PGによって試験系監視処理部42の機能(処理主体)が、夫々実現されている。試験系AP処理部41は、処理要求転送装置10から受信した処理要求に指定されている処理を実行し、その応答を処理要求転送装置10に送信する。試験系監視処理部42は、試験系APサーバ40の処理負荷、障害の発生有無、及びリソースの状態のリアルタイムな監視、処理要求転送装置10から受信した処理要求のタイムスタンプ付のログ情報の記録、処理要求転送装置10に送信した処理要求に対する応答のタイムスタンプ付のログ情報の記録、試験系AP処理部41が実行した処理に関する情報の記録等を行う。
図2は通常モードにおける処理要求転送装置10の動作を説明する図である。処理要求転送装置10は、本番系のWebサービス(Webサーバ3、本番系APサーバ30を利用して行われるサービス)の処理性能の維持を目的として通常モードから非常モードへの切り換えを行う。例えば、処理要求転送装置10は、Webサービスシステム1に何らかの障害が発生した場合や障害が近いうちに発生することが予測される場合に通常モードから非常モードへの切り換えを行う。動作モードの切り換え(通常モードから非常モードへの切り換えもしくは非常モードから通常モードへの切り換え)は、処理要求転送装置10の動作モード切換部103が自動的に行う他、ユーザI/F14から受け付けた切り換え指示に応じて行われることもある。より具体的には、処理要求転送装置10は次のような場合に通常モードから非常モードへの切り換えを行う。
(1)処理要求転送装置10の処理負荷が高い場合(例えば、Webサーバ3から送られてくる単位時間当たりの処理要求の数が予め設定された閾値以上となった場合、プロセッサ11の使用率が予め設定された閾値以上となった場合)。
(2)処理要求転送装置10のリソースが不足している場合又は近いうちに不足することが予想される場合(例えば、記憶装置12の残容量が予め設定された閾値以下となった場合)。
(3)本番系処理部101から試験系処理部102に処理要求を転送する際に用いるバッファである処理待ちキュー105に溢れが生じている場合又は近いうちに溢れが生じることが予測される場合(例えば、処理待ちキュー105の残容量が予め設定された閾値以下になった場合、処理待ちキュー105に登録されている処理要求の数が予め設定された閾値を超えた場合)。
(4)処理待ちキュー105の残容量が予め設定された閾値以下になると処理待ちキュー105の容量を自動的に拡張する機能を)処理要求転送装置10に設けている場合に記憶装置12の容量不足等に因り容量の拡張に失敗した場合。
(5)処理要求転送装置10、本番系APサーバ30、試験系APサーバ40、これらを通信可能に接続している通信手段のうちの少なくともいずれかに障害が発生している場合。
図2に示すように、通常モードにおいて、本番系処理部101は、Webサーバ3から処理要求を受信すると、受信した処理要求を本番系APサーバ30に送信するとともに、当該処理要求を処理待ちキュー105に登録する。本番系処理部101は、転送した処理要求に対する応答を本番系APサーバ30から受信すると、これをWebサーバ3に送信する。試験系処理部102は、処理待ちキュー105に格納されている処理要求を順次読み出し、読み出した処理要求を試験系APサーバ40に送信する。試験系処理部102は、送信した処理要求に対する応答を試験系APサーバ40から受信するとこれを破棄する。尚、処理要求は必ずしも破棄しなくてもよく、例えば、処理要求を記憶装置12に蓄積して試験系APサーバ40の検証に活用してもよい。
このように、通常モードにおいて、処理要求転送装置10がWebサーバ3から受信した処理要求は、本番系APサーバ30と試験系APサーバ40の双方に送信され、本番系APサーバ30及び試験系APサーバ40の夫々において処理要求に指定されている処理が実行され、本番系APサーバ30及び試験系APサーバ40の夫々による処理要求の実行結果がログ情報などとして記録される。Webサービスシステム1の管理者等は、これらの情報に基づき試験系APサーバ40が正常に機能しているか否かを検証する。
図3は非常モードにおける処理要求転送装置10の動作を説明する図である。同図に示すように、非常モードにおいて、本番系処理部101は、Webサーバ3から処理要求を受信すると、受信した処理要求を本番系APサーバ30に送信する。また非常モードにおいて、本番系処理部101は、処理要求の処理待ちキュー105への登録は行わず、代わりに当該処理要求をストレージ出力部104に送信する。ストレージ出力部104は、本番系処理部101から転送されてきた処理要求をストレージ装置20に出力する。本番系処理部101は、転送した処理要求についての応答を本番系APサーバ30から受信すると、これをWebサーバ3に転送する。
ここでストレージ出力部104によるストレージ装置20への処理要求の出力(記憶ドライブ25への書き込み)は、FC等のプロトコルに従って高速かつ確実に行われる。また出力に際してストレージ出力部104は複数の処理要求を(例えばブロック転送方式で)一括してストレージ装置20に送出することもできる。このようにストレージ出力部104によるストレージ装置20への処理要求の出力は、試験系処理部102から試験系APサーバ40への処理要求の転送に比べて高速かつ効率よく行われる。このため、処理要求転送装置10に負荷を生じさせることなく(本番系に影響を与えることなく)、本番系処理部101から転送されてくる処理要求を確実に記憶ドライブ25に格納することができる。また障害等によって試験系APサーバ40に処理要求を転送することができない状況となった場合でもその間に生じた処理要求はストレージ装置20に蓄積されるため、蓄積された処理要求を試験系APサーバ40に与えることで非常時に発生した処理要求についても試験を行うことができる。このため、試験系APサーバ40が正しく機能するか否かを確実に検証することができる。このように、本実施形態のWebサービスシステム1によれば、試験系APサーバ40を含むシステムの検証を確実に行うことができるとともに、試験の実施が本番系のシステムに与える影響を確実に防ぐことができる。
尚、動作モードを通常モードから非常モードに切り換える際の情報の欠落を防ぐべく、例えば、所定数の処理要求をFIFO(First In First Out)方式で記憶装置12に設けたバッファに常時記憶しておき、非常モードへの切り換えに際してこのバッファに記憶されている処理要求についてもストレージ装置20に格納するようにしてよい。
<処理説明>
続いてWebサービスシステム1において行われる処理をフローチャートとともに説明する。尚、以下の説明において、符号の前に付している「S」の文字は「ステップ」を意味する。
図4はWebサーバ3から処理要求を受信した際に処理要求転送装置10が行う処理(以下、メイン処理S400と称する。)を説明するフローチャートである。同図に示すように、処理要求転送装置10は、Webサーバ3から処理要求を受信すると(S401:Y)、本番系処理S410及び試験系処理S430を行う。尚、これらの処理は必ずしも同図に示す順序で実行される必要はなく、例えば、マルチタスク方式で並行して実行させてもよい。尚、本番系処理S410及び試験系処理S430が実行されると処理はS401に戻る。
図5は、図4に示した本番系処理S410の詳細を説明するフローチャートである。同図に示すように、処理要求転送装置10は、本番系APサーバ30に処理要求を転送する(S411)。本番系APサーバ30は、処理要求を受信すると(S421)、受信した処理要求に指定されている処理を実行し(S422)、当該処理要求に対する応答を生成して処理要求転送装置10に送信する(S423)。またこのとき、本番系APサーバ30は、受信した処理要求に関する情報、処理要求に対応して実行した処理に関する情報等をタイムスタンプ付のログ情報として記憶する(S424)。処理要求転送装置10は、本番系APサーバ30から応答を受信すると(S412)、S401で受信した処理要求に対する応答をWebサーバ3に送信する(S413)。その後、処理はメイン処理S400に戻る。
図6は、図4に示した試験系処理S430の詳細を説明するフローチャートである。同図に示すように、処理要求転送装置10は、まず現在設定されている動作モードを取得する(S431)。現在の動作モードが「通常モード」である場合(S431:通常)、処理要求転送装置10はS432からの処理を実行し、現在の動作モードが「非常モード」である場合(S431:非常)、処理要求転送装置10はS435の処理を実行する。
S432では、処理要求転送装置10は、試験系APサーバ40に処理要求を転送する。試験系APサーバ40は、処理要求を受信すると(S441)、受信した処理要求に指定されている処理を実行し(S442)、当該処理要求に対する応答を生成して処理要求転送装置10に送信する(S443)。またこのとき、試験系APサーバ40は、受信した処理要求に関する情報、処理要求に対応して実行した処理に関する情報等をタイムスタンプ付のログ情報として記憶する(S444)。処理要求転送装置10は、試験系APサーバ40から応答を受信すると(S433)、当該応答を破棄する(S434)。その後、処理はメイン処理S400に戻る。
一方、S435では、処理要求転送装置10は、処理要求をストレージ装置20に出力する。その後、処理はメイン処理S400に戻る。
<蓄積された処理要求を用いた試験>
Webサービスシステム1の管理者等は、処理要求転送装置10が非常モードで動作している際にストレージ装置20の記憶ドライブ25に蓄積された処理要求を試験系APサーバ40に転送し、試験系APサーバ40を含むシステムの検証を行う。
図7は上記検証に際し用いられる、記憶ドライブ25に蓄積された処理要求を読み出して試験系APサーバ40に転送する機能を備えた情報処理装置の一例(以下、処理要求読込転送装置70と称する。)である。同図に示すように、処理要求読込転送装置70は、プロセッサ71、記憶装置72、通信装置73、ユーザI/F、及びストレージI/F75を備える。尚、これらの各装置の構成は、夫々、前述した処理要求転送装置10のプロセッサ11、記憶装置12,通信装置13、ユーザI/F14、及びストレージI/F15と同様である。前述した処理要求転送装置10を処理要求読込転送装置70として機能させてもよい。
同図に示すように、処理要求読込転送装置70の記憶装置72には、処理要求読込PG721、処理要求転送PG722、及び本番系ログ情報730が格納されている。プロセッサ71がこれらのプログラムを記憶装置72から読み出して実行することにより、処理要求読込転送装置70の様々な機能が実現される。以下の説明において、プロセッサ71が処理要求読込PG721を実行することにより実現される機能(処理主体)のことを処理要求読込部701と、プロセッサ71が処理要求転送PG722を実行することにより実現される機能(処理主体)のことを処理要求転送部702と称する。本番系ログ情報730は、本番系処理S410に際して本番系APサーバ30が記憶したタイムスタンプ付のログ情報であり、本番系APサーバ30が受信した処理要求に関する情報並びに本番系APサーバ30が処理要求を受信したタイミングを示す情報が含まれる。本番系ログ情報730は、例えば、自動的に又は手動で本番系APサーバ30から処理要求読込転送装置に複製される。処理要求転送部702は、この本番系ログ情報730を参照することにより試験系APサーバ40に処理要求を転送するタイミングを決定する。
図8は処理要求読込転送装置70の機能を説明する図である。同図に示すように、処理要求読込部701は、ストレージ装置20の記憶ドライブ25から処理要求を読み出し、これを処理要求読込部701から処理要求転送部702に処理要求を転送する際のバッファである処理待ちキュー750に登録する。尚、処理待ちキュー750は、記憶装置12の領域を用いて構成される。
処理要求転送部702は、本番系ログ情報730に基づき、処理待ちキュー750に登録されている処理要求を試験系APサーバ40に送信するタイミングを決定し、決定したタイミングが到来すると処理要求を試験系APサーバ40に送信する。処理要求読込転送装置70は、例えば、前後して送信する処理要求が、処理要求転送装置10から本番系APサーバ30に転送された間隔と同じ間隔で送信されるように送信タイミングを決定する。これにより本番系と同じ状況下で試験系を検証することができる。処理要求転送部702は、試験系APサーバ40から処理要求に対する応答を受信するとこれを破棄する。尚、処理要求は必ずしも破棄しなくてもよく、例えば、処理要求を記憶装置12に蓄積して試験系APサーバ40の検証に活用してもよい。
図9はストレージ装置20の記憶ドライブ25に蓄積された処理要求を用いて試験系APサーバ40を検証する際に処理要求読込転送装置70及び試験系APサーバ40が行う処理(以下、蓄積された処理要求を用いた試験処理S900と称する。)を説明するフローチャートである。
同図に示すように、処理要求読込転送装置70は、ストレージ装置20から処理要求を順次読み出して処理待ちキュー750に登録する(S911)。処理要求は単数を順次読み出してもよいし複数を一括して読み出してもよい。
続いて処理要求読込転送装置70は、ログ情報に基づき処理待ちキュー750に登録されている処理要求を送信するタイミングを決定し、決定したタイミングで処理要求を試験系APサーバ40に順次送信する(S912)。
試験系APサーバ40は、処理要求を受信すると(S941)、処理要求に対応する処理を実行し(S942)、処理要求に対する応答を生成してこれを処理要求読込転送装置70に転送する(S943)。またこのとき、試験系APサーバ40は、受信した処理要求に関する情報、処理要求に応じて実行した処理に関する情報などをログ情報として記憶する(S944)。管理者等はこのログ情報と本番系APサーバ30が同じ処理要求について記録したログ情報とを対照することにより試験系APサーバ40を検証する。処理要求読込転送装置70は、試験系APサーバ40から応答を受信すると(S913)、当該応答を破棄する(S914)。
S915では、処理要求読込転送装置70は、ストレージ装置20に未だ読み出していない処理要求が残存するか否かを判定する。未だ読み出していない処理要求が残存する場合は(S915:Y)S911に戻り、残存する処理要求について以上と同様の処理を繰り返す。一方、未だ読み出していない処理要求が残存しない場合は(S915:N)当該処理S900は終了する。
以上に説明したように、処理要求転送装置10は、非常時(非常モードでの動作時)において試験系処理部102に代えて高速で処理要求を書き出すことが可能なストレージ装置20に処理要求を出力するので、試験系処理部102の処理要求の転送等に何らかの支障が生じた場合に処理要求転送装置10の負荷の増大やリソース不足を防ぐことができ、本番系処理部101への影響を確実に防ぐことができる。また非常時に発生した処理要求がストレージ装置20に蓄積されるのでこれを処理要求転送装置10により試験系APサーバ40に与えることで非常時に発生した処理要求についても確実に試験を行うことができる。このように本実施形態のWebサービスシステム1によれば、本番系に入力される処理要求と同じ処理要求を本番系と並行して試験系にも入力して試験系の検証を行うにあたり、試験系の検証を確実に行うことができるとともに、試験系が本番系に与える影響を確実に防ぐことができる。
尚、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウエアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウエアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
1 Webサービスシステム、2 Webクライアント、3 Webサーバ、10 処理要求転送装置、101 本番系処理部、102 試験系処理部、103 動作モード切換部、104 ストレージ出力部、20 ストレージ装置、25 記憶ドライブ、30 本番系APサーバ、31 本番系AP処理部、32 本番系監視処理部、40 試験系APサーバ、41 試験系AP処理部、42 試験系監視処理部、70 処理要求読込転送装置、701 処理要求読込部、702 処理要求転送部、730 本番系ログ情報、S400 メイン処理、S410 本番系処理、S430 試験系処理

Claims (12)

  1. プロセッサ、記憶装置、及び通信装置を有し、Webサーバ、本番系アプリケーションサーバ、試験系アプリケーションサーバ、及びストレージ装置と通信可能に接続する、処理要求転送装置であって、
    前記Webサーバから受信した処理要求を前記本番系アプリケーションサーバに転送する本番系処理部、
    前記処理要求を前記試験系アプリケーションサーバに転送する試験系処理部、及び、
    当該処理要求転送装置の動作モードを、通常モード又は非常モードに切り換える動作モード切換部、
    を備え、
    前記通常モードにおいて、前記本番系処理部は、前記処理要求を前記本番系アプリケーションサーバに転送するとともに前記試験系処理部に転送し、前記試験系処理部は、前記本番系処理部から受信した前記処理要求を前記試験系アプリケーションサーバに転送し、
    前記非常モードにおいて、前記本番系処理部は、前記処理要求を前記本番系アプリケーションサーバに転送するとともに、前記試験系処理部に代えて前記ストレージ装置に前記処理要求を出力する
    処理要求転送装置。
  2. 請求項1に記載の処理要求転送装置であって、当該処理要求転送装置の負荷又はリソースをリアルタイムに監視し、前記負荷が予め設定された閾値を超えた場合又はリソースの残量が予め設定した閾値以下になった場合に当該処理要求装置の前記動作モードを非常モードに切り換える動作モード切換部を備える、処理要求転送装置。
  3. 請求項2に記載の処理要求転送装置であって、
    前記本番系処理部は、前記記憶装置の記憶領域である処理待ちキューを介して前記試験系処理部に前記処理要求を転送し、
    前記動作モード切換部は、前記通常モードにおいて、前記処理待ちキューの残容量が予め設定された閾値以下になると当該処理要求装置の前記動作モードを前記非常モードに切り換える
    処理要求転送装置。
  4. 請求項1に記載の処理要求転送装置であって、当該処理要求転送装置、前記本番系アプリケーションサーバ、前記試験系アプリケーションサーバ、及びこれらの装置を通信可能に接続する通信手段のうちの少なくともいずれかについての障害の発生有無をリアルタイムに監視し、障害の発生を検知すると当該処理要求装置の前記動作モードを非常モードに切り換える動作モード切換部を備える、処理要求転送装置。
  5. 請求項1に記載の処理要求転送装置であって、前記ストレージ装置とFC(Fibre Channel)、FCoE(Fibre Channel over Ethernet)(「Ethernet」は登録商標)、及びiSCSI(Internet Small Computer System Interface)のうちの少なくともいずれかに従って通信を行う、処理要求転送装置。
  6. プロセッサ、記憶装置、及び通信装置を備え、
    請求項1に記載の前記ストレージ装置と通信可能に接続し、
    請求項1に記載の処理要求転送装置によって前記ストレージ装置に格納された前記処理要求を順次読み出して前記試験系アプリケーションサーバに転送する処理要求転送部を備える、
    処理要求読込転送装置。
  7. 請求項6に記載の処理要求読込転送装置であって、
    前記ストレージ装置は、記憶している前記処理要求の夫々が前記処理要求転送装置から前記本番系アプリケーションサーバに転送されたタイミングを示すタイムスタンプを記憶し、
    前記処理要求転送部は、前記タイムスタンプに基づき決定したタイミングで前記処理要求を前記試験系アプリケーションサーバに転送する、
    処理要求読込転送装置。
  8. プロセッサ、記憶装置、及び通信装置を有し、Webサーバ、本番系アプリケーションサーバ、試験系アプリケーションサーバ、及びストレージ装置と通信可能に接続する処理要求転送装置が、
    前記Webサーバから受信した処理要求を前記本番系アプリケーションサーバに転送するステップと、
    前記処理要求を前記試験系アプリケーションサーバに転送するステップと、
    当該処理要求転送装置の動作モードを、通常モード又は非常モードに切り換えるステップと、
    前記通常モードにおいて、前記処理要求を前記本番系アプリケーションサーバに転送するとともに前記処理要求を前記試験系アプリケーションサーバに転送するステップと、
    前記非常モードにおいて、前記処理要求を前記本番系アプリケーションサーバに転送するとともに、前記ストレージ装置に前記処理要求を出力するステップと
    を実行する、処理要求転送方法。
  9. 請求項8に記載の処理要求転送方法であって、前記処理要求転送装置が、当該処理要求転送装置の負荷又はリソースをリアルタイムに監視し、前記負荷が予め設定された閾値を超えた場合又はリソースの残量が予め設定した閾値以下になった場合に当該処理要求装置の前記動作モードを非常モードに切り換えるステップを実行する、処理要求転送方法。
  10. 請求項9に記載の処理要求転送方法であって、
    前記処理要求転送装置が、
    前記通常モードにおいて、前記記憶装置の記憶領域である処理待ちキューに前記処理要求を転送し、前記処理待ちキューから処理要求を読み出して前記試験系アプリケーションサーバに転送するステップと、
    前記処理待ちキューの残容量が予め設定された閾値以下になると当該処理要求装置の前記動作モードを前記非常モードに切り換えるステップと
    を実行する、処理要求転送方法。
  11. 請求項8に記載の処理要求転送方法であって、前記処理要求転送装置が、当該処理要求転送装置、前記本番系アプリケーションサーバ、前記試験系アプリケーションサーバ、及びこれらの装置を通信可能に接続する通信手段のうちの少なくともいずれかについての障害の発生有無をリアルタイムに監視し、障害の発生を検知すると当該処理要求装置の前記動作モードを非常モードに切り換えるステップを実行する、処理要求転送方法。
  12. 請求項8に記載の処理要求転送方法であって、前記処理要求転送装置が、前記ストレージ装置とFC(Fibre Channel)、FCoE(Fibre Channel over Ethernet)(「Ethernet」は登録商標)、及びiSCSI(Internet Small Computer System Interface)の少なくともいずれかに従って通信を行う、処理要求転送方法。
JP2013242000A 2013-11-22 2013-11-22 処理要求読込転送装置、及び処理要求転送方法 Active JP6114683B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013242000A JP6114683B2 (ja) 2013-11-22 2013-11-22 処理要求読込転送装置、及び処理要求転送方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013242000A JP6114683B2 (ja) 2013-11-22 2013-11-22 処理要求読込転送装置、及び処理要求転送方法

Publications (2)

Publication Number Publication Date
JP2015102951A true JP2015102951A (ja) 2015-06-04
JP6114683B2 JP6114683B2 (ja) 2017-04-12

Family

ID=53378618

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013242000A Active JP6114683B2 (ja) 2013-11-22 2013-11-22 処理要求読込転送装置、及び処理要求転送方法

Country Status (1)

Country Link
JP (1) JP6114683B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018018121A (ja) * 2016-07-25 2018-02-01 富士通株式会社 データベース制御プログラム、データベース制御方法及びデータベース制御装置
JP2018049471A (ja) * 2016-09-21 2018-03-29 日本電気株式会社 疑似サーバ制御装置、疑似サーバ制御方法、および疑似サーバ制御プログラム
JP2021157255A (ja) * 2020-03-25 2021-10-07 エルジー シーエヌエス カンパニー リミテッド Itシステム検証方法およびシステム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010086110A (ja) * 2008-09-30 2010-04-15 Nomura Research Institute Ltd プログラムの設定情報切替システム及び切替方法
WO2012164711A1 (ja) * 2011-06-02 2012-12-06 株式会社 日立製作所 情報処理システム、ソフトウエア検証方法、及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010086110A (ja) * 2008-09-30 2010-04-15 Nomura Research Institute Ltd プログラムの設定情報切替システム及び切替方法
WO2012164711A1 (ja) * 2011-06-02 2012-12-06 株式会社 日立製作所 情報処理システム、ソフトウエア検証方法、及びプログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018018121A (ja) * 2016-07-25 2018-02-01 富士通株式会社 データベース制御プログラム、データベース制御方法及びデータベース制御装置
JP2018049471A (ja) * 2016-09-21 2018-03-29 日本電気株式会社 疑似サーバ制御装置、疑似サーバ制御方法、および疑似サーバ制御プログラム
JP2021157255A (ja) * 2020-03-25 2021-10-07 エルジー シーエヌエス カンパニー リミテッド Itシステム検証方法およびシステム
JP7069500B2 (ja) 2020-03-25 2022-05-18 エルジー シーエヌエス カンパニー リミテッド Itシステム検証方法およびシステム

Also Published As

Publication number Publication date
JP6114683B2 (ja) 2017-04-12

Similar Documents

Publication Publication Date Title
Klimovic et al. Flash storage disaggregation
US7991975B2 (en) Storage medium control unit, data storage device, data storage system, method, and control program
US9864517B2 (en) Actively responding to data storage traffic
US7882393B2 (en) In-band problem log data collection between a host system and a storage system
US9384099B2 (en) Virtual tape library device and data recovery method
US10437492B1 (en) Input/output adapter with offload pipeline for data copying
JP2005267327A (ja) ストレージシステム
US10942835B2 (en) Processing a health condition message on a health condition to determine whether to perform a swap operation
US10970178B2 (en) Generating a health condition message on a health condition detected at a server to send to a host system accessing the server
US8473699B2 (en) Facilitating data compression during replication using a compressible configuration bit
JP2016085728A (ja) デバイス故障後のコンソールメッセージ回収方法およびシステム
JP6114683B2 (ja) 処理要求読込転送装置、及び処理要求転送方法
WO2023226380A1 (zh) 一种磁盘处理方法、系统及电子设备
US11122123B1 (en) Method for a network of storage devices
US20130086413A1 (en) Fast i/o failure detection and cluster wide failover
US8176026B2 (en) Consolidating file system backend operations with access of data
JP4443200B2 (ja) 情報システム
JP5999254B2 (ja) 管理装置、方法及びプログラム
JP6461347B2 (ja) ストレージシステム、及び、記憶制御方法
JP5394826B2 (ja) ランダムアクセス型の記憶媒体を仮想的なシーケンシャルアクセス型の記憶媒体にエミュレートするエミュレータを実行する計算機システム
US20160239231A1 (en) Storage system, storage control device, and computer-readable recording medium
US20200026631A1 (en) Dynamic i/o monitoring and tuning
WO2018173300A1 (ja) I/o制御方法およびi/o制御システム
US8566551B2 (en) Information apparatus and method for controlling the same

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160201

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161213

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170104

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170228

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170317

R150 Certificate of patent or registration of utility model

Ref document number: 6114683

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150