JP2005209029A - アプリケーション管理システム、アプリケーション管理方法およびその管理方法を実行させるためのプログラム - Google Patents

アプリケーション管理システム、アプリケーション管理方法およびその管理方法を実行させるためのプログラム Download PDF

Info

Publication number
JP2005209029A
JP2005209029A JP2004016164A JP2004016164A JP2005209029A JP 2005209029 A JP2005209029 A JP 2005209029A JP 2004016164 A JP2004016164 A JP 2004016164A JP 2004016164 A JP2004016164 A JP 2004016164A JP 2005209029 A JP2005209029 A JP 2005209029A
Authority
JP
Japan
Prior art keywords
application
management
server computer
execution
unit
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
Application number
JP2004016164A
Other languages
English (en)
Inventor
Kengo Nakamura
謙吾 中村
Hirotaka Kitahara
博隆 北原
Toshiaki Fujisawa
利明 藤沢
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.)
TMT & D KK
TD System Technology Corp
Original Assignee
TMT & D KK
TD System Technology Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by TMT & D KK, TD System Technology Corp filed Critical TMT & D KK
Priority to JP2004016164A priority Critical patent/JP2005209029A/ja
Publication of JP2005209029A publication Critical patent/JP2005209029A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Multi Processors (AREA)

Abstract

【課題】アプリケーション管理の省力化。
【解決手段】アプリケーションサーバ計算機群11Aとアプリケーションの動作定義保存ファイル19を格納する管理サーバ計算機13とを通信ネットワーク12を介して相互に通信可能に構成し、前記動作定義保存ファイル19を前記サーバ計算機群が参照することによりアプリケーションの動作を制御する。前記サーバ計算機15Aのアプリケーション管理手段21Aが管理するアプリケーションをグループ化した実行対象アプリケーション群22と、これらのグルーピングデータを有する現在状態更新ファイル23Aとを備え、前記管理手段21Aに指定した単位でアプリケーションの停止要求を受け付ける停止受付部25と、アプリケーションをグループ単位で管理するとともに、前記停止受付部からの停止要求を受けて前記アプリケーションを一斉に停止させるアプリケーショングルーピング管理部26とを備える。
【選択図】 図4

Description

本発明は、複数の計算機と各々計算機において動作するアプリケーションの動作定義を一元管理する計算機とを備えたアプリケーション管理システムに係り、特に、柔軟なアプリケーション分散配置の実現およびアプリケーションの動作定義の管理の安全性向上を図ったアプリケーション管理システム、アプリケーション管理方法およびその管理方法を実行させるためのプログラムに関する。
図17に従来のアプリケーション管理システムおよびアプリケーション管理方法について概略を説明する概略図を示す。
図17に示すアプリケーション管理システム1は、例えば3つ等の少なくとも1以上のアプリケーションサーバ計算機2A,2B,2CがLAN(Local Area Network)またはWAN(Wide Area Network)等の通信ネットワーク3を介して管理サーバ計算機4と電気的に接続され、双方向に電子データの受け渡しが可能に構成される。
管理サーバ計算機4には、少なくとも1以上のアプリケーション5を有するアプリケーションサーバ計算機2A,2B,2Cの各々が処理を実行するアプリケーション5の動作定義を記録し保存したアプリケーション動作定義保存ファイル6が格納される。
アプリケーション管理システム1は、各々のアプリケーションサーバ計算機2A,2B,2Cがアプリケーション実行時に管理サーバ計算機4に格納されるアプリケーション動作定義保存ファイル6を参照することで、各々のアプリケーションサーバ計算機2A,2B,2Cのアプリケーション動作定義を一元的に管理する。尚、図17中のP,P,Pは、それぞれアプリケーションサーバ計算機2A,2B,2Cのアクセス経路を示す。
上述したアプリケーション管理システムおよびそのアプリケーション方法の一例は、特開平11−59873号公報に掲載されている。(例えば、特許文献1参照)。
特開平11−59873号公報(明細書段落番号[0001],[0006]〜[0007],[0017]〜[0030],図1〜図2)
図17に示すような従来のアプリケーション管理システム1、アプリケーション管理方法では、複数のアプリケーションを一斉に起動することはできるが、一斉に停止することはできないという課題がある。アプリケーションの動作においては、起動の後は必ず停止があり、一斉停止ができないとするならばアプリケーションを管理する上で不便であり、負担も大きい。つまり、アプリケーションを管理する上での利便性及び省力化の点で問題がある。
また、発生したアプリケーションの動作異常を検出した場合、アプリケーションの再実行等の後処理がなされるが、外部のアプリケーションサーバ計算機には通知されず、異常が発生した際にアプリケーションサーバ計算機を利用していたユーザ等の一部の者しかアプリケーションに動作異常が発生したことを知ることができないという課題がある。異常が生じた旨を外部のアプリケーションサーバ計算機から知ることができないとするならば、異常状態を復起させる処置が遅れたり、異常発生を知らない者によるユーザの使用等により、システム全体又はその一部に悪影響を与えかねない点で問題となる。
さらに、規定周期外での起動または停止、すなわち、アプリケーション動作を不定期に行うことができず、動作の自由度が少ないという課題がある。アプリケーションの動作が規定周期に限られると、アプリケーションを管理する上では、動作の自由度が著しく制限される点で問題となる。
さらにまた、管理サーバ計算機4は1台であり、動作定義を取得する取得経路が1つであることからこの管理サーバ計算機4が何らかの理由で異常となり、動作定義が取得できない場合にはアプリケーションの動作管理を継続して実行することができないという課題がある。管理サーバ計算機4が異常になる等で動作定義を取得できないとすれば、アプリケーションサーバ計算機2A等は、アプリケーションの動作管理ができなくなり、システムの安全性、信頼性の点で問題となる。
本発明は上記課題を解決するためになされたものであり、アプリケーション管理の利便性向上及び省力化を図ったアプリケーション管理システム、アプリケーション管理方法およびそのアプリケーション管理方法を実行させるためのプログラムを提供することを発明の目的とする。
また、他の発明の目的としては、アプリケーション動作の異常が発生したアプリケーションサーバ計算機以外の外部計算機にも異常が発生した旨を通知して、アプリケーション管理システムの他のアプリケーションに対する悪影響を最小限に留め得るアプリケーション管理システム、アプリケーション管理方法およびそのアプリケーション管理方法を実行させるためのプログラムを提供することにある。
さらに、他の発明の目的としては、アプリケーションの動作定義を取得する取得経路を複数確保してより安定性、信頼性を高めたアプリケーション管理システム、アプリケーション管理方法およびそのアプリケーション管理方法を実行させるためのプログラムを提供することにある。
本発明に係るアプリケーション管理システムは、上述した課題を解決するため、請求項1に記載したように、複数の実行可能なアプリケーションを有するアプリケーションサーバ計算機を複数台備えるアプリケーションサーバ計算機群と複数のアプリケーションの動作定義を事前設定した管理サーバ計算機とを通信ネットワークを介して相互に通信可能に構成し、前記アプリケーションサーバ計算機は、アプリケーションの実行を制御し管理するアプリケーション管理手段と、このアプリケーション管理手段が管理する少なくとも1以上のアプリケーションと、アプリケーションの現在の状態を記録し保有するアプリケーション現在状態更新ファイルとを備え、前記管理サーバ計算機は、アプリケーションの動作定義を記録したアプリケーション動作定義保存ファイルを格納し、このアプリケーション動作定義保存ファイルを前記アプリケーションサーバ計算機が参照することによりアプリケーションの動作を制御するアプリケーション管理システムにおいて、前記アプリケーションサーバ計算機は、前記アプリケーション管理手段が管理する少なくとも1以上のアプリケーションを少なくとも1以上のグループにグループ化した実行対象アプリケーション群と、この実行対象アプリケーション群のグルーピングデータを有するアプリケーション現在状態更新ファイルとを備え、前記アプリケーションサーバ計算機のアプリケーション管理手段に、指定した単位でアプリケーションの停止要求を受け付けるアプリケーション停止受付部と、前記実行対象アプリケーション群のアプリケーションをグループ単位で管理するとともに、前記アプリケーション停止受付部からの停止要求を受けて前記指定した単位でアプリケーションを一斉に停止させるアプリケーショングルーピング管理部とを備えることを特徴とする。
尚、請求項1記載の指定した単位とは、アプリケーション管理手段が管理するアプリケーション単位またはアプリケーション群のグルーピングされたグループ単位をいう。
また、本発明に係るアプリケーション管理システムは、上述した課題を解決するため、請求項2に記載したように、複数の実行可能なアプリケーションを有するアプリケーションサーバ計算機を複数台備えるアプリケーションサーバ計算機群と複数のアプリケーションの動作定義を事前設定した管理サーバ計算機とを通信ネットワークを介して相互に通信可能に構成し、前記アプリケーションサーバ計算機は、アプリケーションの実行を制御し管理するアプリケーション管理手段と、このアプリケーション管理手段が管理する少なくとも1以上のアプリケーションと、アプリケーションの現在の状態を記録し保有するアプリケーション現在状態更新ファイルとを備え、前記管理サーバ計算機は、アプリケーションの動作定義を記録したアプリケーション動作定義保存ファイルを格納し、このアプリケーション動作定義保存ファイルを前記アプリケーションサーバ計算機が参照することによりアプリケーションの動作を制御するアプリケーション管理システムにおいて、前記アプリケーションサーバ計算機は、アプリケーション動作の異常を検出するアプリケーション異常検出手段と、異常検出時の後処理を実行する後処理アプリケーションとを備え、前記アプリケーションサーバ計算機のアプリケーション管理手段に、実行要求のあったアプリケーションの実行を制御するアプリケーション管理部と、異常が発生し実行要求されたアプリケーションが再実行できない場合に前記後処理アプリケーションを実行する後処理実行部とを備えることを特徴とする。
尚、請求項2記載の適切な後処理を実行するとは、異常終了が発生した管理対象のアプリケーションに応じ、余計な負荷をアプリケーションシステムにかけないようにしてシステムの全体又は一部に与える悪影響を最小限に抑える後処理をいう。
さらに、本発明に係るアプリケーション管理システムは、上述した課題を解決するため、請求項3に記載したように、複数の実行可能なアプリケーションを有するアプリケーションサーバ計算機を複数台備えるアプリケーションサーバ計算機群と複数のアプリケーションの動作定義を事前設定した管理サーバ計算機とを通信ネットワークを介して相互に通信可能に構成し、前記アプリケーションサーバ計算機は、アプリケーションの実行を制御し管理するアプリケーション管理手段と、このアプリケーション管理手段が管理する少なくとも1以上のアプリケーションと、アプリケーションの現在の状態を記録し保有するアプリケーション現在状態更新ファイルとを備え、前記管理サーバ計算機は、アプリケーションの動作定義を記録したアプリケーション動作定義保存ファイルを格納し、このアプリケーション動作定義保存ファイルを前記アプリケーションサーバ計算機が参照することによりアプリケーションの動作を制御するアプリケーション管理システムにおいて、前記アプリケーションサーバ計算機に、オペレーションシステムのタイマを管理し、現在時刻を認識するとともに、中断処理を行うアプリケーションの次回起動時刻を受け取り、前記現在時刻と前記次回起動時刻とが同じ時刻になると、アプリケーションの実行要求を行うOSタイマ管理手段を設け、前記アプリケーション管理手段に、実行要求のあったアプリケーションの実行を制御するアプリケーション管理部と、中断処理を行うアプリケーションの次回起動時刻を前記OSタイマ管理手段に通知する次回起動時刻通知部とを備えることを特徴とする。
さらにまた、本発明に係るアプリケーション管理システムは、上述した課題を解決するため、請求項4に記載したように、複数の実行可能なアプリケーションを有するアプリケーションサーバ計算機を複数台備えるアプリケーションサーバ計算機群と複数のアプリケーションの動作定義を事前設定した管理サーバ計算機とを通信ネットワークを介して相互に通信可能に構成し、前記アプリケーションサーバ計算機は、アプリケーションの実行を制御し管理するアプリケーション管理手段と、このアプリケーション管理手段が管理する少なくとも1以上のアプリケーションと、アプリケーションの現在の状態を記録し保有するアプリケーション現在状態更新ファイルとを備え、前記管理サーバ計算機は、アプリケーションの動作定義を記録したアプリケーション動作定義保存ファイルを格納し、このアプリケーション動作定義保存ファイルを前記アプリケーションサーバ計算機が参照することによりアプリケーションの動作を制御するアプリケーション管理システムにおいて、前記アプリケーションサーバ計算機に、規定時間毎に前記アプリケーション現在状態更新ファイルに記録される規定時間内動作回数を0にする現状動作回数リセット手段と、前記アプリケーション管理手段に、実行要求のあったアプリケーションの実行を制御し管理するアプリケーション管理部と、前記アプリケーション現在状態更新ファイルに記録される規定時間内動作回数と前記アプリケーション動作定義保存ファイルに記録される設定動作回数とを比較する動作回数比較部とを備えることを特徴とする。
一方、本発明に係るアプリケーション管理システムは、上述した課題を解決するため、請求項5に記載したように、複数の実行可能なアプリケーションを有するアプリケーションサーバ計算機を複数台備えるアプリケーションサーバ計算機群と複数のアプリケーションの動作定義を事前設定した管理サーバ計算機とを通信ネットワークを介して相互に通信可能に構成し、前記アプリケーションサーバ計算機は、アプリケーションの実行を制御し管理するアプリケーション管理手段と、このアプリケーション管理手段が管理する少なくとも1以上のアプリケーションと、アプリケーションの現在の状態を記録し保有するアプリケーション現在状態更新ファイルとを備え、前記管理サーバ計算機は、アプリケーションの動作定義を記録したアプリケーション動作定義保存ファイルを格納し、このアプリケーション動作定義保存ファイルを前記アプリケーションサーバ計算機が参照することによりアプリケーションの動作を制御するアプリケーション管理システムにおいて、前記アプリケーションサーバ計算機は、前記アプリケーション管理手段にアプリケーションの実行を制御するアプリケーション管理部と、アプリケーション終了時に今回の実行時間を算出するアプリケーション実行時間算出部と、前記アプリケーション管理手段が管理するアプリケーションについてアプリケーション実行終了後に前記アプリケーション実行時間算出部から算出した今回の実行時間を受け取って今回までの平均実行時間を算出するアプリケーション平均実行時間算出手段とを備えることを特徴とする。
他方、本発明に係るアプリケーション管理システムは、上述した課題を解決するため、請求項6に記載したように、複数の実行可能なアプリケーションを有するアプリケーションサーバ計算機を複数台備えるアプリケーションサーバ計算機群と複数のアプリケーションの動作定義を事前設定した複数の管理サーバ計算機を有する管理サーバ計算機群とを通信ネットワークを介して相互に通信可能に構成し、前記管理サーバ計算機群が有する管理サーバ計算機は、アプリケーションの動作定義を記録したアプリケーション動作定義保存ファイルを格納し、前記アプリケーションサーバ計算機は、事前に決められた接続優先度に従い、前記管理サーバ計算機に格納されるアプリケーション動作定義保存ファイルを参照してアプリケーションの動作を制御し管理するアプリケーション管理手段と、このアプリケーション管理手段が管理する少なくとも1以上のアプリケーションと、アプリケーションの現在の状態を記録し保有するアプリケーション現在状態更新ファイルとを備えることを特徴とする。
本発明に係るアプリケーション管理方法は、上述した課題を解決するため、請求項7に記載したように、アプリケーション停止受付部がアプリケーションの停止要求を受け付けて認識し停止要求の内容を判断するアプリケーション停止要求判断行程と、このアプリケーション停止要求判断行程で前記アプリケーション停止受付部が判断した停止要求のあったアプリケーションに属するグループを管理するアプリケーショングルーピング管理部が停止要求のあったアプリケーションを一斉に停止するアプリケーション停止行程と、前記アプリケーショングルーピング管理部がアプリケーション現在状態情報を更新するアプリケーション現在状態情報更新行程とを具備し、前記アプリケーション停止要求判断行程は、前記アプリケーション停止部がアプリケーションの停止要求を受け付け認識するアプリケーション停止要求認識ステップと、アプリケーション動作定義保存ファイルを参照し、アプリケーション動作定義を取得するアプリケーション動作定義取得ステップと、取得したアプリケーション動作定義からアプリケーション停止要求の内容を判断するアプリケーション停止要求内容判断ステップとを備えることを特徴とする。
本発明に係る管理方法を実行させるプログラムは、上述した課題を解決するために、請求項8に記載したようなアプリケーション停止部がアプリケーションの停止要求を受け付け認識するアプリケーション停止要求認識ステップと、アプリケーション動作定義保存ファイルを参照し、アプリケーション動作定義を取得するアプリケーション動作定義取得ステップと、取得したアプリケーション動作定義からアプリケーション停止要求の内容を判断するアプリケーション停止要求内容判断ステップとを備えるアプリケーション停止要求判断行程と、このアプリケーション停止要求判断行程で前記アプリケーション停止受付部が判断した停止要求のあったアプリケーションに属するグループを管理するアプリケーショングルーピング管理部が停止要求のあったアプリケーションを一斉に停止するアプリケーション停止行程と、前記アプリケーショングルーピング管理部がアプリケーション現在状態情報を更新するアプリケーション現在状態情報更新行程とを具備するアプリケーション停止手順をコンピュータに実行させるプログラムであることを特徴とする。
本発明に係るアプリケーション管理システム、アプリケーション管理方法およびその管理方法を実行させるためのプログラムによれば、アプリケーションサーバ計算機で実行中の所定のアプリケーションが複数あり同じグループに属する場合、各々のアプリケーション名を指定する必要がなく、アプリケーション停止の際の省力化を実現することができる。
また、アプリケーションの動作異常が発生(検出)した場合、アプリケーションのリカバリーをアプリケーションの動作定義に従って実施して、リカバリーが不要または不可である場合には、異常が発生したアプリケーションの動作を禁止するとともに、後処理実行アプリケーションが起動してアプリケーションの動作異常発生を通信ネットワークを介して電気的に接続される外部計算機に通知するので、外部計算機からの無用な接続を防止する。従って、アプリケーション管理システムの他のアプリケーションに対する悪影響を最小限に食い止めることができ、より適切なリカバリーを実施することができる。
さらに、アプリケーションサーバ計算機において管理される管理対象アプリケーション群の個々のアプリケーションの処理操作を一旦中断し、規定周期時間以外の任意時間後にアプリケーションの実行処理を再開させる(動的起動させる)ことができるので、アプリケーションの動作の自由度を従来のアプリケーション管理システムよりも高めることができる。
さらにまた、管理サーバ計算機に代えて、管理サーバ計算機群を具備することで、アプリケーション動作定義を取得する接続経路を複数個確保することができ、従来のアプリケーション管理システムよりシステムの安定度および信頼度を高めることができる。
以下、本発明に係るアプリケーション管理システム、アプリケーション管理方法およびその管理方法を実行させるためのプログラムの実施の形態について図面を参照して説明する。
図1に本発明に係るアプリケーション管理システムの基本的な構成概略を表した基本構成概略図を示す。
図1に示されるアプリケーション管理システム10は、本発明の各実施に係るアプリケーション管理システムにおける共通構成である。アプリケーション管理システム10は、少なくとも1以上のアプリケーションサーバ計算機を有するサーバ計算機群11がLAN(Local Area Network)またはWAN(Wide Area Network)等の通信ネットワーク12を介して管理サーバ計算機13と電気的に接続され、双方向に電子データの受け渡しが可能に構成される。アプリケーション管理システム10のサーバ計算機群11は、例えば3つ等の少なくとも1以上のアプリケーションサーバ計算機15,16,17を備える。
アプリケーション管理システム10の管理サーバ計算機13には、各々のアプリケーションサーバ計算機15,16,17で動作するアプリケーションの動作定義を記録し保存したアプリケーション動作定義保存ファイル19を格納しており、管理サーバ計算機13にアプリケーション動作定義保存ファイル19を格納することで、各々のアプリケーションサーバ計算機15,16,17のアプリケーション動作定義を管理サーバ計算機13に集約して管理する。
アプリケーションサーバ計算機15は、アプリケーションの実行を制御し管理するアプリケーション管理手段21と、アプリケーション管理手段21が管理し、少なくとも1以上の実行可能なアプリケーションを有する実行対象アプリケーション群22と、アプリケーション現在状態情報としてアプリケーションの現在状態を記録し保有するアプリケーション現在状態更新ファイル23とを備える。
アプリケーションサーバ計算機15のアプリケーション管理手段21は、アプリケーションサーバ計算機15においてユーザの入力操作等によりアプリケーションの実行要求が生じると、通信ネットワーク12を介して管理サーバ計算機13に格納されるアプリケーション動作定義保存ファイル19を参照する。そして、アプリケーション動作定義保存ファイル19に記録されるアプリケーション動作定義に従い、実行要求のあったアプリケーションの実行を制御し管理する。
図2にアプリケーション動作定義保存ファイル19のデータ構造の一例を説明する説明図を示す。
アプリケーション動作定義保存ファイル19は、実行対象アプリケーション群22が有するn個(n:任意の自然数)の実行対象アプリケーションを管理するべく、実行対象アプリケーション毎にアプリケーションを管理するためのデータ(以下、アプリケーション管理データとする。)が記録されている。各アプリケーション管理データは、例えば、図2に示すように、アプリケーション名、所属グループ名、所属アプリケーションサーバ計算機名、アプリケーションパス名、動作優先度、規定監視時間、規定周期時間、動作異常時の後処理パターン、後処理実行アプリケーション名、規定時間、規定時間内動作回数の情報を保有する。
ここで、各アプリケーション管理データが保有する情報について補足する。所属グループ名とは、アプリケーションをグループ単位で管理するために定義するグループの名称である。所属アプリケーションサーバ計算機とは、アプリケーションが実際に動作可能な計算機の名称である。アプリケーションパス名とは、アプリケーションの実行ファイルが保存されている箇所を示す情報である。動作優先度とは、実行対象アプリケーションの動作優先度を定義した情報である。
また、規定監視時間とは、実行対象アプリケーションの動作時間を外部から監視するための基準時間であり、規定周期時間とは、実行対象アプリケーションを外部から周期的に動作させるための周期時間である。動作異常時の後処理パターンとは、実行対象アプリケーションの動作異常時の後処理方式を定義した情報である。後処理実行アプリケーション名とは、アプリケーションの動作異常時の後処理を実施するアプリケーション名をいう。
さらに、規定時間とは、実行対象アプリケーションの動作回数を監視する基準となる時間であり、規定時間内動作回数とは、規定時間内に実行対象アプリケーションが動作した回数をいう。
次に、図3を用いてアプリケーションサーバ計算機群11のアプリケーションサーバ計算機15,16,17がそれぞれ備えるアプリケーション現在状態更新ファイル23について説明する。
図3は、アプリケーション現在状態更新ファイル23のデータ構造の一例を説明する説明図である。
図3に示されるアプリケーション現在状態更新ファイル23は、n個(n:任意の自然数)の実行対象アプリケーションを有する実行対象アプリケーション群22に関する情報としての実行対象アプリケーションデータが記録されている。アプリケーション現在状態更新ファイル23の各実行対象アプリケーションデータは、例えば、図3に示すように、アプリケーション名、アプリケーション状態、実行開始時間、実行終了時間、最終実行時間、平均実行時間、通算動作回数、規定時間内動作回数の情報を保有する。
また、各管理対象アプリケーションが保有するアプリケーション状態は、アプリケーションの様々な状態に関する情報が記録されており、例えば、図3に示すように、動作可、動作不可、実行中、異常発生中、強制終了の情報を保有する。
尚、アプリケーションサーバ計算機16,17についても、アプリケーションサーバ計算機15と同様にアプリケーション管理手段21、実行対象アプリケーション群22およびアプリケーション現在状態更新ファイル23を備える。
このように構成されるアプリケーション管理システム10では、アプリケーションサーバ計算機15,16,17で所定のアプリケーションを実行する際に、まず、アプリケーション管理手段21が管理サーバ計算機13に格納されるアプリケーション動作定義保存ファイル19を参照し、実行要求のあったアプリケーションのアプリケーション動作定義を参照する。そして、実行要求が生じたアプリケーションサーバ計算機15,16,17において、参照したアプリケーション動作定義保存ファイル19のアプリケーション管理データ、すなわち、アプリケーション動作定義に基づいて実行される。
[第1の実施形態]
図4に本発明の第1の実施形態に係るアプリケーション管理システムの一実施例であるアプリケーション管理システム10Aの構成概略を表した構成概略図を示す。
アプリケーション管理システム10Aは、実行中のアプリケーションを例えばアプリケーション単位または任意のグループ単位等の指定された単位で一斉に停止させることができるように構成されたシステムである。
アプリケーション管理システム10Aは、基本的なシステム構成であるアプリケーション管理システム10に対して、アプリケーションサーバ計算機15,16,17を備えるサーバ計算機群11の代わりにアプリケーションサーバ計算機15A,16A,17Aを備えるサーバ計算機群11Aを具備する点で相違する。しかし、その他の点については同様であり、同一または相当箇所については同一符号を付して説明を省略する。
アプリケーション管理システム10Aは、サーバ計算機群11AがLANまたはWAN等の通信ネットワーク12を介して管理サーバ計算機13と電気的に接続されるように構成される。アプリケーション管理システム10Aのサーバ計算機群11Aは、例えば、3つ等の少なくとも1以上のアプリケーションサーバ計算機15A,16A,17Aを備える。
アプリケーションサーバ計算機15Aは、図4に示すようにアプリケーションの実行を制御し管理するアプリケーション管理手段21A、少なくとも1以上のアプリケーションを有し、少なくとも1以上のグループにグループ化した実行対象アプリケーション群22Aおよびアプリケーションの現在の状態を記録し保有するアプリケーション現在状態更新ファイル23Aを備える。
アプリケーション管理手段21Aは、アプリケーションの停止要求を指定した単位、すなわち、アプリケーションまたはグループ単位で受け付け、アプリケーションの動作定義を取得するアプリケーション停止受付部25と、実行対象アプリケーション群22Aのアプリケーションをグループ単位で管理するアプリケーショングルーピング管理部26とを備える。
実行対象アプリケーション群22Aは、実行対象アプリケーション群22Aを複数のグループにグループ化したものである。アプリケーショングルーピング管理部26は、グループ化されたアプリケーションと同数あり、各アプリケーショングルーピング管理部26がグループ化されたアプリケーションの各々に対して、1対1でアプリケーションの実行を制御する。そして、アプリケーション停止受付部25が停止要求を受け付けた単位(例えば、グループ化されたグループ単位またはアプリケーション単位)で、アプリケーション停止受付部25からの停止要求を受け、受けた停止要求に合致するアプリケーションまたはグループに属する全てのアプリケーションを停止する。
図5にアプリケーション現在状態更新ファイル23Aのデータ構造の一例を説明する説明図を示す。
図5によれば、アプリケーション現在状態更新ファイル23Aは、k個(k:任意の自然数)のグループ化された実行対象アプリケーション群22Aのグループに関する情報が記録されたデータ(以下、グルーピングデータとする)を有し、各グルーピングデータには、そのグループに属するn個(n:任意の自然数)の実行対象アプリケーションに関する情報としての実行対象アプリケーションデータが記録されている。
図5に示される各実行対象アプリケーションデータも、例えば、アプリケーション名、アプリケーション状態、実行開始時間、実行終了時間、最終実行時間、平均実行時間、通算動作回数、規定時間内動作回数の情報を保有し、図3に示される各実行対象アプリケーションデータと同様に構成される。
尚、アプリケーションサーバ計算機16A,17Aについても、アプリケーションサーバ計算機15Aと同様にアプリケーション管理手段21A、実行対象アプリケーション群22Aおよびアプリケーション現在状態更新ファイル23Aを備える。
このように構成されるアプリケーション管理システム10Aでは、アプリケーションサーバ計算機15A,16A,17Aで所定のアプリケーションを実行し、実行中のアプリケーションを停止する場合、すなわち、アプリケーション管理手段21Aにアプリケーションの停止要求が入力された場合、本発明に係るアプリケーション管理方法を用いてアプリケーションを停止するアプリケーション停止手順を実行する。
図6にアプリケーション管理システム10Aが本発明に係るアプリケーション管理方法としてアプリケーションを停止するアプリケーション停止手順について説明する説明図(処理フロー図)を示す。
図6に示すアプリケーション停止手順は、アプリケーションの停止要求を受け付けて認識し停止要求の内容を判断するアプリケーション停止要求判断行程(ステップS1〜ステップS3)と、このアプリケーション停止要求判断行程で判断したアプリケーションを一斉に停止するアプリケーション停止行程(ステップS4)と、アプリケーション現在状態情報としてのアプリケーション現在状態更新ファイル23Aを更新するアプリケーション現在状態情報更新行程(ステップS5)とを具備する。
アプリケーション停止要求判断行程は、アプリケーションの停止要求を受け付け認識するアプリケーション停止要求認識ステップ(ステップS1)と、アプリケーション動作定義保存ファイル19を参照し、アプリケーション動作定義を取得するアプリケーション動作定義取得ステップ(ステップS2)と、取得したアプリケーション動作定義からアプリケーション停止要求の内容を判断するアプリケーション停止要求内容判断ステップ(ステップS3)とを備える。
このようなアプリケーション停止手順では、最初にアプリケーション停止要求判断行程がなされ、アプリケーション停止要求判断行程で、まず、ステップS1のアプリケーション停止要求認識ステップがなされる。
アプリケーション停止要求認識ステップ(ステップS1)では、アプリケーション管理手段21Aのアプリケーション停止受付部25がアプリケーションの停止要求の有無を判断する。アプリケーションの停止要求があった場合(ステップS1でYESの場合)、ステップS2に進む。そして、ステップS2でアプリケーション動作定義取得ステップがなされる。
アプリケーション動作定義取得ステップ(ステップS2)では、アプリケーション停止要求認識ステップで停止要求を認識したアプリケーション停止受付部25が管理サーバ計算機13に格納されるアプリケーション動作定義保存ファイル19を参照し、アプリケーション動作定義保存ファイル19に記録されるアプリケーション動作定義を取得する。アプリケーション停止受付部25がアプリケーション動作定義を取得すると、アプリケーション動作定義取得ステップは完了し、続いてステップS3に進む。そして、ステップS3でアプリケーション停止要求内容判断ステップがなされる。
アプリケーション停止要求内容判断ステップ(ステップS3)では、アプリケーション停止受付部25が停止要求の内容として停止要求のあったアプリケーションまたはグループを判断し、停止要求を実行するアプリケーショングルーピング管理部26を判断する。
アプリケーションの停止要求は、実行対象アプリケーション群22Aが有するアプリケーション単位またはグループ単位でなされる。アプリケーション停止受付部25は、停止要求がアプリケーション単位またはグループ単位なのかを判断し、停止要求を実行するアプリケーショングルーピング管理部26を判断する。停止要求を実行するアプリケーショングルーピング管理部26の判断は、アプリケーション停止受付部25がステップS2において取得したアプリケーション動作定義に基づいて判断がなされる。
アプリケーション停止受付部25が取得したアプリケーション動作定義に基づき停止要求の内容として停止要求のあったアプリケーションまたはグループを判断し、停止要求を実行するアプリケーショングルーピング管理部26を判断すると、アプリケーション停止要求内容判断ステップは完了する。そして、アプリケーション停止要求内容判断ステップの完了をもってアプリケーション停止要求判断行程は完了する。
アプリケーション停止要求判断行程が完了すると、次に、ステップS4に進み、ステップS4でアプリケーション停止行程がなされる。
アプリケーション停止行程(ステップS4)では、停止要求があったアプリケーションサーバ計算機15,16,17において、参照したアプリケーション動作定義保存ファイル19のアプリケーション管理データ、すなわち、アプリケーション動作定義に基づいて停止が実行される。
アプリケーション動作定義に基づいて停止処理の実行は、まず、アプリケーション停止受付部25が停止要求のあったアプリケーションに属するグループまたは停止要求のあったグループのアプリケーションを管理するアプリケーショングルーピング管理部26に停止要求を出力する。そして、アプリケーショングルーピング管理部26に停止要求が入力されると、アプリケーショングルーピング管理部26は、停止要求のあった所定のアプリケーションまたはグループに属する全てのアプリケーションを停止する。
アプリケーショングルーピング管理部26が停止要求のあった所定のアプリケーションまたはグループに属する全てのアプリケーションを停止すると、アプリケーション停止行程は完了する。アプリケーション停止行程が完了すると、次にステップS5に進み、ステップS5でアプリケーション現在状態情報更新行程がなされる。
アプリケーション現在状態情報更新行程(ステップS5)では、アプリケーショングルーピング管理部26が、停止したアプリケーションの状態をアプリケーション現在状態更新ファイル23Aに記録し、アプリケーション現在状態更新ファイル23Aのファイル内容を更新する。アプリケーション現在状態更新ファイル23Aは、更新されたファイル内容で保存される。
アプリケーション現在状態更新ファイル23Aのファイル内容が更新され保存されると、アプリケーション現在状態情報更新行程は完了する。そして、アプリケーション現在状態情報更新行程の完了をもってアプリケーション停止手順は完了する(END)。
一方、アプリケーション管理手段21Aのアプリケーション停止受付部25がアプリケーションの停止要求の有無を判断し、アプリケーションの停止要求がない場合(ステップS1でNOの場合)、ステップS1に戻り、ステップS1以降の処理ステップを繰り返す。
本発明の第1の実施形態に係るアプリケーション管理システムとしてのアプリケーション管理システム10A、本発明の第1の実施形態に係るアプリケーション管理方法としてのアプリケーション停止手順およびその管理方法(アプリケーション停止手順)を実行させるためのプログラムによれば、アプリケーションサーバ計算機15A,16A,17Aで実行中の所定のアプリケーションを停止する場合、複数のアプリケーションに対して停止要求があっても、停止要求のあったアプリケーションのグループ名を指定することにより、指定されたグループに属するアプリケーションを一斉に停止することができる。従って、停止させたいアプリケーションが複数あり同じグループに属する場合、各々のアプリケーション名を指定する必要がなく、アプリケーション停止の際の省力化を実現することができる。
アプリケーション停止の際の省力化の効果は、アプリケーション群22Aが有するアプリケーションの数が多い程大きくなる傾向があり、多数のアプリケーションを管理する必要がある場合により効果的となる。
[第2の実施形態]
図7に本発明の第2の実施形態に係るアプリケーション管理システムの一実施例であるアプリケーション管理システム10Bの構成概略を表した構成概略図を示す。
アプリケーション管理システム10Bは、アプリケーションを実行して異常が検出された場合、異常が発生したアプリケーションによるリカバリー実施等の後処理ができるように構成されたシステムである。
アプリケーション管理システム10Bは、基本的なシステム構成であるアプリケーション管理システム10に対して、アプリケーションサーバ計算機15,16,17を備えるサーバ計算機群11の代わりにアプリケーションサーバ計算機15B,16B,17Bを備えるサーバ計算機群11Bを具備する点で相違する。しかし、その他の点については同様であり、同一または相当箇所については同一符号を付して説明を省略する。
アプリケーション管理システム10Bは、サーバ計算機群11BがLANまたはWAN等の通信ネットワーク12を介して管理サーバ計算機13と電気的に接続されて構成される。アプリケーション管理システム10Bのサーバ計算機群11Bは、例えば、3つ等の少なくとも1以上のアプリケーションサーバ計算機15B,16B,17Bを備える。
アプリケーションサーバ計算機15Bは、図7に示すようにアプリケーションの実行を制御し管理するアプリケーション管理手段21B、少なくとも1以上の実行可能なアプリケーションを有する実行対象アプリケーション群22およびアプリケーションの現在の状態を記録し保有するアプリケーション現在状態更新ファイル23を備え、さらに、アプリケーション動作の異常を検出するアプリケーション異常検出手段28と、異常発生時の後処理実行用の後処理アプリケーション29とを備える。
アプリケーション管理手段21Bは、実行要求のあったアプリケーションの実行を制御し管理するアプリケーション管理部30と、異常が発生し実行要求したアプリケーションが再実行できない場合に後処理アプリケーション29を実行して適切な後処理を実行する後処理実行部31とを備える。
アプリケーション管理手段21Bの処理内容は、アプリケーション管理部30が実行要求のあったアプリケーションの実行を制御し管理する点でアプリケーション管理手段21の処理内容と基本的に同質である。しかし、アプリケーション管理手段21Bは、アプリケーション管理手段21に対して後処理実行部31をさらに備えるため、アプリケーション管理手段21の処理内容に加え、後処理の実行および管理を行う点で異なる。
アプリケーション異常検出手段28は、アプリケーション実行の異常終了が発生した場合、異常終了したアプリケーションから出力される異常終了後の後処理の実行要求(以下、後処理実行要求とする)を受信して検出する。そして、後処理実行要求を受信して検出すると、アプリケーション現在状態更新ファイル23に記録されるアプリケーション現在状態情報を「異常発生中」に更新し保存するとともにアプリケーション管理手段21Bのアプリケーション管理部30に後処理実行要求を出力する。
アプリケーション管理部30は、アプリケーション管理手段21が行う通常のアプリケーションの実行制御および管理処理に加え、異常終了が発生した場合に実行される後処理アプリケーション29を実行する後処理実行部31の制御及び管理を行う。アプリケーション管理部30は、アプリケーション異常検出手段28から後処理実行要求を受け取り、受け取った後処理実行要求を後処理実行部31に渡す。
後処理実行部31は、後処理実行要求を受け取ると、管理対象のアプリケーションが異常終了した際にリカバリー的に行う後処理を適切に実行するべく後処理アプリケーション29を実行する。尚、後処理を適切に実行とは、異常終了が発生した管理対象のアプリケーションに応じ、余計な負荷をアプリケーション管理システム10Bにかけないようにしてシステムに与える悪影響を最小限に抑える後処理を選択することを意味する。
後処理実行部31が後処理アプリケーション29を実行することでなされる後処理の処理内容は、異常終了が発生した管理対象のアプリケーションが何かによって異なるが、例えば、外部計算機に異常発生を通知したり、実行中のデータをデータファイルとして記録したりする処理操作がある。ここで、「外部計算機」とは、異常が発生したアプリケーションが所属するアプリケーションサーバ計算機(アプリケーションサーバ計算機15B)以外の通信ネットワーク12と電気的に接続され、アプリケーションサーバ計算機15Bへの接続が許可された電子計算機をいい、図7において図示されていない電子計算機をも包含する。
尚、アプリケーションサーバ計算機16B,17Bについても、アプリケーションサーバ計算機15Bと同様であり、アプリケーションサーバ計算機16B,17Bは、アプリケーション管理手段21B、実行対象アプリケーション群22、アプリケーション現在状態更新ファイル23、アプリケーション異常検出手段28を備える。また、アプリケーション管理手段21Bには、後処理実行部31が備えられる。
このように構成されるアプリケーション管理システム10Bでは、アプリケーションサーバ計算機15B,16B,17Bが、アプリケーションの異常終了が発生した場合、本発明に係るアプリケーション管理方法を用いて適切な後処理を実行するアプリケーション後処理実行手順アプリケーションを実行する。
図8にアプリケーション管理システム10Bが本発明に係るアプリケーション管理方法を用いてアプリケーションの異常終了時に後処理を実行するアプリケーション後処理実行手順について説明する説明図(処理フロー図)を示す。
アプリケーション後処理実行手順は、アプリケーションサーバ計算機15B,16B,17Bのアプリケーション管理手段21Bが管理する管理対象アプリケーション群22のうち実行中のアプリケーションで異常が発生して終了した場合において、アプリケーションを再実行したり、アプリケーション現在状態を「動作不可」としたりする後処理を実行する処理手順である。
図8によれば、アプリケーション後処理実行手順は、アプリケーションの異常終了を認識し、後処理の実行要求を行うアプリケーション異常認識行程(ステップS11〜ステップS12)と、認識した異常に対する後処理をアプリケーション管理手段21Bが実行する後処理実行行程(ステップS13〜ステップS15)と、アプリケーション管理手段21Bが後処理後のアプリケーション現在状態情報を認識しアプリケーション現在状態情報としてのアプリケーション現在状態更新ファイル23を更新する後処理後アプリケーション状態情報更新行程(ステップS17)とを具備する。
アプリケーション後処理実行手順におけるアプリケーション異常認識行程(ステップS11〜ステップS12)は、異常終了したアプリケーションを検出するアプリケーション異常検出ステップ(ステップS11)と、アプリケーション現在状態更新ファイル23に記録されるアプリケーション現在状態情報を「異常発生中」に更新して異常状態発生を記録するアプリケーション異常状態記録ステップ(ステップS12)とを備える。
また、後処理実行行程(ステップS13〜ステップS16)は、外部計算機に異常発生中を通知する異常発生通知ステップ(ステップS13)と、管理サーバ計算機13に格納されるアプリケーション動作定義保存ファイル19を参照し、アプリケーション動作定義を取得するアプリケーション動作定義取得ステップ(ステップS14)と、アプリケーション動作定義取得ステップで取得したアプリケーション動作定義に基づき、所定の後処理パターンを認識する後処理パターン認識ステップ(ステップS15)と、後処理パターン認識ステップで認識した後処理パターンに基づき後処理を実行する認識後処理実行ステップ(ステップS16)とを備える。
このようなアプリケーション後処理実行手順では、最初にアプリケーション異常認識行程がなされ、このアプリケーション異常認識行程において、まず、ステップS11のアプリケーション異常検出ステップがなされる。
アプリケーション異常認識行程のアプリケーション異常検出ステップ(ステップS11)では、アプリケーション異常検出手段28がアプリケーション実行の異常終了が発生した場合、異常終了したアプリケーションから出力される異常終了後の後処理の実行要求を受信して、管理対象であるアプリケーションで発生した異常終了を検出する。アプリケーション異常検出手段28が管理対象であるアプリケーションで発生した異常終了を検出した場合(ステップS11でYESの場合)、アプリケーション異常検出ステップを完了し、続いて、ステップS12でアプリケーション異常状態記録ステップがなされる。
アプリケーション異常状態記録ステップ(ステップS12)では、ステップS11のアプリケーション異常検出ステップにおいて、アプリケーション異常検出手段28が異常終了したアプリケーションから受け取った後処理の実行要求をアプリケーション管理手段21Bのアプリケーション管理部30に渡し、受け取ったアプリケーション管理部30がアプリケーション現在状態更新ファイル23に記録されるアプリケーション現在状態情報を「異常発生中」に更新してアプリケーションの動作異常発生中を記録する。
アプリケーション管理部30がアプリケーション現在状態更新ファイル23に記録されるアプリケーション現在状態情報を「異常発生中」に更新すると、アプリケーション異常状態記録ステップは完了し、アプリケーション異常状態記録ステップ完了をもってアプリケーション異常認識行程を完了する。アプリケーション異常認識行程が完了すると、次に、ステップS13に進み、後処理実行行程(ステップS13〜ステップS16)がなされる。
後処理実行行程では、まず、ステップS13で異常発生通知ステップがなされる。異常発生通知ステップ(ステップS13)では、アプリケーション異常検出手段28が管理対象であるアプリケーションで発生した異常終了を検出すると、外部計算機に異常発生中を通知する。
アプリケーション異常検出手段28が外部計算機に異常発生中を通知すると、異常発生通知ステップを完了し、続いてステップS14に進む。そして、ステップS14でアプリケーション動作定義取得ステップがなされる。
アプリケーション動作定義取得ステップ(ステップS14)では、アプリケーション管理手段21Bのアプリケーション管理部30が管理サーバ計算機13に格納されるアプリケーション動作定義保存ファイル19を参照し、アプリケーション動作定義を取得する。アプリケーション動作定義を取得すると、アプリケーション動作定義取得ステップは完了し、続いてステップS15に進む。そして、ステップS15で後処理パターン認識ステップがなされる。
後処理パターン認識ステップ(ステップS15)では、アプリケーション動作定義取得ステップで取得したアプリケーション動作定義に基づき、アプリケーション管理手段21Bのアプリケーション管理部30が後処理パターンを認識する。そして、アプリケーション管理部30が実行すべき後処理を認識すると、後処理パターン認識ステップは完了し、続いてステップS16に進む。そして、ステップS16で認識後処理実行ステップがなされる。
認識後処理実行ステップ(ステップS16)では、後処理パターン認識ステップでアプリケーション管理部30が認識した後処理を後処理実行部31が実行する。後処理パターン認識ステップで認識された後処理を後処理実行部31が実行し後処理が完了すると、認識後処理実行ステップは完了し、認識後処理実行ステップの完了をもって、後処理実行行程は完了する。後処理実行行程が完了すると、次に、ステップS17に進み、ステップS17で後処理後アプリケーション状態情報更新行程がなされる。
後処理後アプリケーション状態情報更新行程(ステップS17)では、アプリケーション管理手段21Bのアプリケーション管理部30が後処理実行行程後のアプリケーション現在状態情報を認識し、アプリケーション現在状態更新ファイル23を更新する。アプリケーション現在状態情報は、後処理実行部31が実行する後処理の内容およびその処理結果の如何によって異なってくる。例えば、異常終了したアプリケーションの再実行を試みて再実行できた場合、アプリケーション現在状態は「動作可」となるし、異常終了したアプリケーションの再実行を試みたが上手く行かなかった場合、アプリケーション現在状態は、「動作不可」となる。
アプリケーション管理手段21Bが、後処理実行行程後のアプリケーション現在状態情報を認識し、アプリケーション現在状態更新ファイル23を更新すると、後処理後アプリケーション状態情報更新行程は完了する。そして、後処理後アプリケーション状態情報更新行程は完了をもって、アプリケーション後処理実行手順を完了する(END)。
一方、アプリケーション異常検出手段28が管理対象であるアプリケーションで異常終了が発生しておらず、異常終了を検出していない場合、(ステップS11でNOの場合)、ステップS11に進み、ステップS11以降の処理ステップを繰り返す。
尚、アプリケーション後処理実行手順において、異常発生通知ステップ(ステップS13)は、後処理実行行程の最初の処理ステップとして実行されているが、必ずしも後処理実行行程で実行されなくても良い。異常検出ステップ(ステップS11)がなされた後であれば、いつでも良い。つまり、アプリケーション異常認識行程においてなされても良く、例えば、アプリケーション異常状態記録ステップ(ステップS12)の前でも後でも構わない。また、異常発生通知ステップ(ステップS13)は、認識後処理実行ステップ(ステップS16)でなされる後処理の一部として包含されていても構わない。
本発明の第2の実施形態に係るアプリケーション管理システムとしてのアプリケーション管理システム10B、本発明の第2の実施形態に係るアプリケーション管理方法としてのアプリケーション後処理実行手順およびその管理方法(アプリケーション後処理実行手順)を実行させるためのプログラムによれば、アプリケーション異常検出手段28がアプリケーションの動作異常の検出を行うことにより、異常が発生したアプリケーションのリカバリーをアプリケーションの動作定義に従って実施することができる。
この時、再実行によるリカバリーが不要または不可である場合には、異常が発生したアプリケーションの動作を禁止して動作させないので、アプリケーション管理システム10Bの他のアプリケーションに対する悪影響を最小限に食い止めることができる。
また、後処理実行アプリケーション29が起動することにより、異常が発生したアプリケーションが属するアプリケーションサーバ計算機からアプリケーションの動作異常の発生を通信ネットワーク12を介して電気的に接続される外部計算機に通知することができるので、外部計算機からの無用な接続を防止するとともに、より適切なリカバリーを実施することができる。
[第3の実施形態]
図9に本発明の第3の実施形態に係るアプリケーション管理システムの一実施例であるアプリケーション管理システム10Cの構成概略を表した構成概略図を示す。
アプリケーション管理システム10Cは、現在、実行中の管理対象アプリケーションの処理操作を一旦中断し、規定周期時間以外の任意時間後に再開すること(以下、動的起動とする)ができるように構成されたシステムである。
アプリケーション管理システム10Cは、基本的なシステム構成であるアプリケーション管理システム10に対して、アプリケーションサーバ計算機15C,16C,17Cを備えるサーバ計算機群11Cを具備する点で相違する。しかし、その他の点については同様であり、同一または相当箇所については同一符号を付して説明を省略する。
アプリケーション管理システム10Cは、サーバ計算機群11CがLANまたはWAN等の通信ネットワーク12を介して管理サーバ計算機13と電気的に接続されて構成される。アプリケーション管理システム10Cのサーバ計算機群11Cは、例えば、3つ等の少なくとも1以上のアプリケーションサーバ計算機15C,16C,17Cを備える。
アプリケーションサーバ計算機15Cは、図9に示すようにアプリケーションの実行を制御し管理するアプリケーション管理手段21C、少なくとも1以上の実行可能なアプリケーションを有する実行対象アプリケーション群22およびアプリケーションの現在の状態を記録し保有するアプリケーション現在状態更新ファイル23を備え、さらに、OS(Operating System)のタイマを管理するOSタイマ管理手段33を備える。
アプリケーション管理手段21Cは、アプリケーション管理部30と、中断処理を行うアプリケーションの処理実行再開時刻となる次回起動時刻をOSタイマ管理手段33に通知する次回起動時刻通知部34とを備える。アプリケーション管理手段21Cの次回起動時刻通知部34は、ユーザの入力操作等から中断処理を行うアプリケーションの次回起動時刻を認識し、認識した次回起動時刻をOSタイマ管理手段33に通知する。
OSタイマ管理手段33は、アプリケーションサーバ計算機15C,16C,17Cのそれぞれが有するOSのタイマを管理しており、現在時刻を認識するとともにアプリケーション管理手段21Cの次回起動時刻通知部34から次回起動時刻を受け取る。OSタイマ管理手段33は、アプリケーションサーバ計算機15C,16C,17Cのそれぞれが有するOSのタイマの管理として、現在時刻と次回起動時刻通知部34から受け取った次回起動時刻とを認識し比較を行う。そして、現在時刻と次回起動時刻とが同じ時刻になると、中断処理されていたアプリケーションの実行を再開する。
尚、アプリケーションサーバ計算機16C,17Cについても、アプリケーションサーバ計算機15Cと同様であり、アプリケーションサーバ計算機16C,17Cは、アプリケーション管理手段21C、実行対象アプリケーション群22、アプリケーション現在状態更新ファイル23、OSタイマ管理手段33を備える。また、アプリケーション管理手段21Cは、アプリケーション管理部30と、次回起動時刻通知部34とを備える。
このように構成されるアプリケーション管理システム10Cでは、アプリケーションサーバ計算機15C,16C,17Cで所定のアプリケーションを実行し、現在、実行中の管理対象アプリケーションの処理操作を一旦中断し、規定周期時間以外の任意時間後に再開するアプリケーション動的起動手順を実行することができる。
図10にアプリケーション管理システム10Cが本発明に係るアプリケーション管理方法として実行中の管理対象アプリケーションの処理操作を一旦中断し、任意時間後に処理操作を再開するアプリケーション動的起動手順について説明する説明図(処理フロー図)を示す。
図10によれば、アプリケーション動的起動手順は、実行中のアプリケーションの中断要求および再開時刻(次回起動時刻)を認識する実行アプリケーション中断処理認識行程(ステップS21〜ステップS22)と、認識したアプリケーション中断要求内容に基づき実行中のアプリケーションを中断する実行アプリケーション中断処理行程(ステップS23〜ステップS25)と、アプリケーションの実行処理を再開するまでの時間を監視するアプリケーション中断時間監視行程(ステップS26〜ステップS27)と、中断したアプリケーションの実行処理を再開するアプリケーション実行再開行程(ステップS28〜ステップS30)とを具備する。
アプリケーション動的起動手順のアプリケーション中断処理認識行程(ステップS21〜ステップS22)は、アプリケーション管理手段21Cが実行中のアプリケーションの中断要求を受け取り認識するアプリケーション中断要求認識ステップ(ステップS21)と、アプリケーション管理手段21Cが実行処理を中断するアプリケーションの実行処理を再開する時刻の情報を受け取り認識するアプリケーション再開時刻認識ステップ(ステップS22)とを備える。
アプリケーション中断処理実行行程(ステップS23〜ステップS25)は、アプリケーション管理手段21Cが実行中のアプリケーションに対して終了要求するアプリケーション終了要求ステップ(ステップS23)と、アプリケーション終了要求ステップで終了要求したアプリケーションの実行処理を終了し、アプリケーション管理手段21Cに対して通知される実行処理終了通知を受け取り認識するアプリケーション実行終了認識ステップ(ステップS24)と、アプリケーション実行終了認識ステップで認識したアプリケーション現在状態情報をアプリケーション現在状態更新ファイル23に記録し更新するアプリケーション現在状態情報更新ステップ(ステップS25)とを備える。
アプリケーション中断時間監視行程(ステップS26〜ステップS27)は、アプリケーション中断処理実行行程の完了を受けて、OSタイマ管理手段33がアプリケーション管理手段21Cから再開する時刻の通知を受け取るアプリケーション実行再開時刻通知ステップ(ステップS26)と、OSタイマ管理手段33が現在時刻とアプリケーション実行再開時刻とを比較してタイマ管理するタイマ管理ステップ(ステップS27)とを備える。
アプリケーション実行再開行程(ステップS28〜ステップS30)は、アプリケーション実行再開時刻になると、アプリケーション管理手段21Cがアプリケーション中断処理の解除要求を受け取ってアプリケーションの中断を解除するアプリケーション中断解除ステップ(ステップS28)と、実行処理を中断していたアプリケーションについてアプリケーション管理手段21Cが実行処理の再開を認識するアプリケーション実行再開認識ステップ(ステップS29)と、アプリケーション管理手段21Cがアプリケーション現在状態更新ファイル23に記録されるアプリケーション現在状態情報を「実行中」に更新するアプリケーション現在状態情報更新ステップ(ステップS30)とを備える。
このようなアプリケーション動的起動手順では、最初にアプリケーション中断処理認識行程がなされ、このアプリケーション中断処理認識行程では、まず、アプリケーション中断要求認識ステップがなされる。
アプリケーション中断要求認識ステップ(ステップS21)では、実行中のアプリケーションに対して中断要求があった場合、アプリケーション管理手段21Cのアプリケーション管理部30が中断要求を受け取り認識する。尚、実行中のアプリケーションは、アプリケーション管理手段21Cが管理可能なアプリケーションであり、管理対象アプリケーション群22を構成する任意のアプリケーションである。
アプリケーション管理部30が実行中のアプリケーションに対する中断要求を受け取り認識した場合(ステップS21でYESの場合)、アプリケーション中断要求認識ステップを完了し、続いて、ステップS22でアプリケーション再開時刻認識ステップがなされる。
アプリケーション再開時刻認識ステップ(ステップS22)では、ステップS21で中断要求を認識したアプリケーションについて実行処理を再開する時刻の情報をアプリケーション管理部30が受け取り認識する。アプリケーションの実行処理を再開する時刻は、管理対象アプリケーションを中断(終了)する際に、アプリケーションの次回起動時刻を任意に設定することで行う。アプリケーションの次回起動時刻の設定は、例えば、2003年11月11日、午前8時00分等の時刻をユーザが設定することで行う。
アプリケーション管理部30が実行処理を再開する時刻の情報を受け取り認識すると、アプリケーション再開時刻認識ステップは完了し、アプリケーション再開時刻認識ステップの完了をもってアプリケーション中断処理認識行程は完了する。アプリケーション中断処理認識行程が完了すると、ステップS23に進み、ステップS23以降でアプリケーション中断処理実行行程(ステップS23〜ステップS25)がなされる。
アプリケーション中断処理実行行程(ステップS23〜ステップS25)では、まず、アプリケーション終了要求ステップ(ステップS23)がなされる。アプリケーション終了要求ステップでは、アプリケーション中断処理認識行程において認識した中断処理要求に基づいてアプリケーション管理手段21Cのアプリケーション管理部30が実行中のアプリケーションに終了を要求する。
アプリケーション管理部30が実行中のアプリケーションに対してアプリケーションの終了を要求すると、アプリケーション終了要求ステップは完了し、続いてステップS24でアプリケーション実行終了認識ステップがなされる。
アプリケーション実行終了認識ステップ(ステップS24)では、アプリケーション管理部30が実行処理を終了したアプリケーションから実行処理終了通知を受け取り認識する。アプリケーション管理部30が実行処理を終了したアプリケーションから実行処理終了通知を受け取り認識すると、アプリケーション実行終了認識ステップを完了し、続いてステップS25でアプリケーション現在状態情報更新ステップがなされる。
アプリケーション現在状態情報更新ステップ(ステップS25)では、アプリケーション管理部30がアプリケーション実行終了認識ステップで認識したアプリケーション現在状態情報をアプリケーション現在状態更新ファイル23に記録し更新する。アプリケーション管理部30がアプリケーション現在状態更新ファイル23を更新すると、アプリケーション現在状態情報更新ステップは完了し、アプリケーション現在状態情報更新ステップの完了をもってアプリケーション中断処理実行行程も完了する。
アプリケーション中断処理実行行程が完了すると、次に、ステップS26に進み、ステップS26以降でアプリケーション中断時間監視行程(ステップS26〜ステップS27)がなされる。アプリケーション中断時間監視行程では、まず、ステップS26でアプリケーション実行再開時刻通知ステップがなされる。
アプリケーション中断時間監視行程のアプリケーション実行再開時刻通知ステップ(ステップS26)では、まず、アプリケーション管理手段21Cの次回起動時刻通知部34が、アプリケーション中断処理認識行程で認識したアプリケーション実行処理の再開時刻をアプリケーション管理部30から受け取る。そして、受け取ったアプリケーション実行処理の再開時刻をOSタイマ管理手段33に通知する。
アプリケーション管理手段21Cの次回起動時刻通知部34がアプリケーション実行処理を再開する時刻、すなわち、アプリケーションの次回起動時刻をOSタイマ管理手段33に通知し、通知先のOSタイマ管理手段33が受け取ると、アプリケーション実行再開時刻通知ステップを完了し、続いてステップS27でタイマ管理ステップがなされる。
タイマ管理ステップ(ステップS27)では、まず、アプリケーション実行再開時刻通知ステップでアプリケーション管理手段21Cからアプリケーションの実行処理を再開する時刻の通知を受けたOSタイマ管理手段33が、中断処理するアプリケーションの実行処理の再開時刻の情報を受け取り認識する。次に、OSタイマ管理手段33は、認識したアプリケーションの実行処理の再開時刻と現在時刻との差を確認する。
OSタイマ管理手段33がアプリケーション実行処理の再開時刻および現在時刻の差が0、すなわち、現在時刻とアプリケーション実行処理の再開時刻とが一致すると、OSタイマ管理手段33は、管理対象アプリケーション群22にある中断処理中のアプリケーションに対して中断処理の解除要求を行う。
OSタイマ管理手段33がアプリケーション中断処理の解除要求を行うと、タイマ管理ステップを完了し、このタイマ管理ステップの完了をもって、アプリケーション中断時間監視行程も完了する。アプリケーション中断時間監視行程が完了すると、次はステップS28に進み、ステップS28以降でアプリケーション実行再開行程がなされる。
アプリケーション実行再開行程(ステップS28〜ステップS30)では、まず、ステップS28でアプリケーション中断解除ステップがなされる。アプリケーション中断解除ステップ(ステップS28)では、アプリケーション実行再開時刻となってOSタイマ管理手段33からアプリケーション中断処理の解除要求をアプリケーション管理手段21Cのアプリケーション管理部30が受け取って、実行処理を中断していた管理対象アプリケーション群22内のアプリケーションに対して中断処理の解除要求を行う。
アプリケーション管理部30が実行処理を中断していたアプリケーションに対して中断処理の解除要求を行うと、中断処理の解除要求を受け取ったアプリケーションは、中断処理を解除し、実行状態に戻る。また、アプリケーション管理部30が実行処理を中断していたアプリケーションに対して中断処理の解除要求を行うと、アプリケーション中断解除ステップは完了し、続いてステップS29でアプリケーション実行再開認識ステップがなされる。
アプリケーション実行再開認識ステップ(ステップS29)では、アプリケーション管理手段21Cが実行処理を中断していたアプリケーションの実行処理再開を認識する。実行処理を中断していたアプリケーションは、実行処理を再開すると、実行処理開始通知をアプリケーション管理手段21Cに通知する。アプリケーション管理手段21Cでは、アプリケーション管理部30がアプリケーションからの実行処理開始通知を受け取ることでアプリケーションの実行処理再開を認識することができる。
アプリケーション管理手段21Cのアプリケーション管理部30がアプリケーションからの実行処理開始通知を受け取り、アプリケーションの実行処理再開を認識すると、アプリケーション実行再開認識ステップは完了する。そして、ステップS30に進み、ステップS30でアプリケーション現在状態情報更新ステップがなされる。アプリケーション現在状態情報更新ステップ(ステップS30)では、アプリケーション管理手段21Cのアプリケーション管理部30がアプリケーション現在状態更新ファイル23に記録されるアプリケーション現在状態情報を「実行中」に更新する。
アプリケーション管理部30がアプリケーション現在状態更新ファイル23に記録されるアプリケーション現在状態情報を「実行中」に更新すると、アプリケーション現在状態情報更新ステップは完了する。そして、アプリケーション現在状態情報更新ステップの完了をもってアプリケーション実行再開行程は完了し、アプリケーション動的起動手順を完了する(END)。
一方、アプリケーション中断処理認識行程のアプリケーション中断要求認識ステップ(ステップS21)において、アプリケーション管理部30が実行中のアプリケーションに対する中断要求を受け取っていない等で実行中のアプリケーションに対する中断要求を認識しない場合(ステップS21でNOの場合)、ステップS21に進み、ステップS21以降の処理ステップを繰り返す。
本発明の第3の実施形態に係るアプリケーション管理システムとしてのアプリケーション管理システム10C、本発明の第3の実施形態に係るアプリケーション管理方法としてのアプリケーション動的起動手順およびその管理方法(アプリケーション動的起動手順)を実行させるためのプログラムによれば、アプリケーションサーバ計算機15C,16C,17CのOSタイマ管理手段33が、実行処理を中断するアプリケーションの次回起動時刻の情報を受け取り、受け取った次回起動時刻と現在時刻との比較を行い時間管理することで、アプリケーションサーバ計算機15C,16C,17Cで現在、実行中の管理対象アプリケーションの処理操作を一旦中断し、規定周期時間以外の任意時間後にアプリケーションの実行処理を再開することができる。
すなわち、アプリケーションサーバ計算機15C,16C,17Cにおいて管理される管理対象アプリケーション群22の個々のアプリケーションを動的に起動させることができ、アプリケーションの動作の自由度をより高めることができる。
[第4の実施形態]
図11に本発明の第4の実施形態に係るアプリケーション管理システムの一実施例であるアプリケーション管理システム10Dの構成概略を表した構成概略図を示す。
アプリケーション管理システム10Dは、アプリケーション動作定義保存ファイル19に設定され記録される規定時間内動作回数(以下、正常限界動作回数:Ndとする)とアプリケーション現在状態更新ファイル23に記録される規定時間内動作回数(以下、現状動作回数:Ncとする)とを比較することで、アプリケーションの動作異常の有無を監視することができるように構成されたシステムである。尚、正常限界動作回数Ndは、アプリケーションが正常時の規定時間内動作回数よりも大きな値で設定される。
アプリケーション管理システム10Dは、基本的なシステム構成であるアプリケーション管理システム10に対して、アプリケーションサーバ計算機15D,16D,17Dを備えるサーバ計算機群11Dを具備する点で相違する。しかし、その他の点については同様であり、同一または相当箇所については同一符号を付して説明を省略する。
アプリケーション管理システム10Dは、サーバ計算機群11DがLANまたはWAN等の通信ネットワーク12を介して管理サーバ計算機13と電気的に接続されて構成される。アプリケーション管理システム10Dのサーバ計算機群11Dは、例えば、3つ等の少なくとも1以上のアプリケーションサーバ計算機15D,16D,17Dを備える。
アプリケーションサーバ計算機15Dは、図9に示すようにアプリケーションの実行を制御し管理するアプリケーション管理手段21D、実行対象アプリケーション群22およびアプリケーション現在状態更新ファイル23を備え、さらに、規定時間毎にアプリケーション現在状態更新ファイル23に記録される現状動作回数Ncをリセットして0にする現状動作回数リセット手段37を備える。また、アプリケーション管理手段21Dは、アプリケーション管理部30と、規定時間内動作回数と設定動作回数とを比較する動作回数比較部38とを備える。
現状動作回数リセット手段37は、ある任意の規定時間毎に現状動作回数Ncをリセット(Nc=0)し、アプリケーション現状状態更新ファイル23に記録される規定時間内動作回数を0に更新する。規定時間毎にリセットされる現状動作回数Ncは、規定時間内において、アプリケーションが終了されるたびに元の現状動作回数に1が加えられる。従って、Ncは規定時間経過直前に最大値をとるが、アプリケーションが正常時には、Ncの最大値がNdよりも大きくなることはない。
動作回数比較部38は、実行要求したアプリケーションは「正常」と判定した場合、実行要求のあったアプリケーションに実行要求する。一方、実行要求したアプリケーションは「異常」と判定した場合、異常があった旨をアプリケーション管理部30に伝え、アプリケーションサーバ計算機群11の各アプリケーションサーバ計算機15D,16D,17Dに通知する。
尚、アプリケーションサーバ計算機16D,17Dについても、アプリケーションサーバ計算機15Dと同様であり、アプリケーションサーバ計算機16D,17Dは、アプリケーション管理手段21D、実行対象アプリケーション群22、アプリケーション現在状態更新ファイル23および現状動作回数リセット手段37を備える。また、アプリケーション管理手段21Dは、アプリケーション管理部30と動作回数比較部38とを備える。
このように構成されるアプリケーション管理システム10Dでは、アプリケーションサーバ計算機15D,16D,17Dが管理対象アプリケーション群22内の管理対象アプリケーションの実行要求を受け付けた場合、実行要求を受け付けたアプリケーションサーバ計算機(ここでは、アプリケーションサーバ計算機15Dとする)は、本発明に係るアプリケーション管理方法を用いてアプリケーションの動作異常の有無を監視するアプリケーション異常監視手順を実行する。
アプリケーション異常監視手順では、アプリケーションの動作異常時において生じる一現象としてアプリケーションの実行が多発する点に着目し、アプリケーション起動時に規定時間内の実行回数をチェックする。そして、アプリケーションの規定時間内動作回数(現状動作回数Nc)と設定された正常時の規定時間内動作回数(正常限界動作回数Nd)とを比較して正常または異常かを判定する。
図12にアプリケーション管理システム10Dが本発明に係るアプリケーション管理方法としてのアプリケーション異常監視手順について説明する説明図(処理フロー図)を示す。
アプリケーション異常監視手順とは、アプリケーション管理手段21Dが管理するアプリケーション群22のアプリケーションについて異常の有無を監視する処理手順である。
図12によれば、アプリケーション異常監視手順は、実行要求したアプリケーションの動作異常の有無を判定する基礎情報を取得する異常判定基礎情報取得行程(ステップS31〜ステップS32)と、取得した基礎情報に基づきアプリケーションの動作異常の有無を判定するアプリケーション異常有無判定行程(ステップS33)と、アプリケーションの動作異常有無の判定結果に応じてアプリケーションの処理操作を選択して実行するアプリケーション処理操作選択実行行程(ステップS34〜ステップS38)とを具備する。
アプリケーション異常監視手順の異常判定基礎情報取得行程(ステップS31〜ステップS32)は、アプリケーション管理手段21Dが正常限界動作回数(Nd)の情報を取得する正常限界動作回数取得ステップ(ステップS31)と、現状動作回数(Nc)の情報を取得する現状動作回数取得ステップ(ステップS32)とを備える。
アプリケーション処理操作選択実行行程(ステップS34〜ステップS38)は、アプリケーション異常有無判定行程における判定結果が正常の場合に行う処理ステップとして、アプリケーション管理手段21Dがアプリケーションの起動処理を行うアプリケーション起動処理ステップ(ステップS34)と、現状動作回数リセット手段37が事前設定された規定時間が経過しているか否かを判断する規定時間経過判定ステップ(ステップS35)と、現状動作回数リセット手段37がアプリケーション現在状態情報の1つである規定時間内動作回数をリセットして0にする規定時間内動作回数リセットステップ(ステップS36)と備える。
一方、アプリケーション異常有無判定行程における判定結果が異常の場合に行うアプリケーション処理操作選択実行行程(ステップS34〜ステップS38)の処理ステップには、アプリケーションの動作異常の発生をサーバ計算機群11の各アプリケーションサーバ計算機15D,16D,17Dに通知するアプリケーション異常発生通知ステップ(ステップS37)と、アプリケーション現在状態情報としてのアプリケーション現在状態更新ファイル23を「動作不可」に更新してアプリケーションの起動を禁止するアプリケーション起動禁止処理ステップ(ステップS38)とを備える。
このようなアプリケーション異常監視手順では、最初に異常判定基礎情報取得行程がなされる。そして、この異常判定基礎情報取得行程では、まず、ステップS31で正常限界動作回数取得ステップがなされる。
異常判定基礎情報取得行程の正常限界動作回数取得ステップ(ステップS31)では、アプリケーション管理手段21Dの動作回数比較部38が管理サーバ計算機13に格納されるアプリケーション動作定義保存ファイル19を参照し、正常限界動作回数Ndの情報を取得する。動作回数比較部38が正常限界動作回数Ndの情報を取得すると、正常限界動作回数取得ステップを完了し、続いて、ステップS32で現状動作回数取得ステップがなされる。
現状動作回数取得ステップ(ステップS32)では、動作回数比較部38がアプリケーション現在状態更新ファイル23を参照し、現状動作回数Ncの情報を取得する。動作回数比較部38が現状動作回数Ncの情報を取得すると、現状動作回数取得ステップを完了する。そして、現状動作回数取得ステップの完了をもって、異常判定基礎情報取得行程も完了する。
尚、異常判定基礎情報取得行程(ステップS31〜ステップS32)においては、まず、ステップS31で正常限界動作回数取得ステップがなされ、次に、ステップS32で現状動作回数取得ステップがなされているが、両処理ステップの処理順番は逆でも良い。また、並行処理であっても構わない。いずれにせよ、両処理ステップ(ステップS31およびステップS32)が完了すると異常判定基礎情報取得行程は完了する。
異常判定基礎情報取得行程が完了すると、次に、ステップS33に進み、ステップS33でアプリケーション異常有無判定行程がなされる。アプリケーション異常有無判定行程(ステップS33)では、アプリケーション管理手段21Dの動作回数比較部38が、異常判定基礎情報取得行程で取得した基礎情報、すなわち、Nd(正常限界動作回数)およびNc(現状動作回数)の大小を比較することでアプリケーションの動作異常の有無を判定する。すなわち、以下の数式1に示す条件式が成立するか否かを判断する。
[数1]
Nd > Nc
ここに、
Nd:正常限界動作回数
Nc:現状動作回数
アプリケーション異常有無の判定基準としてNdおよびNcを用いるのは異常時において起こる一現象であるアプリケーションの起動要求が必要以上に発生する点に着目したものである。
アプリケーションが正常時には、アプリケーションが不要に起動することもなく、Ncは規定時間内ではアプリケーション実行処理を終了する際に1ずつ加算され、やがて規定時間となると、Ncは0にリセットされる。また、Ndはアプリケーションが通常に動作する際のNcの最大値よりも大きく設定されることからアプリケーションが正常時には、常に数式1の条件を満足する。従って、動作回数比較部38は、NdとNcとを比較して数式1の条件式が成立すると判断した場合、実行要求したアプリケーションを「正常」と判定する。
しかし、何らかの異常が発生し、アプリケーションの起動が必要以上になされると、Ncは不要に起動回数分だけ数字が上乗せされることとなる。そして、不要に起動する回数が所定回数を超えると、NcとNdとの大小関係は逆転し、上記数式1の関係を満足しなくなる。このように、数式1の条件式が成立しないと判断した場合、動作回数比較部38は、アプリケーションの不要な起動が所定回数以上発生しているとして、実行要求したアプリケーションを「異常」と判定する。
動作回数比較部38が実行要求したアプリケーションの動作異常の有無を確認すると、アプリケーション異常有無判定行程を完了し、次に、アプリケーション処理操作選択実行行程(ステップS34〜ステップS38)がなされる。尚、アプリケーション異常有無判定行程における判定結果の如何によって、アプリケーション処理操作選択実行行程(ステップS34〜ステップS38)でなされる処理ステップは異なる。
アプリケーション異常有無判定行程において、動作回数比較部38が実行要求したアプリケーションを「正常」と判定した場合(ステップS33でYESの場合)には、ステップS34に進み、ステップS34でアプリケーション処理操作選択実行行程のアプリケーション起動処理ステップがなされる。
アプリケーション起動処理ステップ(ステップS34)では、アプリケーション管理手段21Dのアプリケーション管理部30が実行要求のあったアプリケーションに対し、実行要求を行い、実行要求のあったアプリケーションを実行(起動)する。そして、起動したアプリケーションからは処理開始通知を受け取り、更新できる情報(アプリケーション状態、実行開始時刻)についてアプリケーション現在状態更新ファイル23を更新する。
アプリケーション管理部30が実行要求のあったアプリケーションに対し実行要求を行い、アプリケーション現在状態更新ファイル23を更新すると、アプリケーション起動処理ステップを完了し、続いてステップS35で規定時間経過判定ステップがなされる。規定時間経過判定ステップ(ステップS35)では、現状動作回数リセット手段37が前回に現状動作回数をリセットした時刻から事前設定された規定時間が経過しているか否かを判定する。
現状動作回数リセット手段37は、一種のタイマ機能を有し、事前設定された規定時間毎に現状動作回数Ncをリセットすることができる。つまり、現状動作回数リセット手段37が、現状動作回数Ncをリセットするか否かで前回に現状動作回数をリセットした時刻から事前設定された規定時間が経過しているか否かを判定することができる。
前回に現状動作回数をリセットした時刻から事前設定された規定時間が経過している場合(ステップS35でYESの場合)、ステップS36で規定時間内動作回数リセットステップがなされる。
規定時間内動作回数リセットステップ(ステップS36)では、現状動作回数リセット手段37がアプリケーション現在状態情報としてアプリケーション現状状態更新ファイル23に記録される規定時間内動作回数、すなわち、現状動作回数Ncをリセットして0に更新する。現状動作回数リセット手段37が現状動作回数Nc=0に更新すると、規定時間内動作回数リセットステップを完了する。規定時間内動作回数リセットステップを完了すると、アプリケーション処理操作選択実行行程を完了し、アプリケーション異常監視手順も完了する(END)。
一方、アプリケーション異常有無判定行程(ステップS33)において、動作回数比較部38が、NdとNcとを比較して数式1の条件式が成立しないと判断した場合には、実行要求したアプリケーションは「異常」と判定される。動作回数比較部38が実行要求したアプリケーションは「正常」と判定した場合(ステップS33でNOの場合)、ステップS37に進み、ステップS37でアプリケーション処理操作選択実行行程のアプリケーション異常発生通知ステップがなされる。
アプリケーション異常発生通知ステップ(ステップS37)では、アプリケーション管理手段21Dの動作回数比較部38がアプリケーションに異常が発生した旨をサーバ計算機群11の各アプリケーションサーバ計算機15D,16D,17Dに通知する。動作回数比較部38がアプリケーションに異常が発生した旨をサーバ計算機群11の各アプリケーションサーバ計算機15D,16D,17Dに通知すると、アプリケーション異常発生通知ステップを完了し、続いて、ステップS37でアプリケーション起動禁止処理ステップがなされる。
アプリケーション起動禁止処理ステップ(ステップS38)では、アプリケーション管理手段21Dのアプリケーション管理部30が動作回数比較部38からアプリケーションに異常が発生した旨を受け取り、アプリケーション現在状態情報としてのアプリケーション現在状態更新ファイル23を「動作不可」に更新して実行要求があったアプリケーションの起動を禁止する。アプリケーション管理部30がアプアプリケーション現在状態更新ファイル23を「動作不可」に更新すると、アプリケーション起動禁止処理ステップは完了する。アプリケーション起動禁止処理ステップが完了すると、アプリケーション処理操作選択実行行程を完了し、アプリケーション異常監視手順も完了する(END)。
他方、前回に現状動作回数をリセットした時刻から事前設定された規定時間が経過していない場合(ステップS35でNOの場合)、規定時間内動作回数リセットステップ(ステップS36)はなされることなく、アプリケーション処理操作選択実行行程を完了する。そして、アプリケーション処理操作選択実行行程の完了をもって、アプリケーション異常監視手順も完了する(END)。
尚、アプリケーション異常発生通知ステップ(ステップS37)においては、アプリケーションの動作異常の監視を行い異常を検出したアプリケーションサーバ計算機15Dが、サーバ計算機群11の各アプリケーションサーバ計算機15D,16D,17Dに通知するとしたが、必ずしもサーバ計算機群11の全てのアプリケーションサーバ計算機15D,16D,17Dに通知する必要は無い。サーバ計算機群11の少なくとも1つ以上アプリケーションサーバ計算機に通知すれば良い。
また、アプリケーション処理操作選択実行行程は、アプリケーション異常発生通知ステップを備えているが、必ずしもアプリケーション異常発生通知ステップを備えていなくても良い。より好ましい実施形態として記載したものであり、アプリケーション異常発生通知ステップを備えていない場合でも、異常を検出したアプリケーションの実行は効果的に防止できるからである。
本発明の第4の実施形態に係るアプリケーション管理システムとしてのアプリケーション管理システム10D、本発明の第4の実施形態に係るアプリケーション管理方法としてのアプリケーション異常監視手順およびその管理方法(アプリケーション異常監視手順)を実行させるためのプログラムによれば、アプリケーションサーバ計算機15D,16D,17Dの現状動作回数リセット手段37が規定時間毎に現状動作回数Ncをリセットすることで、現状動作回数Ncから規定時間内のアプリケーション実行回数を知ることができる。
現状動作回数Ncは、アプリケーションが必要以上に実行される場合(アプリケーションの動作異常時)には、その数が大きくなるから、事前設定した正常限界動作回数Ndと大小比較することで、アプリケーションが「正常」か「異常」を知ることができる。
また、現状動作回数リセット手段37が、「異常」と判断した場合には、アプリケーション現在状態更新ファイル23のアプリケーション状態を「動作不可」にすることで、以降のアプリケーションの実行を禁止することができる。従って、「異常」と判断されたアプリケーションは実行されることはなく、他のアプリケーションおよびアプリケーションサーバ計算機16D,17Dへの悪影響を最小限に食い止めることができる。
尚、アプリケーションサーバ計算機15D,16D,17Dにおいて、アプリケーション管理手段21Dに後処理実行部31を備えさせ、後処理実行部31が後処理アプリケーション29を実行できるように構成しても良い。
[第5の実施形態]
図13に本発明の第5の実施形態に係るアプリケーション管理システムの一実施例であるアプリケーション管理システム10Eの構成概略を表した構成概略図を示す。
アプリケーション管理システム10Eは、管理対象アプリケーション群22の管理対象アプリケーションの各々に対してアプリケーション毎の平均実行時間を参照することができるように構成されたシステムである。
アプリケーション管理システム10Eは、基本的なシステム構成であるアプリケーション管理システム10に対して、アプリケーションサーバ計算機15E,16E,17Eを備えるサーバ計算機群11Eを具備する点で相違する。しかし、その他の点については同様であり、同一または相当箇所については同一符号を付して説明を省略する。
アプリケーション管理システム10Eは、サーバ計算機群11EがLANまたはWAN等の通信ネットワーク12を介して管理サーバ計算機13と電気的に接続されて構成される。アプリケーション管理システム10Eのサーバ計算機群11Eは、例えば、3つ等の少なくとも1以上のアプリケーションサーバ計算機15E,16E,17Eを備える。
アプリケーションサーバ計算機15Eは、図13に示すようにアプリケーションの実行を制御し管理するアプリケーション管理手段21E、少なくとも1以上の実行可能なアプリケーションを有する実行対象アプリケーション群22およびアプリケーションの現在の状態を記録し保有するアプリケーション現在状態更新ファイル23を備え、さらに、管理対象アプリケーション群22の実行したアプリケーションについてアプリケーション終了後に平均実行時間を算出するアプリケーション平均実行時間算出手段40を備える。
アプリケーション平均実行時間算出手段40は、今回のアプリケーション実行時間を含むアプリケーション平均実行時間を算出する。アプリケーション平均実行時間の算出は、今回のアプリケーション実行時間、通算動作回数およびアプリケーション平均実行時間を用いて以下の数式2を演算処理することでなされる。
[数2]
Tm={Tm_old×(N−1)+Te}/N (N≧1)
ここで、Tm:新たに算出したアプリケーション平均実行時間
Tm_old:アプリケーション現在状態更新ファイル23から読み込んだ過去
(今回実行分を除いた)のアプリケーション平均実行時間
Te:最終実行時間
N:通算動作回数
とする。
また、アプリケーション管理手段21Eは、アプリケーション管理部30と、アプリケーション終了時に今回実行した時間を算出するアプリケーション実行時間算出部41とを備える。アプリケーション実行時間算出部41は、アプリケーション現在状態更新ファイル23の実行開始時刻および実行終了時刻を参照し、今回のアプリケーション実行分の実行開始時刻および実行終了時刻とを取得して両者の差からアプリケーション実行時間を算出する。
尚、アプリケーションサーバ計算機16E,17Eについても、アプリケーションサーバ計算機15Eと同様であり、アプリケーションサーバ計算機16E,17Eは、アプリケーション管理手段21E、実行対象アプリケーション群22、アプリケーション現在状態更新ファイル23およびアプリケーション平均実行時間算出手段40を備える。また、アプリケーション管理手段21Eは、アプリケーション管理部30およびアプリケーション実行時間算出部41を備える。
このように構成されるアプリケーション管理システム10Eでは、アプリケーションサーバ計算機15E,16E,17Eのアプリケーション管理手段21Eが実行していたアプリケーションを終了する際に、本発明に係るアプリケーション管理方法を用いてアプリケーション現在状態情報としてのアプリケーションの平均実行時間を算出してアプリケーション現在状態更新ファイル23に記録するアプリケーション平均実行時間算出記録手順を実行する。
図14にアプリケーション管理システム10Eが本発明に係るアプリケーション管理方法としてのアプリケーション平均実行時間算出記録手順について説明する説明図(処理フロー図)を示す。
図14によれば、アプリケーション平均実行時間算出記録手順は、アプリケーション終了要求によりアプリケーションを終了する際にアプリケーション現在状態情報のうち直接的な情報を更新する第1次アプリケーション現在状態情報更新行程(ステップS41)と、今回のアプリケーション実行時間を算出し、今回のアプリケーション実行時間を含むアプリケーション平均実行時間を算出するアプリケーション平均実行時間算出行程(ステップS42〜ステップS43)と、第1次アプリケーション現在状態情報更新行程で更新されていないアプリケーション現在状態情報を更新する第2次アプリケーション現在状態情報更新行程(ステップS44)とを具備する。
アプリケーション平均実行時間算出記録手順のアプリケーション平均実行時間算出行程(ステップS42〜ステップS43)は、今回のアプリケーション実行時間を算出するアプリケーション実行時間算出ステップ(ステップS42)と、今回のアプリケーション実行時間を含むアプリケーション平均実行時間を算出するアプリケーション平均実行時間算出ステップ(ステップS43)とを備える。
このようなアプリケーション平均実行時間算出記録手順では、アプリケーション終了要求によりアプリケーションを終了すると、最初にステップS41に進み、ステップS41で第1次アプリケーション現在状態情報更新行程がなされる。第1次アプリケーション現在状態情報更新行程(ステップS41)では、アプリケーション管理手段21Eのアプリケーション管理部30がアプリケーション現在状態情報としてアプリケーション現在状態情報更新ファイル23を更新する。
アプリケーション管理部30が本行程(ステップS41)でアプリケーション現在状態情報更新ファイル23を更新する際に更新がなされる情報は、アプリケーション現在状態情報更新ファイル23の全情報についてではなく、他の計算処理等を行うことなく情報更新ができる直接的な情報である。直接的な情報とは、アプリケーション現在状態情報更新ファイル23の情報のうち、アプリケーション状態、実行終了時刻および通算動作回数の情報が該当する。
アプリケーション管理部30が、アプリケーション現在状態情報としてアプリケーション現在状態情報更新ファイル23のうち、直接的な情報、すなわち、アプリケーション状態、実行終了時刻および通算動作回数の情報を更新すると、第1次アプリケーション現在状態情報更新行程を完了する。そして、次に、ステップS42に進み、ステップS42以降でアプリケーション平均実行時間算出行程(ステップS42〜ステップS43)がなされる。
アプリケーション平均実行時間算出行程(ステップS42〜ステップS43)では、まず、アプリケーション実行時間算出ステップ(ステップS42)がなされる。アプリケーション実行時間算出ステップ(ステップS42)では、アプリケーション管理手段21Eのアプリケーション実行時間算出部41が、今回実行分のアプリケーション実行時間を算出する。
今回実行分のアプリケーション実行時間は、アプリケーション実行時間算出部41が、今回のアプリケーション実行について、実行開始時刻と実行終了時刻とを取得して両者の差からアプリケーション実行時間を算出する。アプリケーション実行時間算出部41が、今回のアプリケーション実行時間を算出すると、アプリケーション実行時間算出ステップを完了し、ステップS43に進む。そして、ステップS43でアプリケーション平均実行時間算出ステップがなされる。
アプリケーション平均実行時間算出ステップ(ステップS43)では、アプリケーション平均実行時間算出手段40が、今回のアプリケーション実行時間を含むアプリケーション平均実行時間を算出する。アプリケーション平均実行時間の算出は、まず、アプリケーション平均実行時間算出手段40が今回のアプリケーション実行時間、通算動作回数およびアプリケーション平均実行時間を取得して、取得した情報に基づき演算処理することでなされる。
アプリケーション平均実行時間算出手段40が取得する今回のアプリケーション実行時間は、アプリケーション実行時間算出部41がステップS42で算出したアプリケーション実行時間である。アプリケーション平均実行時間算出手段40は、アプリケーション実行時間算出部41から算出したアプリケーション実行時間を受け取る。また、通算動作回数およびアプリケーション平均実行時間については、アプリケーション平均実行時間算出手段40がアプリケーション現在状態情報更新ファイル23を参照し、参照した情報を取得している。
アプリケーション平均実行時間算出手段40は、今回のアプリケーション実行時間、通算動作回数およびアプリケーション平均実行時間を取得すると、次に、取得した情報に基づき演算処理してアプリケーション平均実行時間の算出を行う。アプリケーション平均実行時間の算出は、例えば、上述した数式2に取得した今回のアプリケーション実行時間、通算動作回数およびアプリケーション平均実行時間を代入して演算処理することでなされる。
アプリケーション平均実行時間算出手段40が、今回のアプリケーション実行時間、通算動作回数およびアプリケーション平均実行時間を取得して、取得した情報に基づき演算処理してアプリケーション平均実行時間の算出すると、アプリケーション平均実行時間算出ステップを完了する。そして、ステップS43のアプリケーション平均実行時間算出ステップの完了をもってアプリケーション平均実行時間算出行程も完了する。アプリケーション平均実行時間算出行程が完了すると、次に、ステップS44に進み、ステップS44で第2次アプリケーション現在状態情報更新行程がなされる。
第2次アプリケーション現在状態情報更新行程(ステップS44)では、アプリケーション平均実行時間算出手段40がアプリケーション現在状態更新ファイル23のアプリケーション平均実行時間をアプリケーション平均実行時間算出行程で算出したアプリケーション平均実行時間に更新する。アプリケーション現在状態更新ファイル23のアプリケーション平均実行時間の更新が完了すると、第2次アプリケーション現在状態情報更新行程は完了する。第2次アプリケーション現在状態情報更新行程が完了すると、アプリケーション平均実行時間算出記録手順は終了する(END)。
本発明の第5の実施形態に係るアプリケーション管理システムとしてのアプリケーション管理システム10E、本発明の第5の実施形態に係るアプリケーション管理方法としてのアプリケーション平均実行時間算出記録手順およびその管理方法(アプリケーション平均実行時間算出記録手順)を実行させるためのプログラムによれば、管理対象アプリケーション群22の管理対象アプリケーションの各々に対してアプリケーション毎の平均実行時間を算出し、算出結果をアプリケーション現在状態更新ファイル23に記録し更新するので、アプリケーション現在状態更新ファイル23を参照することで、管理対象アプリケーション群22の管理対象アプリケーションの各々に対してアプリケーション毎の平均実行時間を参照することができる。
管理対象アプリケーション群22の管理対象アプリケーションの各々に対してアプリケーション毎の平均実行時間は、サーバ計算機群11Eのアプリケーションサーバ計算機15E,16E,17Eの少なくともいずれかで発生した異常停止を復旧させる際に、有効な情報である。従って、アプリケーション毎の平均実行時間を参照できることにより、復旧作業者のより適切な復旧作業に貢献することができる。
[第6の実施形態]
図15に本発明の第6の実施形態に係るアプリケーション管理システムの一実施例であるアプリケーション管理システム10Fの構成概略を表した構成概略図を示す。
アプリケーション管理システム10Fは、バックアップとして他の接続ルート(以下、バックアップルートとする)を用意し、何らかの理由によりアプリケーション動作定義保存ファイル19を参照することができない場合に、バックアップルートを使用してアプリケーション動作定義保存ファイル19を参照することができるようにして、アプリケーションサーバ計算機15,16,17がアプリケーション動作定義を取得できるように構成されたシステムである。
アプリケーション管理システム10Fは、基本的なシステム構成であるアプリケーション管理システム10の管理サーバ計算機13の代わりに管理サーバ計算機13を複数台有する管理サーバ計算機群43を具備する点で異なるが、その他の点については同様であり、同一または相当箇所については同一符号を付して説明を省略する。
図15によれば、アプリケーション管理システム10Fは、少なくとも1以上のアプリケーションサーバ計算機を有するサーバ計算機群11がLANまたはWAN等の通信ネットワーク12を介して管理サーバ計算機13を、例えば2台等の複数台有する管理サーバ計算機群43と電気的に接続されて構成される。尚、管理サーバ計算機群43が有する2台の管理サーバ計算機13を区別して説明する必要がある場合においては、明確に区別するため、一方を第1の管理サーバ計算機13Aとし、他方を第2の管理サーバ計算機13Bとして説明する。
管理サーバ計算機群43の第1の管理サーバ計算機13Aおよび第2の管理サーバ計算機13Bには、アプリケーション動作定義保存ファイル19がそれぞれ格納されている。また、アプリケーションサーバ計算機15,16,17では、アプリケーション動作定義を参照するために接続する管理サーバ計算機13の接続優先度が決められている。例えば、第1の管理サーバ計算機13Aの優先順位(接続優先順位)を第1位、第2の管理サーバ計算機13Bの優先順位(接続優先順位)を第2位とした場合、アプリケーションサーバ計算機15,16,17は、まず、第1の管理サーバ計算機13Aと接続を試みる。もし、何らかの理由により接続できなかった場合には第2の管理サーバ計算機13Bと接続を試みる。
このように構成されるアプリケーション管理システム10Fでは、アプリケーションサーバ計算機15,16,17が、第1の管理サーバ計算機13Aと接続できなかった場合においても、本発明に係るアプリケーション管理方法を用いてバックアップルートとして用意した第2の管理サーバ計算機13Bと接続を試みる動作定義取得ルート切替手順を実行する。
図16にアプリケーション管理システム10Fが本発明に係るアプリケーション管理方法としての動作定義取得ルート切替手順について説明する説明図(処理フロー図)を示す。
動作定義取得ルート切替手順は、予め設定された動作優先度に従い、管理サーバ計算機と接続を試み、接続できるか否かを確認する接続確認行程(ステップS51)と、動作定義を取得するルートの切り替えが可能か否かを確認する動作定義取得ルート切替可否確認行程(ステップS52)と、この動作定義取得ルート切替可否確認行程で動作定義取得ルートの切り替えが可能な場合に動作定義取得ルートの切り替えを実施する動作定義取得ルート切替実施行程(ステップS53)と、動作定義取得ルートの切り替えが不可能な場合に切り替えられる動作定義取得ルートが存在しない旨を通知する動作定義取得ルート切替不可通知行程(ステップS54)とを具備する。
このような動作定義取得ルート切替手順では、最初にループ1に入る。そして、ループ1でアプリケーションサーバ計算機15,16,17のアプリケーション管理手段21が管理サーバ計算機13との接続を確認するまでの間、換言すれば、動作定義取得ルートを確保するまでの間、ループ1内の処理操作が繰り返される。ループ1では、まず、ステップS51で接続確認行程がなされる。
接続確認行程では、予め設定された動作優先度に基づきアプリケーション管理手段21が管理サーバ計算機群43の接続すべき管理サーバ(管理サーバ計算機13A,13Bのいずれか)との接続を試みる。接続要求する管理サーバは、ループ1の周回数によって異なる。例えば、スタート(START)の直後(ループ周回数0回)であれば、アプリケーション管理手段21は、優先度が第1位の第1の管理サーバ計算機13Aとの接続を要求し、ループ周回数1回であれば、優先度が第2位の第2の管理サーバ計算機13Bとの接続を要求する。
アプリケーション管理手段21が予め設定された動作優先度に従い、管理サーバ計算機群43の接続すべき管理サーバと接続できない場合(ステップS51でNOの場合)、ステップS52に進み、ステップS52で動作定義取得ルート切替可否確認行程がなされる。動作定義取得ルート切替可否確認行程(ステップS52)では、アプリケーション管理手段21が動作定義を取得する接続経路(以下、単にルートとする)の切り替えが可能か否かを確認する。
動作定義を取得するルートの切り替えが可能か否かの判断は、アプリケーション管理手段21がアプリケーション動作定義保存ファイル23を参照できる他のルートの有無で判断する。アプリケーション管理手段21が他のルートを経由してアプリケーション動作定義保存ファイル23を参照できる場合には、動作定義を取得するルートの切り替えが可能と判断する。動作定義を取得するルートの切り替えが可能な場合(ステップS52でYESの場合)、ステップS53に進み、ステップS53で動作定義取得ルート切替実施行程がなされる。
動作定義取得ルート切替実施行程(ステップS53)では、アプリケーション管理手段21が動作定義取得ルートの切り替えを実施する。そして、動作定義取得ルートの切り替えが実施されると、ループ1の処理操作を完了してステップS51に戻り、アプリケーション管理手段21が予め設定された動作優先度に従い、管理サーバ計算機群43の接続すべき管理サーバと接続できるまでループ1の処理操作を繰り返す。
アプリケーション管理手段21が予め設定された動作優先度に従い、管理サーバ計算機群43の接続すべき管理サーバと接続できると(ステップS51でYESの場合)、ループ1を抜け、動作定義取得ルート切替手順を終了する(END)。
一方、アプリケーション管理手段21が予め設定された動作優先度に従い、管理サーバ計算機群43の接続すべき管理サーバと接続できるまでループ1の処理操作を繰り返した結果、ステップS52の動作定義取得ルート切替可否確認行程においてアプリケーション管理手段21が動作定義を取得するルートの切り替えが不可能となった場合(ステップS52でYESの場合)、ステップS54に進む。そして、ステップS54で動作定義取得ルート切替不可通知行程がなされる。
動作定義取得ルート切替不可通知行程(ステップS54)では、アプリケーション管理手段21が切り替えられる動作定義取得ルートが存在しない旨を操作するアプリケーションサーバ計算機15,16,17のディスプレイ等の表示部(図に示さず)に表示し、ユーザに通知する。切り替えられる動作定義取得ルートが存在しない旨がアプリケーションサーバ計算機15,16,17の表示部に表示されると、動作定義取得ルート切替不可通知行程を完了し、動作定義取得ルート切替不可通知行程の完了をもって動作定義取得ルート切替手順を終了する(END)。
本発明の第6の実施形態に係るアプリケーション管理システムとしてのアプリケーション管理システム10F、本発明の第6の実施形態に係るアプリケーション管理方法としての動作定義取得ルート切替手順およびその管理方法(動作定義取得ルート切替手順)を実行させるためのプログラムによれば、アプリケーションサーバ計算機15,16,17がアプリケーション動作定義を取得するべく接続する管理サーバ計算機13を、例えば、第1の管理サーバ計算機13Aおよび第2の管理サーバ計算機13B等の複数台有する管理サーバ計算機群43とすることで、アプリケーションサーバ計算機15,16,17がアプリケーション動作定義を取得する接続経路、すなわち、動作定義取得ルートを複数個確保することができる。
従って、管理サーバ計算機群43のうち、第1の管理サーバ計算機13Aが異常となり1台の管理サーバ計算機からアプリケーション動作定義を取得することができない場合でも、残りの第2の管理サーバ計算機13Bが正常ならばアプリケーションサーバ計算機15,16,17においてアプリケーションの動作管理を継続して実施することが可能となり、本発明の他の実施形態に係るアプリケーション管理システム10A,10B,10C,10D,10Eよりもよりシステムの安定度および信頼度を高めることができる。
尚、管理サーバ計算機群43が有する管理サーバ計算機13の数は、システム規模に応じて変化するものであり、第1の管理サーバ計算機13Aおよび第2の管理サーバ計算機13Bの2台に限定するものではない。また、管理サーバ計算機13はアプリケーションサーバ計算機15,16,17とは別計算機とすることも限定せず、管理サーバ計算機13をアプリケーションサーバ計算機15,16,17内に配置することも可能である。
また、動作定義取得ルート切替手順の接続確認行程(ステップS51)においては、管理サーバ計算機群43が管理サーバP(P:2以上の自然数)台を有している場合、アプリケーション管理手段21は、ループ周回数Q(0≦Q≦P−1を満たす整数)回の場合、優先度が第Q+1位の管理サーバ計算機との接続を要求することになる。
以上、本発明に係るアプリケーション管理システム、アプリケーション管理方法およびその管理方法を実行させるためのプログラムによれば、アプリケーション管理システム10Aにおけるアプリケーションサーバ計算機15A,16A,17Aで実行中の所定のアプリケーションを停止する場合、複数のアプリケーションに対して停止要求があっても、停止要求のあったアプリケーションのグループ名を指定することにより、指定されたグループに属するアプリケーションを一斉に停止することができる。
また、アプリケーション管理システム10Bにおいては、アプリケーションサーバ計算機15B,16B,17Bのアプリケーション異常検出手段28がアプリケーションの動作異常の検出を行うことにより、異常が発生したアプリケーションのリカバリーをアプリケーションの動作定義に従って実施することができる。
この時、再実行によるリカバリーが不要または不可である場合には、異常が発生したアプリケーションの動作を禁止して動作させないので、アプリケーション管理システム10Bの他のアプリケーションに対する悪影響を最小限に食い止めることができる。また、後処理実行アプリケーション29が起動することにより、異常終了したアプリケーションが属するアプリケーションサーバ計算機からアプリケーションの動作異常の発生を通信ネットワーク12を介して電気的に接続される外部計算機に通知することができるので、外部計算機からの無用な接続を防止するとともに、より適切なリカバリーを実施することができる。
さらに、アプリケーション管理システム10Cにおいては、アプリケーションサーバ計算機15C,16C,17CのOSタイマ管理手段33が、実行処理を中断するアプリケーションの次回起動時刻の情報を受け取り、受け取った次回起動時刻と現在時刻との比較を行い時間管理することで、アプリケーションサーバ計算機15C,16C,17Cで現在、実行中の管理対象アプリケーションの処理操作を一旦中断し、規定周期時間以外の任意時間後にアプリケーションの実行処理を再開することができる。
すなわち、アプリケーションサーバ計算機15C,16C,17Cにおいて管理される管理対象アプリケーション群22の個々のアプリケーションを動的に起動させることができ、アプリケーションの実行をより自由度を高めることができる。
さらにまた、アプリケーション管理システム10Dにおいては、アプリケーションサーバ計算機15D,16D,17Dの現状動作回数リセット手段37が規定時間毎に現状動作回数Ncをリセットすることで、現状動作回数Ncから規定時間内のアプリケーション実行回数を知ることができる。従って、規定時間内動作回数を設定動作回数と比較することが可能となり、アプリケーションの動作異常の有無を監視することができる。そして、現状動作回数リセット手段37が、「異常」と判断した場合には、アプリケーション現在状態更新ファイル23のアプリケーション状態を「動作不可」にして、他のアプリケーションおよびアプリケーションサーバ計算機16D,17Dへの悪影響を最小限に食い止めることができる。
一方、アプリケーション管理システム10Eにおいては、アプリケーションサーバ計算機15E,16E,17Eのアプリケーション平均実行時間算出手段40が管理対象アプリケーション群22の実行したアプリケーションについてアプリケーション終了後に平均実行時間を算出し、算出結果をアプリケーション現在状態更新ファイル23に記録し更新するので、アプリケーション現在状態更新ファイル23を参照することで、管理対象アプリケーション群22の管理対象アプリケーションの各々に対してアプリケーション毎の平均実行時間を参照することができる。
従って、サーバ計算機群11Eのアプリケーションサーバ計算機15E,16E,17Eの少なくともいずれかで発生した異常停止を復旧させる際に、復旧作業者は、アプリケーション毎の平均実行時間という有効な情報を取得することが可能となり、より適切な復旧作業に貢献することができる。
他方、アプリケーション管理システム10Fにおいては、アプリケーションサーバ計算機15,16,17がアプリケーション動作定義を取得するべく接続する管理サーバ計算機13を、例えば、第1の管理サーバ計算機13Aおよび第2の管理サーバ計算機13B等の複数台有する管理サーバ計算機群43とすることで、アプリケーション動作定義を取得する接続経路、すなわち、動作定義取得ルートを複数個確保することができる。
従って、管理サーバ計算機群43のうち、第1の管理サーバ計算機13Aが異常となり1台の管理サーバ計算機からアプリケーション動作定義を取得することができない場合でも、残りの第2の管理サーバ計算機13Bが正常ならばアプリケーションサーバ計算機15,16,17においてアプリケーションの動作管理を継続して実施することが可能となり、本発明の他の実施形態に係るアプリケーション管理システム10A,10B,10C,10D,10Eよりもよりシステムの安定度および信頼度を高めることができる。
尚、本発明に係るアプリケーション管理システムには、各実施形態の構成要素を適宜組み合わせて構成されるアプリケーション管理システムを包含するものとする。
本発明に係るアプリケーション管理システムの基本的な構成概略を表した基本構成概略図。 本発明に係るアプリケーション管理システムの管理サーバ計算機に格納されるアプリケーション動作定義保存ファイルのデータ構造の一例を説明する説明図。 本発明に係るアプリケーション管理システムのアプリケーションサーバ計算機が備えるアプリケーション現在状態更新ファイルのデータ構造の一例を説明する説明図。 本発明の第1の実施形態に係るアプリケーション管理システムの構成概略を表した構成概略図。 本発明の第1の実施形態に係るアプリケーション管理システムのアプリケーションサーバ計算機が備えるアプリケーション現在状態更新ファイルのデータ構造の一例を説明する説明図。 本発明の第1の実施形態に係るアプリケーション管理システムが本発明に係るアプリケーション管理方法として行うアプリケーション停止手順について説明する説明図(処理フロー図)。 本発明の第2の実施形態に係るアプリケーション管理システムの構成概略を表した構成概略図。 本発明の第2の実施形態に係るアプリケーション管理システムが本発明に係るアプリケーション管理方法として行うアプリケーション後処理実行手順について説明する説明図(処理フロー図)。 本発明の第3の実施形態に係るアプリケーション管理システムの構成概略を表した構成概略図。 本発明の第3の実施形態に係るアプリケーション管理システムが本発明に係るアプリケーション管理方法として行うアプリケーション動的起動手順について説明する説明図(処理フロー図)。 本発明の第4の実施形態に係るアプリケーション管理システムの構成概略を表した構成概略図。 本発明の第4の実施形態に係るアプリケーション管理システムが本発明に係るアプリケーション管理方法として行うアプリケーション異常監視手順について説明する説明図(処理フロー図)。 本発明の第5の実施形態に係るアプリケーション管理システムの構成概略を表した構成概略図。 本発明の第5の実施形態に係るアプリケーション管理システムが本発明に係るアプリケーション管理方法として行うアプリケーション平均実行時間算出記録手順について説明する説明図(処理フロー図)。 本発明の第6の実施形態に係るアプリケーション管理システムの構成概略を表した構成概略図。 本発明の第6の実施形態に係るアプリケーション管理システムが本発明に係るアプリケーション管理方法として行う動作定義取得ルート切替手順について説明する説明図(処理フロー図)。 従来のアプリケーション管理システムおよびそのアプリケーション管理方法について概略を説明する概略図。
符号の説明
10,10A,10B,10C,10D,10E,10F アプリケーション管理システム
11 アプリケーションサーバ計算機群
12 通信ネットワーク
13 管理サーバ計算機
15,15A,15B,15C,15D,15E アプリケーションサーバ計算機
16,16A,16B,16C,16D,16E アプリケーションサーバ計算機
17,17A,17B,17C,17D,17E アプリケーションサーバ計算機
19 アプリケーション動作定義保存ファイル
21,21A,21B アプリケーション管理手段
22,22A 実行対象アプリケーション群
23,23A アプリケーション現在状態更新ファイル
25 アプリケーション停止受付部
26 アプリケーショングルーピング管理部
28 アプリケーション異常検出手段
29 後処理アプリケーション
30 アプリケーション管理部
31 後処理実行部
33 OSタイマ管理手段
34 次回起動時刻通知部
37 現状動作回数リセット手段
38 動作回数比較部
40 アプリケーション平均実行時間算出手段
41 実行時間算出部
43 管理サーバ計算機群

Claims (8)

  1. 複数の実行可能なアプリケーションを有するアプリケーションサーバ計算機を複数台備えるアプリケーションサーバ計算機群と複数のアプリケーションの動作定義を事前設定した管理サーバ計算機とを通信ネットワークを介して相互に通信可能に構成し、前記アプリケーションサーバ計算機は、アプリケーションの実行を制御し管理するアプリケーション管理手段と、このアプリケーション管理手段が管理する少なくとも1以上のアプリケーションと、アプリケーションの現在の状態を記録し保有するアプリケーション現在状態更新ファイルとを備え、前記管理サーバ計算機は、アプリケーションの動作定義を記録したアプリケーション動作定義保存ファイルを格納し、このアプリケーション動作定義保存ファイルを前記アプリケーションサーバ計算機が参照することによりアプリケーションの動作を制御するアプリケーション管理システムにおいて、
    前記アプリケーションサーバ計算機は、前記アプリケーション管理手段が管理する少なくとも1以上のアプリケーションを少なくとも1以上のグループにグループ化した実行対象アプリケーション群と、この実行対象アプリケーション群のグルーピングデータを有するアプリケーション現在状態更新ファイルとを備え、
    前記アプリケーションサーバ計算機のアプリケーション管理手段に、指定した単位でアプリケーションの停止要求を受け付けるアプリケーション停止受付部と、前記実行対象アプリケーション群のアプリケーションをグループ単位で管理するとともに、前記アプリケーション停止受付部からの停止要求を受けて前記指定した単位でアプリケーションを一斉に停止させるアプリケーショングルーピング管理部とを備えることを特徴とするアプリケーション管理システム。
  2. 複数の実行可能なアプリケーションを有するアプリケーションサーバ計算機を複数台備えるアプリケーションサーバ計算機群と複数のアプリケーションの動作定義を事前設定した管理サーバ計算機とを通信ネットワークを介して相互に通信可能に構成し、前記アプリケーションサーバ計算機は、アプリケーションの実行を制御し管理するアプリケーション管理手段と、このアプリケーション管理手段が管理する少なくとも1以上のアプリケーションと、アプリケーションの現在の状態を記録し保有するアプリケーション現在状態更新ファイルとを備え、前記管理サーバ計算機は、アプリケーションの動作定義を記録したアプリケーション動作定義保存ファイルを格納し、このアプリケーション動作定義保存ファイルを前記アプリケーションサーバ計算機が参照することによりアプリケーションの動作を制御するアプリケーション管理システムにおいて、
    前記アプリケーションサーバ計算機は、アプリケーション動作の異常を検出するアプリケーション異常検出手段と、異常検出時の後処理を実行する後処理アプリケーションとを備え、
    前記アプリケーションサーバ計算機のアプリケーション管理手段に、実行要求のあったアプリケーションの実行を制御し管理するアプリケーション管理部と、異常が発生し実行要求されたアプリケーションが再実行できない場合に前記後処理アプリケーションを実行する後処理実行部とを備えることを特徴とするアプリケーション管理システム。
  3. 複数の実行可能なアプリケーションを有するアプリケーションサーバ計算機を複数台備えるアプリケーションサーバ計算機群と複数のアプリケーションの動作定義を事前設定した管理サーバ計算機とを通信ネットワークを介して相互に通信可能に構成し、前記アプリケーションサーバ計算機は、アプリケーションの実行を制御し管理するアプリケーション管理手段と、このアプリケーション管理手段が管理する少なくとも1以上のアプリケーションと、アプリケーションの現在の状態を記録し保有するアプリケーション現在状態更新ファイルとを備え、前記管理サーバ計算機は、アプリケーションの動作定義を記録したアプリケーション動作定義保存ファイルを格納し、このアプリケーション動作定義保存ファイルを前記アプリケーションサーバ計算機が参照することによりアプリケーションの動作を制御するアプリケーション管理システムにおいて、
    前記アプリケーションサーバ計算機に、オペレーションシステムのタイマを管理し、現在時刻を認識するとともに、中断処理を行うアプリケーションの次回起動時刻を受け取り、前記現在時刻と前記次回起動時刻とが同じ時刻になると、アプリケーションの実行要求を行うOSタイマ管理手段を設け、
    前記アプリケーション管理手段に、実行要求のあったアプリケーションの実行を管理するアプリケーション管理部と、中断処理を行うアプリケーションの次回起動時刻を前記OSタイマ管理手段に通知する次回起動時刻通知部とを備えることを特徴とするアプリケーション管理システム。
  4. 複数の実行可能なアプリケーションを有するアプリケーションサーバ計算機を複数台備えるアプリケーションサーバ計算機群と複数のアプリケーションの動作定義を事前設定した管理サーバ計算機とを通信ネットワークを介して相互に通信可能に構成し、前記アプリケーションサーバ計算機は、アプリケーションの実行を制御し管理するアプリケーション管理手段と、このアプリケーション管理手段が管理する少なくとも1以上のアプリケーションと、アプリケーションの現在の状態を記録し保有するアプリケーション現在状態更新ファイルとを備え、前記管理サーバ計算機は、アプリケーションの動作定義を記録したアプリケーション動作定義保存ファイルを格納し、このアプリケーション動作定義保存ファイルを前記アプリケーションサーバ計算機が参照することによりアプリケーションの動作を制御するアプリケーション管理システムにおいて、
    前記アプリケーションサーバ計算機に、規定時間毎に前記アプリケーション現在状態更新ファイルに記録される規定時間内動作回数を0にする現状動作回数リセット手段と、
    前記アプリケーション管理手段に、実行要求のあったアプリケーションの実行を制御するアプリケーション管理部と、前記アプリケーション現在状態更新ファイルに記録される規定時間内動作回数と前記アプリケーション動作定義保存ファイルに記録される設定動作回数とを比較する動作回数比較部とを備えることを特徴とするアプリケーション管理システム。
  5. 複数の実行可能なアプリケーションを有するアプリケーションサーバ計算機を複数台備えるアプリケーションサーバ計算機群と複数のアプリケーションの動作定義を事前設定した管理サーバ計算機とを通信ネットワークを介して相互に通信可能に構成し、前記アプリケーションサーバ計算機は、アプリケーションの実行を制御し管理するアプリケーション管理手段と、このアプリケーション管理手段が管理する少なくとも1以上のアプリケーションと、アプリケーションの現在の状態を記録し保有するアプリケーション現在状態更新ファイルとを備え、前記管理サーバ計算機は、アプリケーションの動作定義を記録したアプリケーション動作定義保存ファイルを格納し、このアプリケーション動作定義保存ファイルを前記アプリケーションサーバ計算機が参照することによりアプリケーションの動作を制御するアプリケーション管理システムにおいて、
    前記アプリケーションサーバ計算機は、前記アプリケーション管理手段にアプリケーションの実行を制御するアプリケーション管理部と、アプリケーション終了時に今回の実行時間を算出するアプリケーション実行時間算出部と、
    前記アプリケーション管理手段が管理するアプリケーションについてアプリケーション実行終了後に前記アプリケーション実行時間算出部から算出した今回の実行時間を受け取って今回までの平均実行時間を算出するアプリケーション平均実行時間算出手段とを備えることを特徴とするアプリケーション管理システム。
  6. 複数の実行可能なアプリケーションを有するアプリケーションサーバ計算機を複数台備えるアプリケーションサーバ計算機群と複数のアプリケーションの動作定義を事前設定した複数の管理サーバ計算機を有する管理サーバ計算機群とを通信ネットワークを介して相互に通信可能に構成し、
    前記管理サーバ計算機群が有する管理サーバ計算機は、アプリケーションの動作定義を記録したアプリケーション動作定義保存ファイルを格納し、
    前記アプリケーションサーバ計算機は、事前に決められた接続優先度に従い、前記管理サーバ計算機に格納されるアプリケーション動作定義保存ファイルを参照してアプリケーションの動作を制御し管理するアプリケーション管理手段と、このアプリケーション管理手段が管理する少なくとも1以上のアプリケーションと、アプリケーションの現在の状態を記録し保有するアプリケーション現在状態更新ファイルとを備えることを特徴とするアプリケーション管理システム。
  7. アプリケーション停止受付部がアプリケーションの停止要求を受け付けて認識し停止要求の内容を判断するアプリケーション停止要求判断行程と、
    このアプリケーション停止要求判断行程で前記アプリケーション停止受付部が判断した停止要求のあったアプリケーションに属するグループを管理するアプリケーショングルーピング管理部が停止要求のあったアプリケーションを一斉に停止するアプリケーション停止行程と、
    前記アプリケーショングルーピング管理部がアプリケーション現在状態情報を更新するアプリケーション現在状態情報更新行程とを具備し、
    前記アプリケーション停止要求判断行程は、前記アプリケーション停止部がアプリケーションの停止要求を受け付け認識するアプリケーション停止要求認識ステップと、アプリケーション動作定義保存ファイルを参照し、アプリケーション動作定義を取得するアプリケーション動作定義取得ステップと、取得したアプリケーション動作定義からアプリケーション停止要求の内容を判断するアプリケーション停止要求内容判断ステップとを備えることを特徴とするアプリケーション管理方法。
  8. アプリケーション停止部がアプリケーションの停止要求を受け付け認識するアプリケーション停止要求認識ステップと、アプリケーション動作定義保存ファイルを参照し、アプリケーション動作定義を取得するアプリケーション動作定義取得ステップと、取得したアプリケーション動作定義からアプリケーション停止要求の内容を判断するアプリケーション停止要求内容判断ステップとを備えるアプリケーション停止要求判断行程と、
    このアプリケーション停止要求判断行程で前記アプリケーション停止受付部が判断した停止要求のあったアプリケーションに属するグループを管理するアプリケーショングルーピング管理部が停止要求のあったアプリケーションを一斉に停止するアプリケーション停止行程と、
    前記アプリケーショングルーピング管理部がアプリケーション現在状態情報を更新するアプリケーション現在状態情報更新行程とを具備するアプリケーション停止手順をコンピュータに実行させるプログラム。
JP2004016164A 2004-01-23 2004-01-23 アプリケーション管理システム、アプリケーション管理方法およびその管理方法を実行させるためのプログラム Pending JP2005209029A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004016164A JP2005209029A (ja) 2004-01-23 2004-01-23 アプリケーション管理システム、アプリケーション管理方法およびその管理方法を実行させるためのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004016164A JP2005209029A (ja) 2004-01-23 2004-01-23 アプリケーション管理システム、アプリケーション管理方法およびその管理方法を実行させるためのプログラム

Publications (1)

Publication Number Publication Date
JP2005209029A true JP2005209029A (ja) 2005-08-04

Family

ID=34901405

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004016164A Pending JP2005209029A (ja) 2004-01-23 2004-01-23 アプリケーション管理システム、アプリケーション管理方法およびその管理方法を実行させるためのプログラム

Country Status (1)

Country Link
JP (1) JP2005209029A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009230590A (ja) * 2008-03-25 2009-10-08 Fujitsu Ltd 分散処理を実行する演算装置とサーバおよび分散処理方法
JP2011159148A (ja) * 2010-02-02 2011-08-18 Denso Wave Inc 携帯端末
JP2011525661A (ja) * 2008-06-16 2011-09-22 クゥアルコム・インコーポレイテッド モバイルデバイスからのメッセージの送信のスケジュールを設定するための方法及び装置
US9342426B2 (en) 2012-09-24 2016-05-17 Nec Corporation Distributed system, server computer, distributed management server, and failure prevention method
JP2017519306A (ja) * 2014-06-24 2017-07-13 オラクル・インターナショナル・コーポレイション マルチテナントアプリケーションサーバ環境においてパーティションをサポートするためのシステムおよび方法
US10157110B2 (en) 2012-09-24 2018-12-18 Nec Corporation Distributed system, server computer, distributed management server, and failure prevention method
US10742568B2 (en) 2014-01-21 2020-08-11 Oracle International Corporation System and method for supporting multi-tenancy in an application server, cloud, or other environment
US11138017B2 (en) 2016-09-16 2021-10-05 Oracle International Corporation System and method for partition administrative targeting in an application server environment

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009230590A (ja) * 2008-03-25 2009-10-08 Fujitsu Ltd 分散処理を実行する演算装置とサーバおよび分散処理方法
JP2011525661A (ja) * 2008-06-16 2011-09-22 クゥアルコム・インコーポレイテッド モバイルデバイスからのメッセージの送信のスケジュールを設定するための方法及び装置
US8290476B2 (en) 2008-06-16 2012-10-16 Qualcomm Incorporated Method and apparatus for scheduling the transmission of messages from a mobile device
JP2011159148A (ja) * 2010-02-02 2011-08-18 Denso Wave Inc 携帯端末
US9342426B2 (en) 2012-09-24 2016-05-17 Nec Corporation Distributed system, server computer, distributed management server, and failure prevention method
US10157110B2 (en) 2012-09-24 2018-12-18 Nec Corporation Distributed system, server computer, distributed management server, and failure prevention method
US10742568B2 (en) 2014-01-21 2020-08-11 Oracle International Corporation System and method for supporting multi-tenancy in an application server, cloud, or other environment
US11343200B2 (en) 2014-01-21 2022-05-24 Oracle International Corporation System and method for supporting multi-tenancy in an application server, cloud, or other environment
US11683274B2 (en) 2014-01-21 2023-06-20 Oracle International Corporation System and method for supporting multi-tenancy in an application server, cloud, or other environment
JP2017519306A (ja) * 2014-06-24 2017-07-13 オラクル・インターナショナル・コーポレイション マルチテナントアプリケーションサーバ環境においてパーティションをサポートするためのシステムおよび方法
US11477278B2 (en) 2014-06-24 2022-10-18 Oracle International Corporation System and method for supporting partitions in a multitenant application server environment
US11138017B2 (en) 2016-09-16 2021-10-05 Oracle International Corporation System and method for partition administrative targeting in an application server environment

Similar Documents

Publication Publication Date Title
JP4060322B2 (ja) アプリケーション管理装置およびそのソフトウェアを格納した記憶媒体
US9342426B2 (en) Distributed system, server computer, distributed management server, and failure prevention method
US7721153B2 (en) System, method and program product for recovering from a failure
CN113391944A (zh) 计算系统中延期的服务器恢复方法和设备
CN111352797A (zh) 用于监视软件应用程序进程的系统和方法
JP2011164971A (ja) Biosとbmcとの間の通信パス強化方法、その装置及びそのプログラム
AU740851B2 (en) System application management method and system, and storage medium which stores program for executing system application management
JP2005209029A (ja) アプリケーション管理システム、アプリケーション管理方法およびその管理方法を実行させるためのプログラム
US20130262916A1 (en) Cluster monitor, method for monitoring a cluster, and computer-readable recording medium
JP2009129409A (ja) 障害回復方法、計算機、クラスタシステム、管理計算機及び障害回復プログラム
JP4796086B2 (ja) クラスタシステム及び同システムにおいてマスタノードを選択する方法
US10157110B2 (en) Distributed system, server computer, distributed management server, and failure prevention method
JP6861533B2 (ja) 処理装置、二重化システム、処理方法、および処理プログラム
JP5445572B2 (ja) コンピュータシステム、待機電力削減方法、及びプログラム
JP2005250840A (ja) 耐障害システムのための情報処理装置
KR100953732B1 (ko) 테스크 관리 장치
JP4893663B2 (ja) 障害自動復旧装置
JP2007200103A (ja) クライアントサーバシステムおよびリソース制御方法
JP2006252189A (ja) アプリケーション運用管理システム及び方法
US20090307706A1 (en) Dynamically Setting the Automation Behavior of Resources
US20090113255A1 (en) Software Fault Detection Using Progress Tracker
CN112269693B (zh) 一种节点自协调方法、装置和计算机可读存储介质
JP2010086363A (ja) 情報処理装置及び装置構成組み換え制御方法
JP2014120123A (ja) 情報処理装置及び情報処理方法
JP2009026182A (ja) プログラム実行システム及び実行装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050727

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20050727

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050727