(57)【要約】【課題】分散環境において、複数のアプリケーションの更新にあたり、その一貫性を保証することを可能とする。【解決手段】管理端末１０及び複数のサーバ２０を備えた分散環境における複数のアプリケーションの更新処理方法であって、管理端末が、サーバにアプリケーションの更新要求通知を送信し、サーバが、この更新要求通知が送信されてくると、対象となるアプリケーションの更新を実行し、この更新に失敗した場合、管理端末に更新失敗通知を送信し、管理端末が、少なくとも一のサーバから更新失敗通知が送信されてくると、更新要求通知の送信対象である全てのサーバに対して、アプリケーションの更新取り消し要求通知を送信し、サーバが、更新取り消し要求通知が送信されてくると、アプリケーションの更新を取り消して、更新前の状態に戻すアプリケーションの更新処理方法。【選択図】　　　図１
2004086769.tif 000002
【特許請求の範囲】
【請求項１】
管理端末及び複数のサーバを備えた分散環境における複数のアプリケーションの更新処理方法であって、
前記管理端末が、前記サーバにアプリケーションの更新要求通知を送信し、
前記サーバが、前記更新要求通知を受信すると、対象となるアプリケーションの更新を実行して、この更新に失敗した場合、前記管理端末に更新失敗通知を送信し、
前記管理端末が、前記サーバのうち少なくとも一のサーバから前記更新失敗通知を受信すると、前記更新要求通知の送信対象である全てのサーバに対して、アプリケーションの更新取り消し要求通知を送信し、
前記サーバが、前記更新取り消し要求通知を受信すると、前記アプリケーションの更新を取り消して、更新前の状態に戻す
ことを特徴とするアプリケーションの更新処理方法。
【請求項２】
前記サーバが、
前記更新要求通知を受信すると、前記管理端末にアクセスし、この管理端末に備えられた定義情報格納装置から当該サーバに対応するアプリケーションの定義情報を取得するとともに、この定義情報にもとづき前記管理端末に備えられたマスタアプリケーション格納装置から対応するアプリケーションを取得して、前記アプリケーションの更新を実行する
ことを特徴とする請求項１記載のアプリケーションの更新処理方法。
【請求項３】
前記サーバが、
前記更新要求通知を受信すると、前記サーバに備えられた定義情報格納装置から当該サーバに対応するアプリケーションの定義情報を取得するとともに、この定義情報にもとづき前記サーバに備えられたマスタアプリケーション格納装置から対応するアプリケーションを取得して、前記アプリケーションの更新を実行する
ことを特徴とする請求項１記載のアプリケーションの更新処理方法。
【請求項４】
前記サーバが、
前記アプリケーションの更新にあたり、前記サーバに備えられたアプリケーション格納装置に保有されている更新対象アプリケーションを、前記サーバに備えられたアプリケーション一時格納装置に複製し、
前記更新取り消し要求通知を受信すると、前記アプリケーション一時格納装置から前記複製した更新対象アプリケーションを読み出して、前記アプリケーション格納装置に複製することにより、前記アプリケーションの更新を取り消して、更新前の状態に戻す
ことを特徴とする請求項１〜３のいずれかに記載のアプリケーションの更新処理方法。
【請求項５】
前記サーバが、
前記アプリケーションの更新に成功した場合、前記管理端末に更新成功通知を送信し、
前記管理端末が、
送信されてきた前記更新成功通知にもとづいて、当該更新の結果を前記管理端末に備えられた更新結果格納装置に記憶し、前記更新要求通知の送信対象である全てのサーバからの前記更新成功通知にもとづく更新結果が、前記更新結果格納装置に記憶された場合、更新完了通知を当該全てのサーバに送信する
ことを特徴とする請求項１〜４のいずれかに記載のアプリケーションの更新処理方法。
【請求項６】
前記管理端末が、
前記サーバへの前記更新要求通知の送信後、所定の時間内に、前記サーバのうち少なくとも一のサーバから前記更新成功通知を受信しなかった場合、前記更新要求通知の送信対象である全てのサーバに対して、前記更新取り消し要求通知を送信する
ことを特徴とする請求項５記載のアプリケーションの更新処理方法。
【請求項７】
前記サーバが、
前記更新成功通知の送信後、所定の時間内に、前記管理端末から前記更新完了通知を受信しなかった場合、前記アプリケーションの更新を取り消して、更新前の状態に戻す
ことを特徴とする請求項５又は６記載のアプリケーションの更新処理方法。
【請求項８】
前記サーバが、
前記管理端末への更新失敗通知の送信後、所定の時間内に、前記管理端末から前記更新取り消し要求通知を受信しなかった場合、前記アプリケーションの更新を取り消して、更新前の状態に戻す
ことを特徴とする請求項１〜７のいずれかに記載のアプリケーションの更新処理方法。
【請求項９】
前記複数のアプリケーションが、依存関係を有することを特徴とする請求項１〜８のいずれかに記載のアプリケーションの更新処理方法。
【請求項１０】
管理端末及び複数のサーバを備えた分散環境における複数のアプリケーションの更新処理システムであって、
前記サーバにアプリケーションの更新要求通知を送信し、前記サーバのうち少なくとも一のサーバから更新失敗通知を受信した場合、アプリケーション更新取り消し要求手段を実行するアプリケーション更新要求手段と、前記更新要求通知の送信対象である全てのサーバのアプリケーション更新取り消し実行手段に、アプリケーションの更新取り消し要求通知を送信する前記アプリケーション更新取り消し要求手段を備えた管理端末と、
前記更新要求通知を受信すると、対象となるアプリケーションの更新を実行し、この更新に失敗した場合、前記管理端末における前記アプリケーション更新要求手段に前記更新失敗通知を送信するとともに、アプリケーション更新取り消し実行手段からの割り込みを受けると、前記アプリケーションの更新を取り消して、更新前の状態に戻すアプリケーション更新実行手段と、前記更新取り消し要求通知を受信すると、前記アプリケーション更新実行手段に割り込む前記アプリケーション更新取り消し実行手段を備えた前記サーバと、
前記管理端末及び複数の前記サーバを接続する通信回線とを有する
ことを特徴とするアプリケーションの更新処理システム。
【請求項１１】
前記管理端末が、アプリケーションの定義情報を保有する定義情報格納装置と、マスタアプリケーションを保有するマスタアプリケーション格納装置を備え、
前記アプリケーション更新実行手段が、前記更新要求通知を受信すると、前記管理端末にアクセスし、前記定義情報格納装置から当該サーバに対応する定義情報を取得するとともに、この定義情報にもとづき前記マスタアプリケーション格納装置から対応するアプリケーションを取得して、前記アプリケーションの更新を実行する
ことを特徴とする請求項１０記載のアプリケーションの更新処理システム。
【請求項１２】
前記サーバが、アプリケーションの定義情報を保有する定義情報格納装置と、マスタアプリケーションを保有するマスタアプリケーション格納装置を備え、
前記アプリケーション更新実行手段が、前記更新要求通知を受信すると、前記定義情報格納装置から当該サーバに対応する定義情報を取得するとともに、この定義情報にもとづき前記マスタアプリケーション格納装置から対応するアプリケーションを取得して、前記アプリケーションの更新を実行する
ことを特徴とする請求項１０記載のアプリケーションの更新処理システム。
【請求項１３】
前記サーバが、アプリケーションを保有するアプリケーション格納装置と、一時的にアプリケーションを保管するアプリケーション一時格納装置を備え、
前記アプリケーション更新実行手段が、前記アプリケーションの更新にあたり、前記アプリケーション格納装置に保有されている更新対象アプリケーションを、前記アプリケーション一時格納装置に複製し、前記アプリケーション更新取り消し実行手段から割り込みを受けた場合、前記アプリケーション一時格納装置から前記複製した更新対象アプリケーションを読み出して、前記アプリケーション格納装置に複製することにより、前記アプリケーションの更新を取り消して、更新前の状態に戻す
ことを特徴とする請求項１０〜１２のいずれかに記載のアプリケーションの更新処理システム。
【請求項１４】
前記管理端末が、前記アプリケーションの更新結果を記憶する更新結果格納装置を備え、
前記サーバにおける前記アプリケーション更新実行手段が、前記アプリケーションの更新に成功した場合、前記管理端末における前記アプリケーション更新要求手段に更新成功通知を送信し、
前記アプリケーション更新要求手段が、受信した前記更新成功通知にもとづいて、当該更新の結果を前記更新結果格納装置に記憶し、前記更新要求通知の送信対象である全てのサーバからの前記更新成功通知にもとづく更新結果が、前記更新結果格納装置に記憶された場合、更新完了通知を当該全てのサーバに送信することを特徴とする請求項１０〜１３のいずれかに記載のアプリケーションの更新処理システム。
【請求項１５】
前記複数のアプリケーションが、依存関係を有することを特徴とする請求項１０〜１４のいずれかに記載のアプリケーションの更新処理システム。
【請求項１６】
管理端末及び複数のサーバからなる分散環境において依存関係を有した複数のアプリケーションの更新処理プログラムであって、
前記サーバに、前記管理端末からアプリケーションの更新要求通知が送信されてくると、対象となるアプリケーションの更新を実行させて、この更新に失敗した場合、前記管理端末へ更新失敗通知を送信させ、
前記管理端末に、前記サーバのうち少なくとも一のサーバから前記更新失敗通知が送信されてきた場合、前記更新要求通知の送信対象である全てのサーバへ、アプリケーションの更新取り消し要求通知を送信させ、
前記サーバに、前記更新取り消し要求通知が送信されてきた場合、前記アプリケーションの更新を取り消させて、更新前の状態に戻させる
ことを実行させるためのアプリケーションの更新処理プログラム。
【請求項１７】
前記サーバに、
前記更新要求通知が送信されてくると、前記管理端末へアクセスさせ、この管理端末に備えられた定義情報格納装置から当該サーバに対応するアプリケーションの定義情報を取得させるとともに、この定義情報にもとづき前記管理端末に備えられたマスタアプリケーション格納装置から対応するアプリケーションを取得させて、前記アプリケーションを更新させる
ことを実行させるための請求項１６記載のアプリケーションの更新処理プログラム。
【請求項１８】
前記サーバに、
前記更新要求通知が送信されてくると、前記サーバに備えられた定義情報格納装置から当該サーバに対応するアプリケーションの定義情報を取得させるとともに、この定義情報にもとづき前記サーバに備えられたマスタアプリケーション格納装置から対応するアプリケーションを取得させて、前記アプリケーションを更新させる
ことを実行させるための請求項１６記載のアプリケーションの更新処理プログラム。
【請求項１９】
前記サーバに、
前記アプリケーションの更新にあたり、前記サーバに備えられたアプリケーション格納装置に保有されている更新対象アプリケーションを、前記サーバに備えられたアプリケーション一時格納装置に複製させ、
前記更新取り消し要求通知が送信されてきた場合、前記アプリケーション一時格納装置から前記複製した更新対象アプリケーションを、前記アプリケーション格納装置に複製させることにより、前記アプリケーションの更新を取り消させて、更新前の状態に戻させる
ことを実行させるための請求項１６〜１８のいずれかに記載のアプリケーションの更新処理プログラム。
【請求項２０】
前記サーバに、
前記アプリケーションの更新に成功した場合、前記管理端末へ更新成功通知を送信させ、
前記管理端末に、
送信されてきた前記更新成功通知にもとづいて、当該更新の結果を前記管理端末に備えられた更新結果格納装置に記憶させ、前記更新要求通知の送信対象である全てのサーバからの前記更新成功通知にもとづく更新結果が、前記更新結果格納装置に記憶された場合、更新完了通知を当該全てのサーバに送信させる
ことを実行させるための請求項１６〜１９のいずれかに記載のアプリケーションの更新処理プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、分散環境において、複数のアプリケーションの更新にあたり、その一貫性を保証する更新処理方法、更新処理システム及び更新処理プログラムに関する。
【０００２】
【従来の技術】
従来、アプリケーションのバージョンアップを行うにあたっては、バージョンアップ後も、アプリケーションが正常に動作することを確認することが不可欠であった。
すなわち、アプリケーションは、一般に他のアプリケーションと関連して動作するため、バージョンアップ後も、それらの他のアプリケーション等と正常に動作することを確認する必要があった。
【０００３】
特に、近年は、異なるバージョンのアプリケーションの組み合わせにより構成される製品が市場に存在するなど、アプリケーションの動作環境が複雑化しており、アプリケーションのバージョンアップに伴う動作不良の発生を防止するための手段が工夫されている（例えば、特許文献１参照。）。
【０００４】
また、近年の通信技術等の発展に伴い、通信回線を介して複数のコンピュータにおけるアプリケーションの更新を行うことも見られるようになった。
このような通信回線を介した複数のコンピュータに対する更新にあたっては、全ての更新が完了するまでシステムを停止したり、更新期間中の整合性確保のための手段を構築しなければならないという問題があった。
このような問題を解決するため、通信回線を介して複数のコンピュータを更新するにあたり、その更新や取り消しを一括して行う方式などが提案されている（例えば、特許文献２参照。）。
【０００５】
さらに、プログラムファイルの新規作成や更新等のメインテナンス作業を行った際に不具合が発生した場合でも、そのメインテナンス作業前の状態に自動的に復旧することのできるシステムも提案されている（例えば、特許文献３参照。）。
また、複数のコンピュータに対し同期をとってアプリケーションの導入を行う必要があるときに、オペレータによる手動での導入取り消しの必要をなくす方式なども提案されている（例えば、特許文献４参照。）。
【０００６】
【特許文献１】
特開平９−１９８２３３号公報
【特許文献２】
特開２００２−１７５１８８号公報
【特許文献３】
特開平１０−９７４５２号公報
【特許文献４】
特開平９−２３１０８３号公報
【０００７】
【発明が解決しようとする課題】
しかしながら、これらの従来の手段によっては、複数のサブアプリケーションにより構成される一つのアプリケーションが、複数のコンピュータに分散して保有されるような場合や、負荷分散などの目的で、複数のコンピュータで同じアプリケーションを実行するような場合等におけるバージョンアップに際し、アプリケーションの一貫性が十分に保証できないことがあるという問題があった。
例えば、特許文献１記載の方法によれば、ある一部のコンピュータに対するサブアプリケーションのバージョンアップにのみ失敗した場合であっても、分散アプリケーションとして機能しなくなるような不具合を引き起こすという問題があった。
すなわち、特許文献１記載の方法を分散環境において使用したとすれば、各コンピュータは、他のコンピュータにおけるバージョンアップの状況を把握することができないため、バージョンアップの失敗などにより、各コンピュータに異なるバージョンのアプリケーションが残る場合があるという問題があった。
【０００８】
また、特許文献２記載の方法等によれば、システムの運用管理者が、何らかの理由でシステムを置き換え前の状態に戻す必要があると認識した場合、反映取り消しプログラムをそれぞれのコンピュータに配布して実行することにより、更新を取り消すことは可能である。
しかし、この取り消しは、更新とは独立して行われるものであるため、更新以降、上述の認識を行って取り消しを実行するまでの間に、不整合な状態が発生することとなるという問題があった。
また、ネットワークの障害発生時には、このような不整合な状態がネットワークの復旧まで継続するという問題があった。
さらに、各コンピュータに反映取り消しプログラムを事前に配布しておかなければならないという問題もあった。
【０００９】
また、特許文献３記載のシステムによれば、プログラムファイルの更新などのメインテナンス作業に失敗した場合には、メインテナンス作業のログから元の状態に復旧するため、例えば、ディスクフル等によりログの書き込みに失敗した場合などには、復旧できなくなるという問題があった。
さらに、特許文献２の場合と同様、ネットワークの障害発生時にも、復旧できなくなる場合があった。
【００１０】
また、特許文献４記載の方式によれば、複数のコンピュータに対してアプリケーションの導入を行うにあたり、どれかひとつのコンピュータに対する導入が失敗した場合には、その導入を取り消す手段が開示されているが、更新については、想定されていないため、もとのアプリケーションに戻すことなどは考慮されていない。
さらに、その取り消しのためには、各コンピュータに導入解除スクリプトを保有させる必要があるとともに、ネットワークの障害発生時には、取り消しを行うことができなくなるという問題があった。
【００１１】
本発明は、上記の事情にかんがみなされたものであり、管理端末及び複数のサーバからなる分散環境において、複数のアプリケーションの更新にあたり、その一貫性を保証することの可能なアプリケーションの更新処理方法、更新処理システム及び更新処理プログラムの提供を目的とする。
【００１２】
【課題を解決するための手段】
上記目的を達成するため、本発明の請求項１記載のアプリケーションの更新処理方法は、管理端末及び複数のサーバを備えた分散環境における複数のアプリケーションの更新処理方法であって、管理端末が、サーバにアプリケーションの更新要求通知を送信し、サーバが、更新要求通知を受信すると、対象となるアプリケーションの更新を実行して、この更新に失敗した場合、管理端末に更新失敗通知を送信し、管理端末が、サーバのうち少なくとも一のサーバから更新失敗通知を受信すると、更新要求通知の送信対象である全てのサーバに対して、アプリケーションの更新取り消し要求通知を送信し、サーバが、更新取り消し要求通知を受信すると、アプリケーションの更新を取り消して、更新前の状態に戻す方法としてある。
【００１３】
アプリケーションの更新処理方法をこのような方法にすれば、更新対象であるアプリケーションのうちのひとつでも、更新に失敗した場合には、自動的に全てのアプリケーションの更新を取り消すことにより、更新の一貫性（原子性）を保証することができる。
したがって、本発明によれば、アプリケーションの更新にあたり、全てのアプリケーションが一貫性を保って更新されることを保証することができ、アプリケーションのバージョンアップなどの信頼性を向上させることが可能となる。
【００１４】
なお、本明細書におけるアプリケーションにプログラムが含まれることはもちろんであるが、これ以外にもアプリケーションを実行するために必要な情報、例えば、画面、帳票、データベース、画像情報、音声情報、動画情報等の各種情報を含むものとして用いている。
また、例えば、複数のアプリケーションによって一のアプリケーションが構成されるような場合には、この複数のアプリケーションの内の一つが、例えば、データベースのみにより構成されるような場合もあり得る。
【００１５】
本発明の請求項２記載のアプリケーションの更新処理方法は、サーバが、更新要求通知を受信すると、管理端末にアクセスし、この管理端末に備えられた定義情報格納装置から当該サーバに対応するアプリケーションの定義情報を取得するとともに、この定義情報にもとづき管理端末に備えられたマスタアプリケーション格納装置から対応するアプリケーションを取得して、アプリケーションの更新を実行する方法としてある。
【００１６】
アプリケーションの更新処理方法をこのような方法にすれば、更新にあたり、更新対象である各サーバは、管理端末にアクセスして、更新に必要なアプリケーションを認識し、そのアプリケーションを管理端末から受信して更新することができる。
これによって、マスタアプリケーションを管理端末において集中管理することができるため、アプリケーションに頻繁に変更が生じるような場合であっても、その管理を容易に行うことが可能となる。
【００１７】
本発明の請求項３記載のアプリケーションの更新処理方法は、サーバが、更新要求通知を受信すると、サーバに備えられた定義情報格納装置から当該サーバに対応するアプリケーションの定義情報を取得するとともに、この定義情報にもとづきサーバに備えられたマスタアプリケーション格納装置から対応するアプリケーションを取得して、アプリケーションの更新を実行する方法としてある。
【００１８】
アプリケーションの更新処理方法をこのような方法にすれば、マスタアプリケーション等を各サーバにおいて管理することができる。このため、アプリケーションの更新にあたり、データの通信容量を最小限にすることができ、更新時間を短縮することができるとともに、更新の安定性を高めることが可能となる。
特に、アプリケーションの容量が大きい場合には、効果的な構成である。
【００１９】
本発明の請求項４記載のアプリケーションの更新処理方法は、サーバが、アプリケーションの更新にあたり、サーバに備えられたアプリケーション格納装置に保有されている更新対象アプリケーションを、サーバに備えられたアプリケーション一時格納装置に複製し、更新取り消し要求通知を受信すると、アプリケーション一時格納装置から複製した更新対象アプリケーションを読み出して、アプリケーション格納装置に複製することにより、アプリケーションの更新を取り消して、更新前の状態に戻す方法としてある。
【００２０】
アプリケーションの更新処理方法をこのような方法にすれば、アプリケーションの更新にあたり、事前に元のプログラムを退避させておくことができるため、更新に問題が発生した場合には、容易に元の状態に戻すことが可能となる。
【００２１】
本発明の請求項５記載のアプリケーションの更新処理方法は、サーバが、アプリケーションの更新に成功した場合、管理端末に更新成功通知を送信し、管理端末が、送信されてきた更新成功通知にもとづいて、当該更新の結果を管理端末に備えられた更新結果格納装置に記憶し、更新要求通知の送信対象である全てのサーバからの更新成功通知にもとづく更新結果が、更新結果格納装置に記憶された場合、更新完了通知を当該全てのサーバに送信する方法としてある。
【００２２】
アプリケーションの更新処理方法をこのような方法にすれば、全てのアプリケーションの更新が成功した場合に、はじめて各サーバに対して、更新が完了したことを連絡する通知（更新完了通知）が送信される。
このため、各サーバが、更新完了通知を受信した場合には、確実に全てのアプリケーションの更新が成功していることを保証することができる。
反対に、この更新完了通知が、一定時間以内に送信されてこない場合は、各サーバは、更新を取り消し、再度更新をやり直すことによって、アプリケーションの更新の一貫性を保証することが可能となる。
【００２３】
本発明の請求項６記載のアプリケーションの更新処理方法は、管理端末が、サーバへの更新要求通知の送信後、所定の時間内に、サーバのうち少なくとも一のサーバから更新成功通知を受信しなかった場合、更新要求通知の送信対象である全てのサーバに対して、更新取り消し要求通知を送信する方法としてある。
【００２４】
アプリケーションの更新処理方法をこのような方法にすれば、更新対象であるサーバのうち少なくとも一のサーバにおけるアプリケーションの更新が失敗して、その更新失敗通知の送信も行えない状況となったような場合であっても、全てのアプリケーションの更新を取り消すことによって、その更新の一貫性を保証することができる。
【００２５】
本発明の請求項７記載のアプリケーションの更新処理方法は、サーバが、更新成功通知の送信後、所定の時間内に、管理端末から更新完了通知を受信しなかった場合、アプリケーションの更新を取り消して、更新前の状態に戻す方法としてある。
【００２６】
アプリケーションの更新処理方法をこのような方法にすれば、アプリケーションの更新に成功したサーバであっても、所定の時間内に更新完了通知を受信できなかった場合には、そのアプリケーションの更新を取り消すことができる。
このようにすることによって、確実にアプリケーションの更新が成功したと判断できる場合以外は全てのアプリケーションの更新を取り消すことができ、一部のサーバでは、アプリケーションが更新されているが、他のサーバではアプリケーションの更新が行われていないといった状況を排除することが可能となる。
すなわち、従来の方法によっては、ネットワークに障害が発生した場合には、アプリケーションの更新の一貫性を確保することができなかったが、本発明によれば、このような場合にも、不適切な更新状態を排除することができ、アプリケーションの更新に対する高い信頼性を確保することが可能となる。
【００２７】
本発明の請求項８記載のアプリケーションの更新処理方法は、サーバが、管理端末への更新失敗通知の送信後、所定の時間内に、管理端末から更新取り消し要求通知を受信しなかった場合、アプリケーションの更新を取り消して、更新前の状態に戻す方法としてある。
【００２８】
本発明においては、いずれかのサーバで更新が失敗した場合、更新失敗通知を管理端末に送信し、管理端末から更新取り消し要求通知が全てのサーバに送信されることによって、各サーバにおいて、アプリケーションの更新取り消し処理が行われる。
しかしながら、ネットワーク障害などによって、更新失敗通知や更新取り消し要求通知の送信が正常に行われない場合も想定される。
このため、このような場合には、各サーバにおいて、自動的にアプリケーションの更新取り消し処理が行われることが望ましい。
本請求項に係る発明は、このような状況を考慮した場合のものであり、アプリケーションの更新に失敗したサーバにおいても、所定の時間内に更新取り消し要求通知を受信しない場合には、アプリケーションの更新取り消し処理を行うものである。
【００２９】
なお、アプリケーションの更新の取り消しにおける具体的な処理は、その状況によって異なる内容となる場合がある。
例えば、他のサーバにおける更新が失敗したために、更新の成功したサーバにおいて更新の取り消し処理を行う場合には、事前に退避した元のアプリケーションを用いて、更新前の状態に戻すこととなる。
また、マスタアプリケーションの取得に失敗したことによって、更新に失敗したサーバにおける更新の取り消し処理は、特に何も行わずに終了することとなる。
【００３０】
本発明の請求項９記載のアプリケーションの更新処理方法は、複数のアプリケーションが、依存関係を有する方法としてある。
アプリケーションの更新処理方法をこのような方法にすれば、一のアプリケーションとして機能するために異なる複数のサーバに保有されたアプリケーションや、負荷分散などの目的で複数のサーバで同じアプリケーションを実行するような環境におけるアプリケーションの更新にあたり、そのアプリケーションの更新の一貫性を保証することが可能となる。
【００３１】
本発明の請求項１０記載の更新処理システムは、管理端末及び複数のサーバを備えた分散環境における複数のアプリケーションの更新処理システムであって、サーバにアプリケーションの更新要求通知を送信し、サーバのうち少なくとも一のサーバから更新失敗通知を受信した場合、アプリケーション更新取り消し要求手段を実行するアプリケーション更新要求手段と、更新要求通知の送信対象である全てのサーバのアプリケーション更新取り消し実行手段に、アプリケーションの更新取り消し要求通知を送信するアプリケーション更新取り消し要求手段を備えた管理端末と、更新要求通知を受信すると、対象となるアプリケーションの更新を実行し、この更新に失敗した場合、管理端末におけるアプリケーション更新要求手段に更新失敗通知を送信するとともに、アプリケーション更新取り消し実行手段からの割り込みを受けると、アプリケーションの更新を取り消して、更新前の状態に戻すアプリケーション更新実行手段と、更新取り消し要求通知を受信すると、アプリケーション更新実行手段に割り込むアプリケーション更新取り消し実行手段を備えたサーバと、管理端末及び複数のサーバを接続する通信回線とを有する構成としてある。
【００３２】
アプリケーションの更新処理システムをこのような構成にすれば、分散環境におけるアプリケーションの更新にあたり、少なくとも一のアプリケーションの更新に失敗した場合には、全てのサーバにおけるアプリケーションの更新を取り消し、元の状態に戻すことが可能となる。
これによって、アプリケーションの更新の一貫性を保証して安全かつ矛盾のない更新を実現し、更新に対する信頼性を高めることが可能となる。
【００３３】
本発明の請求項１１記載の更新処理システムは、管理端末が、アプリケーションの定義情報を保有する定義情報格納装置と、マスタアプリケーションを保有するマスタアプリケーション格納装置を備え、アプリケーション更新実行手段が、更新要求通知を受信すると、管理端末にアクセスし、定義情報格納装置から当該サーバに対応する定義情報を取得するとともに、この定義情報にもとづきマスタアプリケーション格納装置から対応するアプリケーションを取得して、アプリケーションの更新を実行する構成としてある。
【００３４】
アプリケーションの更新処理システムをこのような構成にすれば、管理端末において定義情報やマスタアプリケーションを集中管理することができるため、アプリケーションに頻繁に変更が生じるような場合であっても、これを容易に行うことが可能となる。
【００３５】
本発明の請求項１２記載の更新処理システムは、サーバが、アプリケーションの定義情報を保有する定義情報格納装置と、マスタアプリケーションを保有するマスタアプリケーション格納装置を備え、アプリケーション更新実行手段が、更新要求通知を受信すると、定義情報格納装置から当該サーバに対応する定義情報を取得するとともに、この定義情報にもとづきマスタアプリケーション格納装置から対応するアプリケーションを取得して、アプリケーションの更新を実行する構成としてある。
【００３６】
アプリケーションの更新処理システムをこのような構成にすれば、各サーバにおいてマスタアプリケーションを管理するため、アプリケーションの更新にあたり、データの通信容量を最小限にすることができ、更新時間を短縮することができるとともに、更新の安定性を高めることが可能となる。
【００３７】
本発明の請求項１３記載の更新処理システムは、サーバが、アプリケーションを保有するアプリケーション格納装置と、一時的にアプリケーションを保管するアプリケーション一時格納装置を備え、アプリケーション更新実行手段が、アプリケーションの更新にあたり、アプリケーション格納装置に保有されている更新対象アプリケーションを、アプリケーション一時格納装置に複製し、アプリケーション更新取り消し実行手段から割り込みを受けた場合、アプリケーション一時格納装置から複製した更新対象アプリケーションを読み出して、アプリケーション格納装置に複製することにより、アプリケーションの更新を取り消して、更新前の状態に戻す構成としてある。
【００３８】
アプリケーションの更新処理システムをこのような構成にすれば、アプリケーションの更新にあたり、更新対象アプリケーションをアプリケーション一時格納装置に退避させておくことができるため、更新に問題が発生した場合には、これを用いて容易に元の状態に戻すことが可能となる。
【００３９】
本発明の請求項１４記載の更新処理システムは、管理端末が、アプリケーションの更新結果を記憶する更新結果格納装置を備え、サーバにおけるアプリケーション更新実行手段が、アプリケーションの更新に成功した場合、管理端末におけるアプリケーション更新要求手段に更新成功通知を送信し、アプリケーション更新要求手段が、受信した更新成功通知にもとづいて、当該更新の結果を更新結果格納装置に記憶し、更新要求通知の送信対象である全てのサーバからの更新成功通知にもとづく更新結果が、更新結果格納装置に記憶された場合、更新完了通知を当該全てのサーバに送信する構成としてある。
【００４０】
アプリケーションの更新処理システムをこのような構成にすれば、各サーバにおける更新結果を更新結果格納装置に記憶することができ、これを参照することによって、全てのアプリケーションの更新が成功した場合に、はじめて各サーバに対して、更新完了通知を送信することができる。
このため、管理端末による更新完了通知の送信により、確実に全てのアプリケーションの更新が成功していることを保証することが可能となる。
【００４１】
本発明の請求項１５記載の更新処理システムは、複数のアプリケーションが、依存関係を有する構成としてある。
アプリケーションの更新処理システムをこのような構成にすれば、複数のサブアプリケーションにより構成されるアプリケーションなどの更新にあたり、そのアプリケーションの更新の一貫性を保証することが可能となる。
【００４２】
本発明の請求項１６記載のアプリケーションの更新処理プログラムは、管理端末及び複数のサーバからなる分散環境において依存関係を有した複数のアプリケーションの更新処理プログラムであって、サーバに、管理端末からアプリケーションの更新要求通知が送信されてくると、対象となるアプリケーションの更新を実行させて、この更新に失敗した場合、管理端末へ更新失敗通知を送信させ、管理端末に、サーバのうち少なくとも一のサーバから更新失敗通知が送信されてきた場合、更新要求通知の送信対象である全てのサーバへ、アプリケーションの更新取り消し要求通知を送信させ、サーバに、更新取り消し要求通知が送信されてきた場合、アプリケーションの更新を取り消させて、更新前の状態に戻させる構成としてある。
【００４３】
アプリケーションの更新処理プログラムをこのような構成にすれば、アプリケーションの更新の一貫性を保証することが可能となる。
すなわち、例えば、一のアプリケーションが、複数のサブアプリケーションにより構成されるような場合、一部のサーバにおいて、サブアプリケーションの更新に失敗した場合には、全てのサーバにおけるサブアプリケーションの更新を取り消すことができるため、不完全な更新状態を排除し、更新の信頼性を高めることが可能となる。
【００４４】
本発明の請求項１７記載のアプリケーションの更新処理プログラムは、サーバに、更新要求通知が送信されてくると、管理端末へアクセスさせ、この管理端末に備えられた定義情報格納装置から当該サーバに対応するアプリケーションの定義情報を取得させるとともに、この定義情報にもとづき管理端末に備えられたマスタアプリケーション格納装置から対応するアプリケーションを取得させて、アプリケーションを更新させる構成としてある。
【００４５】
アプリケーションの更新処理プログラムをこのような構成にすれば、アプリケーションの更新にあたり、各サーバに、管理端末からアプリケーションを受信させて、更新させることができるため、マスタアプリケーションの変更などに柔軟に対応することができるなど、その管理の容易化を図ることが可能となる。
【００４６】
本発明の請求項１８記載のアプリケーションの更新処理プログラムは、サーバに、更新要求通知が送信されてくると、サーバに備えられた定義情報格納装置から当該サーバに対応するアプリケーションの定義情報を取得させるとともに、この定義情報にもとづきサーバに備えられたマスタアプリケーション格納装置から対応するアプリケーションを取得させて、アプリケーションを更新させる構成としてある。
【００４７】
アプリケーションの更新処理プログラムをこのような構成にすれば、各サーバにおいてマスタアプリケーションを管理させ、これにもとづきサーバに更新処理を実行させることができるため、アプリケーションの更新の一貫性を保証することに加えて、安定かつ高速な更新を実現することが可能となる。
【００４８】
本発明の請求項１９記載のアプリケーションの更新処理プログラムは、サーバに、アプリケーションの更新にあたり、サーバに備えられたアプリケーション格納装置に保有されている更新対象アプリケーションを、サーバに備えられたアプリケーション一時格納装置に複製させ、更新取り消し要求通知が送信されてきた場合、アプリケーション一時格納装置から複製した更新対象アプリケーションを、アプリケーション格納装置に複製させることにより、アプリケーションの更新を取り消させて、更新前の状態に戻させる構成としてある。
【００４９】
アプリケーションの更新処理プログラムをこのような構成にすれば、各サーバに、更新対象であるアプリケーションを、アプリケーション一時格納装置に保管させることによって、一旦更新されたアプリケーションを元に戻すことができる。
【００５０】
本発明の請求項２０記載のアプリケーションの更新処理プログラムは、サーバに、アプリケーションの更新に成功した場合、管理端末へ更新成功通知を送信させ、管理端末に、送信されてきた更新成功通知にもとづいて、当該更新の結果を管理端末に備えられた更新結果格納装置に記憶させ、更新要求通知の送信対象である全てのサーバからの更新成功通知にもとづく更新結果が、更新結果格納装置に記憶された場合、更新完了通知を当該全てのサーバに送信させる構成としてある。
【００５１】
アプリケーションの更新処理プログラムをこのような構成にすれば、各サーバに、更新が成功した場合、更新成功通知を管理端末に送信させるとともに、管理端末に、各サーバから送信されてきた更新成功通知を管理させることによって、全てのサーバから更新成功通知が送信されてきた場合にのみ、各サーバに更新の完了を連絡するための更新完了通知を送信させることができる。
このため、各サーバに、この更新完了通知が送信されてこなければ、アプリケーションの更新は未完了であると認識させることができ、例えば、更新成功通知の送信後、所定の時間内に更新完了通知を受信しない場合は、アプリケーションの更新を取り消すなどの処理を実行させることができる。
これによって、複数のアプリケーションの更新にあたり、その一貫性を保証することが可能となる。
【００５２】
【発明の実施の形態】
以下、本発明の実施形態につき、図面を参照して説明する。
［第一実施形態］
まず、本発明の第一実施形態について、図１〜図４を参照して説明する。図１は、本発明の第一実施形態のアプリケーションの更新処理システムの構成を示すブロック図である。
図２、図３、及び図４は、それぞれ同システムにおける更新対象メッセージを示す図、更新結果確認情報を示す図、及び定義情報を示す図である。
【００５３】
［アプリケーションの更新処理システム］
同図に示すように、本実施形態のアプリケーションの更新処理システムは、管理端末１０、サーバ２０（２０−１，２０−２，・・・）、及び通信回線３０を有している。
［管理端末１０］
管理端末１０は、分散環境における各サーバへのアプリケーションの更新を制御する情報処理装置であり、パーソナルコンピュータなどを用いることができる。また、ワークステーション、サーバ等を用いてもかまわない。
管理端末１０は、アプリケーション更新要求手段１１、アプリケーション更新取り消し要求手段１２、更新結果格納装置１３、定義情報格納装置１４及びマスタアプリケーション格納装置１５を有している。
【００５４】
アプリケーション更新要求手段１１は、更新対象メッセージ（図２参照。）を受け取ると、各サーバ２０におけるアプリケーション更新実行手段２１（２１−１，２１−２，・・・）へ、通信回線３０を介して、アプリケーションの更新要求通知を送信する。更新対象メッセージにおける更新対象サーバ名は、更新対象とするサーバ名のリストである。
この更新対象メッセージは、アプリケーションの更新にあたり、手入力などにより管理端末１０のアプリケーション更新要求手段１１に入力される。また、あらかじめ入力された更新対象メッセージを、所定のタイミングでアプリケーション更新要求手段１１に入力するようにスケジューリングすることもできる。
【００５５】
また、アプリケーション更新要求手段１１は、更新対象メッセージにもとづいて、更新結果格納装置１３に更新結果を格納するためのテーブル（図３参照。以下、このテーブルに保有される情報を更新結果確認情報と称する場合がある。）を作成する。
更新結果確認情報における更新対象サーバ名の列には、更新対象となるサーバ名がそれぞれ入力される。また、更新結果の列には、更新対象サーバのアプリケーション更新実行手段２１から更新成功通知を受け取った場合には、更新成功を示す情報が入力される。それ以外の場合には空の値が入っている。
【００５６】
アプリケーション更新要求手段１１は、アプリケーションの更新要求通知を送信すると、各サーバのアプリケーション更新実行手段２１から更新成功通知が送信されてくるのを待つ。
この更新成功通知が送信されてくると、アプリケーション更新要求手段１１は、更新結果確認情報における対応するサーバ名についての更新結果を更新成功に書き換える。
このとき、更新結果確認情報の全てのサーバについての更新結果が更新成功になっているかを確認し、全て更新成功となっているときは、これら全てのサーバにおけるアプリケーション更新実行手段２１へ更新完了通知を送信して終了する。
また、更新対象である上記サーバの内のいずれかのサーバにおけるアプリケーション更新実行手段２１から、更新失敗通知を受け取った場合は、アプリケーション更新取り消し要求手段１２を実行する。
【００５７】
アプリケーション更新取り消し要求手段１２は、アプリケーション更新要求手段１１によって、必要時に自動的に実行される。
そして、更新結果確認情報を参照し、更新対象となっている全てのサーバ名を取得して、各サーバのアプリケーション更新取り消し実行手段２４へアプリケーション更新取り消し要求通知を送信して終了する。
なお、アプリケーション更新要求手段１１が、更新結果格納装置１３から更新対象となっている全てのサーバ名を取得し、このサーバ名をアプリケーション更新取り消し要求手段１２へ出力するようにすることも可能である。
【００５８】
更新結果格納装置１３は、上述のように更新結果確認情報を格納する記憶装置である。この更新結果確認情報は、図３に示すように、更新対象サーバ名と、そのサーバに対する更新結果を有している。
【００５９】
定義情報格納装置１４は、図４に示すようにサーバごとに更新前後のアプリケーション名を保有するテーブル（以下、このテーブルに保有される情報を定義情報と称する場合がある。）を格納する記憶装置である。
定義情報は、管理端末１０への手入力等によって、アプリケーションの更新前に予め作成されるものであり、更新対象アプリケーション及び更新後アプリケーションを特定するための情報を有するものである。
【００６０】
この定義情報におけるサーバ名は、アプリケーション更新の対象となるサーバの名前であり、定義情報の参照時に検索キーとなるものである。サーバ名ごとに指定される更新対象アプリケーション名は、そのサーバのアプリケーション格納装置２３に存在する（はずの）アプリケーション名で、ここに指定されたアプリケーションはアプリケーション更新実行手段２１により削除される。新規にアプリケーションを配置する場合などは、更新対象アプリケーション名には何も指定されない。
【００６１】
更新後アプリケーション名は、マスタアプリケーション格納装置１５に存在する（はずの）アプリケーション名で、アプリケーション更新実行手段２１によりマスタアプリケーション格納装置１５から読み取られ、アプリケーション一時格納装置２２へ保存され、その後アプリケーション格納装置２３へコピー（複製）される。
図４に示す例においては、サーバ２０−１のＭａｉｎ＿ａｐｐ１をＭａｉｎ＿ａｐｐ１．１に更新したい場合、Ｍａｉｎ＿ａｐｐ１が動作するために、サーバ２０−１にＳｕｂ＿ａｐｐ１、サーバ２０−２にＭａｉｎ＿ａｐｐ２とＳｕｂ＿ａｐｐ２が保有されていることを必要としていたが、更新後のＭａｉｎ＿ａｐｐ１．１では、サーバ２０−１にＳｕｂ＿ａｐｐ１．２、サーバ２０−２にＭａｉｎ＿ａｐｐ３とＳｕｂ＿ａｐｐ３を保有させることが必要であることを表している。
【００６２】
このように、本発明によれば、依存関係を有するような複数のアプリケーションの更新であっても、図４のように各アプリケーションを定義し、これにもとづき本発明の更新処理を行うことにより、その更新の一貫性を確保することが可能である。もちろん、依存関係のない複数のアプリケーションを同時に更新することも可能である。
マスタアプリケーション格納装置１５は、更新後アプリケーションのマスタデータを格納する記憶装置である。
【００６３】
［サーバ２０］
サーバ２０は、分散環境において、複数のアプリケーションのうちの一部を保有し、これを実行するものである。
複数のサブアプリケーションによって一のアプリケーションが構成されるような場合においては、サーバ２０は、そのサブアプリケーションのうちの一部を保有し、これを実行することにより、当該一のアプリケーションを他のサーバと共に共同して実行する。
図１においては、サーバ２０として、サーバ２０−１及び２０−２のみを図示しているが、本実施形態のアプリケーションの更新処理システムを、より多くのサーバにより構成することもできる。
このサーバ２０としては、ワークステーションや、サーバ等の情報処理装置を用いることができる。
【００６４】
各サーバ２０は、アプリケーション更新実行手段２１（２１−１，２１−２，・・・）、アプリケーション一時格納装置２２（２２−１，２２−２，・・・）、アプリケーション格納装置２３（２３−１，２３−２，・・・）、及びアプリケーション更新取り消し実行手段２４（２４−１，２４−２，・・・）を有している。
【００６５】
アプリケーション更新実行手段２１は、管理端末１０におけるアプリケーション更新要求手段１１から更新要求通知を受け取ると、管理端末１０における定義情報格納装置１４から通信回線３０を介して定義情報を取得し、自サーバにおいて更新が必要なアプリケーションを認識する。
そして、更新対象アプリケーションをアプリケーション格納装置２３から、アプリケーション一時格納装置２２へコピーする。更新対象となるアプリケーションがない場合（即ち新規にアプリケーションを配備する場合など）は、このコピー操作は行わない。
【００６６】
次に、更新後アプリケーション名を定義情報から取得し、この更新後アプリケーション名にもとづいて、管理端末１０におけるマスタアプリケーション格納装置１５から更新後アプリケーションを取得し、アプリケーション一時格納装置２２へ保存する。
更新後アプリケーションがない場合（即ち既存アプリケーションの削除のみを行う場合など）は、この操作は行わない。
【００６７】
そして、アプリケーション格納装置２３から更新対象アプリケーションを削除し、アプリケーション一時格納装置２２から更新後アプリケーションをアプリケーション格納装置２３へコピーする。
ここまでの操作が全て無事に完了すると、アプリケーション更新実行手段２１は、管理端末１０におけるアプリケーション更新要求手段１１へ通信回線３０を介して更新成功通知を送信し、アプリケーション更新要求手段１１から更新完了通知が送信されてくるのを待つ。
そして、アプリケーション更新実行手段２１は、管理端末１０におけるアプリケーション更新要求手段１１から更新完了通知を受け取ると終了する。
【００６８】
アプリケーション更新実行手段２１は、上記操作中にエラーが発生した場合は、管理端末１０のアプリケーション更新要求手段１１へ更新失敗通知を送信し、アプリケーション更新取り消し実行手段２４からの割り込み（割り込み通知の入力）を待つ。
また、上記操作中にアプリケーション更新取り消し実行手段２４から割り込み通知を受けた場合は、更新取り消し処理を行い終了する。
【００６９】
アプリケーション一時格納装置２２は、更新対象アプリケーション及び更新後アプリケーションを一時的に格納する記憶装置である。
アプリケーション格納装置２３は、アプリケーションを格納する記憶装置である。アプリケーションの実行にあたっては、このアプリケーション格納装置２３に格納されているアプリケーションが用いられる。
アプリケーション更新取り消し実行手段２４は、管理端末１０のアプリケーション更新取り消し要求手段１２からアプリケーション更新取り消し要求通知を受け取ると、アプリケーション更新実行手段２１に割り込み通知を出力して終了する。
【００７０】
［通信回線３０］
通信回線３０は、従来公知の任意好適な公衆回線、商業回線又は専用回線を用いることができる。また管理端末１０及び各サーバ２０それぞれの間においては、同一又は別個の通信回線で構成することができる。
さらに、通信回線３０は、管理端末１０及び各サーバ２０のそれぞれの間を、無線あるいは有線で接続可能な回線であり、例えば、公衆回線網、専用回線網、インターネット回線網及びイントラネット網により構成することができる。
【００７１】
［アプリケーションの更新処理システムの処理手順］
次に、本実施形態の更新処理システムにおける処理手順について、図５〜図１０のフローチャートを参照して説明する。
図５は、本実施形態のアプリケーションの更新処理システムにおけるアプリケーション更新要求手段１１の処理手順を、図６は、アプリケーション更新実行手段２１の処理手順を、図７は、アプリケーション更新取り消し要求手段１２の処理手順を、図８は、アプリケーション更新取り消し実行手段２４の処理手順を、それぞれ示すフローチャートである。
図９は、同システムにおける更新成功時の各手段の処理手順の関連を示す動作手順図であり、図１０は、更新失敗時の各手段の処理手順の関連を示す動作手順図である。
【００７２】
［アプリケーション更新要求手段１１の処理手順］
まず、図５を参照して、管理端末１０におけるアプリケーション更新要求手段１１の処理手順について説明する。
この処理の前提として、管理端末１０への人間の手入力などによって、定義情報及びマスタアプリケーションが作成され、それぞれ定義情報格納装置１４、マスタアプリケーション格納装置１５へ格納される。
また、管理端末１０への人間の手入力などにより、図２のような更新対象メッセージが作成され、あるトリガで管理端末１０のアプリケーション更新要求手段１１に通知される。このトリガは人間の操作により発生させても、予め管理端末１０でスケジューリングしておいて、指定した時刻になったときに発生するようにしてもよい。
これに対して、アプリケーション更新要求手段１１は、更新結果格納装置１３に、図３のような更新結果確認情報を作成する（ステップ１０）。
【００７３】
すなわち、アプリケーション更新要求手段１１は、受け取った更新対象メッセージにもとづいて、作成した更新結果確認情報における各サーバ名の列へ、サーバ名を入力し、更新結果については空のままとする（ステップ１１）。
次に、アプリケーション更新要求手段１１は、更新対象メッセージに含まれる各サーバ（図３においては、サーバ２０−１及び２０−２）におけるアプリケーション更新実行手段２１へ、アプリケーション更新要求通知を通信回線３０を介して送信する（ステップ１２）。
【００７４】
そして、アプリケーション更新要求手段１１は、アプリケーション更新要求通知を送信後、サーバ２０−１及び２０−２におけるアプリケーション更新実行手段２１から更新結果通知が送信されてくるのを待つ（ステップ１３）。
次に、アプリケーション更新要求手段１１は、サーバ２０−１、あるいはサーバ２０−２のアプリケーション更新実行手段２１から更新結果通知を受信し、この更新結果通知が、更新成功通知であるか、更新失敗通知であるかを判別する（ステップ１４）。
更新結果通知が更新成功通知である場合、アプリケーション更新要求手段１１は、更新結果格納装置１３の更新結果確認情報に、更新成功通知を送信したサーバ名に対応する更新結果の欄を更新成功に書き換える（ステップ１５）。
【００７５】
次に、アプリケーション更新要求手段１１は、更新結果格納装置１３の更新結果確認情報を参照し、サーバ２０−１、及び２０−２の更新結果が共に更新成功になっているかを確認して（ステップ１６）、全てのサーバの更新結果が成功となっているか否かを判断する（ステップ１７）。
全てのサーバの更新結果が成功である場合、すなわち、サーバ２０−１及び２０−２の更新結果が共に更新成功である場合は、サーバ２０−１及び２０−２のアプリケーション更新実行手段２１へ更新完了通知を送信して終了する（ステップ１８）。
【００７６】
少なくとも上記いずれかのサーバについて、更新結果として更新成功が入力されていない場合は、再びステップ１３における更新結果通知待ちを行う。そして、各サーバから所定の時間までに更新結果通知が送信されてこない場合は、アプリケーション更新取り消し要求手段１２を実行して終了する（ステップ１９）。また、ステップ１４において、更新結果通知が、更新失敗通知であると判断される場合、すなわち、サーバ２０−１又は２０−２のいずれかのアプリケーション更新実行手段２１が、アプリケーション更新要求手段１１に更新失敗通知を送信してきた場合も、アプリケーション更新要求手段１１は、アプリケーション更新取り消し要求手段１２を実行して終了する。
【００７７】
［アプリケーション更新実行手段２１］
次に、図６を参照して、管理端末１０におけるアプリケーション更新実行手段２１の処理手順について説明する。
まず、各サーバ２０におけるアプリケーション更新実行手段２１は、アプリケーション更新要求手段１１からアプリケーションの更新要求通知を受け取る（ステップ３０）と、管理端末１０における定義情報格納装置１４から定義情報を取得する（ステップ３１）。
【００７８】
定義情報の取得に失敗した場合は、アプリケーション更新実行手段２１は、管理端末１０におけるアプリケーション更新要求手段１１へ、更新失敗通知を通信回線３０を介して送信し、アプリケーション更新取り消し実行手段２４による割り込み通知の入力を待つ（ステップ３８）。
そして、この割り込み通知を受けた場合は、更新取り消し処理を実行する（ステップ３９）。
更新失敗通知を送信後、所定の時間内に割り込み通知を受けなかった場合も、更新取り消し処理を実行する（ステップ３９）。
さらに、ステップ３１の実行中に、アプリケーション更新取り消し実行手段２４から割り込み通知を受け取った場合も、処理を中断して終了する（ステップ３９）。これらの場合には、更新取り消し処理としては特に何も行わない。
【００７９】
次に、各サーバ２０におけるアプリケーション更新実行手段２１は、ステップ３１において取得した定義情報を参照し、サーバ名を検索キーとして更新対象アプリケーション名、更新後アプリケーション名を取り出す。
更新対象のアプリケーションが定義情報に指定されていて、これを取得することができると、アプリケーション更新実行手段２１は、更新対象のアプリケーションをアプリケーション格納装置２３から取り出して、アプリケーション一時格納装置２２へコピーする（ステップ３２）。
なお、ステップ３１において、サーバ名を検索キーとして、管理端末１０における定義情報格納装置１４から、更新対象アプリケーション名、更新後アプリケーション名を取得し、ステップ３２における当該処理を省略することもできる。
【００８０】
更新対象アプリケーション名の取得に失敗した場合、自分のサーバ名が定義情報に存在しない場合、更新対象アプリケーションがアプリケーション格納装置２３に存在しない場合、又は、更新対象アプリケーションの保存に失敗した場合等は、管理端末１０におけるアプリケーション更新要求手段１１へ更新失敗通知を通信回線３０を介して送信する（ステップ３８）。
また、ステップ３２の実行中に、アプリケーション更新取り消し実行手段２４から割り込み通知を入力した場合は、処理を中断して終了する（ステップ３９）。これらの場合は、更新取り消し処理としては特に何も行わない。
【００８１】
次に、各サーバ２０におけるアプリケーション更新実行手段２１は、更新後アプリケーションが定義情報に指定されていて、これを取得することができると、更新後アプリケーションを管理端末１０のマスタアプリケーション格納装置１５から通信回線３０を介して取得し、アプリケーション一時格納装置２２へ保存する（ステップ３３）。
管理端末１０におけるマスタアプリケーション格納装置１５に更新後アプリケーションが見つからない場合、又は更新後アプリケーションをアプリケーション一時格納装置２２へ保存するのに失敗した場合等は、管理端末１０におけるアプリケーション更新要求手段１１へ、更新失敗通知を通信回線３０を介して送信する（ステップ３８）。
また、ステップ３３の実行中に、アプリケーション更新取り消し実行手段２４から割り込み通知を受信した場合は、処理を中断して終了する（ステップ３９）。これらの場合は、更新取り消し処理としては特に何も行わない。
【００８２】
次に、各サーバ２０におけるアプリケーション更新実行手段２１は、定義情報に更新対象アプリケーションが指定されている場合、アプリケーション格納装置２３から更新対象アプリケーションを削除する（ステップ３４）。
更新対象アプリケーションの削除に失敗した場合は、管理端末１０のアプリケーション更新要求手段１１へ、更新失敗通知を通信回線３０を介して送信する（ステップ３８）。
また、ステップ３４の実行中に、アプリケーション更新取り消し実行手段２４から割り込み通知を受信した場合は処理を中断し、更新を取り消して終了する（ステップ３９）。これらの場合、更新取り消し処理において、アプリケーション一時格納装置２２から更新対象アプリケーションを取り出し、アプリケーション格納装置２３へ保存する処理を行う。
【００８３】
次に、各サーバ２０におけるアプリケーション更新実行手段２１は、アプリケーション一時格納装置２２から、更新後アプリケーションを読み取り、アプリケーション格納装置２３へコピーする（ステップ３５）。
更新後アプリケーションのコピーに失敗した場合は、管理端末１０のアプリケーション更新要求手段１１へ、更新失敗通知を通信回線３０を介して送信する（ステップ３８）。
また、ステップ３５の実行中に、アプリケーション更新取り消し実行手段２４から割り込み通知を受信した場合は処理を中断し、更新を取り消して終了する（ステップ３９）。
これらの場合、更新取り消し処理において、アプリケーション格納装置２３から更新後アプリケーションを削除し、アプリケーション一時格納装置２２から更新対象アプリケーションを取り出して、アプリケーション格納装置２３へ保存する処理を行う。
【００８４】
次に、各サーバ２０におけるアプリケーション更新実行手段２１は、管理端末１０のアプリケーション更新要求手段１１へ更新成功通知を送信し、アプリケーション更新要求手段１１から更新完了通知が送信されてくるのを待つ（ステップ３６）。
このときアプリケーション更新取り消し実行手段２４から割り込み通知を受信した場合は、処理を中断し、更新を取り消して終了する（ステップ３９）。
また、更新成功通知送信後、所定の時間内に更新完了通知が送信されてこない場合も、更新を取り消して終了する（ステップ３９）。
【００８５】
これらの場合、更新取り消し処理において、アプリケーション格納装置２３から更新後アプリケーションを削除し、アプリケーション一時格納装置２２から更新対象アプリケーションを取り出して、アプリケーション格納装置２３へ保存する処理を行う。
各サーバ２０におけるアプリケーション更新実行手段２１は、管理端末１０におけるアプリケーション更新要求手段１１から更新完了通知を受信すると（ステップ３７）、処理を終了する。
【００８６】
［アプリケーション更新取り消し要求手段１２］
次に、図７を参照して、管理端末１０におけるアプリケーション更新取り消し要求手段１２の処理手順について説明する。
アプリケーション更新取り消し要求手段１２は、アプリケーション更新要求手段１１により起動され、更新結果確認情報を参照して、更新対象となっている全てのサーバ名（図３においては、サーバ２０−１及び２０−２）を取得する（ステップ５０）。
この更新対象となっている全てのサーバ名の取得先として、定義情報格納装置１４を用いることもできる。
次に、アプリケーション更新取り消し要求手段１２は、ステップ５０において取得した全てのサーバ２０におけるアプリケーション更新取り消し実行手段２４へ、アプリケーション更新取り消し要求通知を通信回線３０を介して送信し、処理を終了する（ステップ５１）。
【００８７】
［アプリケーション更新取り消し実行手段２４］
次に、図８を参照して、管理端末１０におけるアプリケーション更新取り消し実行手段２４の処理手順について説明する。
アプリケーション更新取り消し実行手段２４は、管理端末１０におけるアプリケーション更新取り消し要求手段１２からアプリケーション更新取り消し要求通知を受け取ると（ステップ７０）、アプリケーション更新実行手段２１へ割り込み通知を出力して（ステップ７１）、処理を終了する。
【００８８】
［アプリケーションの更新が正常に完了する場合の各手段の処理手順の関連］
次に、図９を参照して、アプリケーションの更新が正常に完了する場合の、各手段の処理手順について、その関連を中心に説明する。
まず、アプリケーション更新要求手段１１が、図２に示すような更新対象メッセージの入力を受けると（ステップ９０）、この更新対象メッセージにもとづいて、更新結果格納装置１３に図３に示すような更新結果確認情報を作成する（ステップ９１）。
そして、更新対象メッセージに更新対象サーバ名として保有されている全てのサーバにおけるアプリケーション更新実行手段２１へ、アプリケーションの更新要求通知を送信する（ステップ９２）。
【００８９】
アプリケーション更新要求手段１１から更新要求通知を受信したアプリケーション更新実行手段２１−１は、上述のステップ３０〜ステップ３５に示すようなアプリケーションの更新処理を実行する（ステップ９３）。
そして、更新が成功すると、アプリケーション更新要求手段１１へ更新成功通知を送信して、アプリケーション更新要求手段１１から更新完了通知が送信されてくるまで待機する（ステップ９４）。
アプリケーション更新実行手段２１−１から更新成功通知を受信したアプリケーション更新要求手段１１は、更新結果確認情報にサーバ２０−１におけるアプリケーションの更新が成功したことを登録する（ステップ９５）。この際、全てのサーバについての更新結果が成功となったかどうかの確認が行われるが、このときはまだ、サーバ２０−２については、更新結果が空のままであり、更新は未完了であると判断される。
【００９０】
同様にして、アプリケーション更新要求手段１１から更新要求通知を受信したアプリケーション更新実行手段２１−２は、アプリケーションの更新処理を実行し（ステップ９６）、アプリケーション更新要求手段１１へ更新成功通知を送信して待機する（ステップ９７）。
アプリケーション更新要求手段１１は、更新結果確認情報にサーバ２０−２におけるアプリケーションの更新が成功したことを登録する（ステップ９８）。そして、全ての更新対象サーバの更新結果が成功となっているか否かを確認する。
【００９１】
この場合は、全ての更新対象サーバの更新結果が更新成功となっているため、アプリケーション更新要求手段１１は、アプリケーション更新実行手段２１−１とアプリケーション更新実行手段２１−２へ、更新完了通知を送信する（ステップ９９）。
そして、更新完了通知を受信したアプリケーション更新実行手段２１−１とアプリケーション更新実行手段２１−２は、処理を終了し、これによってアプリケーションの更新処理は終了する。
【００９２】
［アプリケーションの更新が失敗する場合の各手段の処理手順の関連］
次に、図１０を参照して、アプリケーションの更新が失敗する場合の、各手段の処理手順について、その関連を中心に説明する。
まず、アプリケーション更新要求手段１１に更新対象メッセージが入力される動作から、アプリケーション更新要求手段１１がアプリケーション更新実行手段２１−１から送信されてきた更新成功通知にもとづいて、更新結果確認情報にサーバ２０−１における更新が成功したことを登録するまでの動作（ステップ１１０〜ステップ１１５）は、図９に示す動作（ステップ９０〜ステップ９５）と同様である。
【００９３】
次に、アプリケーション更新実行手段２１−２におけるアプリケーションの更新処理（ステップ１１６）の実行中に、エラーが発生したとする（ステップ１１７）。
このとき、アプリケーション更新実行手段２１−２は、アプリケーション更新要求手段１１へ更新失敗通知を送信して、アプリケーション更新取り消し実行手段２４−２からの割り込み通知を待つ（ステップ１１８）。
【００９４】
更新失敗通知を受信したアプリケーション更新要求手段１１は、アプリケーション更新取り消し要求手段１２を実行する（ステップ１１９）。
アプリケーション更新取り消し要求手段１２は、更新結果確認情報から更新対象の全てのサーバ名であるサーバ２０−１及びサーバ２０−２を取得し、それぞれにおけるアプリケーション更新取り消し実行手段２４に対して、更新取り消し要求通知を送信する（ステップ１２０）。
【００９５】
更新取り消し要求通知を受信したアプリケーション更新取り消し実行手段２４−１は、アプリケーション更新実行手段２１−１へ割り込み通知を出力する（ステップ１２１）。
割り込み通知を受け取った、アプリケーション更新実行手段２１−１は、上述のように、実行中であった処理ステップに応じた更新取り消し処理を実行して終了する（ステップ１２２）。
【００９６】
同様にして、更新取り消し要求通知を受信したアプリケーション更新取り消し実行手段２４−２は、アプリケーション更新実行手段２１−２へ割り込み通知を出力し（ステップ１２３）、アプリケーション更新実行手段２１−２は、更新取り消し処理を実行して終了する（ステップ１２４）。
【００９７】
以上説明したように、本実施形態のアプリケーションの更新処理システムによれば、複数サーバのアプリケーション、特にサーバ間で互いに依存しているサブアプリケーションを同時に更新することができ、また更新失敗時に更新前の状態に確実に戻すことが可能となる。
【００９８】
［第二実施形態］
次に、本発明の第二実施形態について、図１１を参照して説明する。同図は、本実施形態のアプリケーションの更新処理システムの構成を示すブロック図である。
本実施形態は、定義情報とマスタアプリケーションが、予め更新対象サーバに保有されている点で第一実施形態と異なる。
【００９９】
すなわち、図１１に示すように、本実施形態のアプリケーションの更新処理システムは、管理端末１０、サーバ２０、及び通信回線３０により構成されているが、この管理端末１０は、アプリケーション更新要求手段１１、アプリケーション更新取り消し要求手段１２及び更新結果格納装置１３を有していればよい。
また、本実施形態のサーバ２０は、図１に示す第一実施形態の構成に加えて、定義情報格納装置２５及びマスタアプリケーション格納装置２６を有している。この定義情報格納装置２５及びマスタアプリケーション格納装置２６に格納される情報は、第一実施形態と同様である。
【０１００】
本実施形態のサーバ２０におけるアプリケーション更新実行手段２１は、管理端末１０におけるアプリケーション更新要求手段１１から更新要求通知を受信すると、定義情報格納装置２５から図４に示すようなアプリケーションの定義情報を取得することができる。
このとき、定義情報格納装置２５における定義情報を、当該サーバの情報のみを保有するものとすることができる。このようにすれば、各サーバにおいて、不要な情報を保有させる必要がなくなる。
一方、全てのサーバ２０に、全てのサーバについての情報を保有する定義情報をもたせるようにすれば、サーバごとに専用の定義情報を作成する煩雑さを省略することができる。
【０１０１】
また、アプリケーション更新実行手段２１は、定義情報から更新後アプリケーション名を取得すると、この更新後アプリケーション名にもとづいて、更新後アプリケーションをマスタアプリケーション格納装置２６から取得し、アプリケーション一時格納装置２２に格納することができる。
このとき、マスタアプリケーション格納装置２６に、当該サーバに必要なマスタアプリケーションのみを保有させておくようにすることもできる。
なお、本実施形態において、更新後アプリケーションをアプリケーション一時格納装置２２に格納することなく、アプリケーション格納装置２３から更新対象アプリケーションを削除した後、マスタアプリケーション格納装置２６から直接更新後アプリケーションを読み取って、アプリケーション格納装置２３に格納するようにすることも好ましい。
【０１０２】
その他の構成については、第一実施形態と同様であり、その処理手順についても、定義情報とマスタアプリケーションの取得先が異なる点を除いて、第一実施形態と同様である。もちろん、第二実施形態におけるサーバ２０も、複数であることを想定している。
【０１０３】
以上説明したように、本実施形態のアプリケーションの更新処理システムによれば、定義情報及びマスタアプリケーションを各サーバに格納しているため、当該分散環境が、多数のサーバにより構築されるような場合には、ネットワーク負荷を軽減することが可能となる。
また、管理端末と各サーバ間の通信量が減少するため、更新処理速度を向上させることができる。
【０１０４】
上記の実施形態における更新結果情報の登録や、更新成功通知の送信等は、アプリケーションの更新処理プログラムにより実行される。
このアプリケーションの更新処理プログラムは、コンピュータの各構成要素に指令を送り、所定の処理、例えば、更新結果情報の登録処理や、更新成功通知の送信処理等を行わせる。
これによって、これらの処理は、アプリケーションの更新処理プログラムとコンピュータとが協働した管理端末１０やサーバ２０等により実現される。
【０１０５】
なお、アプリケーションの更新処理プログラムは、コンピュータのＲＯＭやハードディスクに記憶させる他、コンピュータ読み取り可能な記憶媒体、たとえば、外部記憶装置及び可搬記憶媒体等に格納することができる。
外部記憶装置とは、磁気ディスク等の記憶媒体を内蔵し、例えば管理端末１０などに外部接続される記憶増設装置をいう。一方、可搬記憶媒体とは、記憶媒体駆動装置（ドライブ装置）に装着でき、かつ、持ち運び可能な記憶媒体であって、たとえば、ＣＤ−ＲＯＭ、フレキシブルディスク、メモリカード、光磁気ディスク等をいう。
【０１０６】
そして、記憶媒体に記憶されたプログラムは、コンピュータのＲＡＭにロードされて、ＣＰＵにより実行される。この実行により、上述した各実施形態のアプリケーションの更新処理システムの機能が実現される。
さらに、コンピュータでアプリケーションの更新処理プログラムをロードする場合、他のコンピュータで保有されたアプリケーションの更新処理プログラムを、通信回線を利用して自己の有するＲＡＭや外部記憶装置にダウンロードすることもできる。
このダウンロードされたアプリケーションの更新処理プログラムも、ＣＰＵにより実行され、本発明における更新結果情報の登録処理や、更新成功通知の送信処理等を実現する。
【０１０７】
なお、本発明は以上の実施形態に限定されるものではなく、本発明の範囲内において、種々の変更実施が可能であることは言うまでもない。
例えば、図４の定義情報に、更新の対象として、アプリケーションの実行に必要な画面、帳票、データベース等、各種情報についての名称も保有させ、これらも併せて更新可能としたり、定義情報に更新順序情報を持たせ、所定の順番で各サブアプリケーションの更新可能とするなど適宜設計変更できるものである。
【０１０８】
【発明の効果】
以上のように、本発明によれば、一つのアプリケーションとして機能するために異なる複数のサーバ上のアプリケーションを必要とするような分散アプリケーション環境や、負荷分散などの目的で、複数のサーバに同じアプリケーションが存在するような環境において、アプリケーションの更新、配置を安全に行うことが可能となる。
すなわち、複数サーバのアプリケーション、特にサーバ間で互いに依存しているサブアプリケーションを同時に更新することができ、また更新失敗時に更新前の状態に確実に戻すことが可能となる。
【０１０９】
また、あらかじめ作成した定義情報にもとづいて更新処理を行うため、分散したアプリケーションのバージョン情報の把握や、適用しているパッチの情報を容易に把握することが可能となる。
さらに、定義情報及びマスタアプリケーションを各サーバに格納すれば、当該分散環境が、多数のサーバにより構築されるような場合には、ネットワーク負荷を軽減することが可能となる。
また、管理端末と各サーバ間の通信量が減少するため、更新処理速度を向上させることができる。
【０１１０】
加えて、アプリケーションの更新処理プログラムは、コンピュータの各構成要素へ所定の指令を送ることにより、この更新結果情報の登録機能や、更新成功通知の送信機能等を実現させることができる。
これによって、これらの機能等は、アプリケーションの更新処理プログラムとコンピュータとが協働した管理端末やサーバ等により実現可能である。
【図面の簡単な説明】
【図１】本発明の第一実施形態のアプリケーションの更新処理システムの構成を示すブロック図である。
【図２】本発明の各実施形態のアプリケーションの更新処理システムにおける更新対象メッセージを示す図である。
【図３】本発明の各実施形態のアプリケーションの更新処理システムにおける更新結果確認情報を示す図である。
【図４】本発明の各実施形態のアプリケーションの更新処理システムにおける定義情報を示す図である。
【図５】本発明の第一実施形態のアプリケーションの更新処理システムにおけるアプリケーション更新要求手段の処理手順を示すフローチャートである。
【図６】本発明の第一実施形態のアプリケーションの更新処理システムにおけるアプリケーション更新実行手段の処理手順を示すフローチャートである。
【図７】本発明の第一実施形態のアプリケーションの更新処理システムにおけるアプリケーション更新取り消し要求手段の処理手順を示すフローチャートである。
【図８】本発明の第一実施形態のアプリケーションの更新処理システムにおけるアプリケーション更新取り消し実行手段の処理手順を示すフローチャートである。
【図９】本発明の第一実施形態のアプリケーションの更新処理システムにおける更新成功時の各手段の処理手順の関連を示す動作手順図である。
【図１０】本発明の第一実施形態のアプリケーションの更新処理システムにおける更新失敗時の各手段の処理手順の関連を示す動作手順図である。
【図１１】本発明の第二実施形態のアプリケーションの更新処理システムの構成を示すブロック図である。
【符号の説明】
１０　管理端末
１１　アプリケーション更新要求手段
１２　アプリケーション更新取り消し要求手段
１３　更新結果格納装置
１４　定義情報格納装置
１５　マスタアプリケーション格納装置
２０（２０−１，２０−２）　サーバ
２１（２１−１，２１−２）　アプリケーション更新実行手段
２２（２２−１，２２−２）　アプリケーション一時格納装置
２３（２３−１，２３−２）　アプリケーション格納装置
２４（２４−１，２４−２）　アプリケーション更新取り消し実行手段
２５（２５−１，２５−２）　定義情報格納装置
２６（２６−１，２６−２）　マスタアプリケーション格納装置
３０　通信回線
【図１】
2004086769.tif 000003
【図２】
2004086769.tif 000004
【図３】
2004086769.tif 000005
【図４】
2004086769.tif 000006
【図５】
2004086769.tif 000007
【図６】
2004086769.tif 000008
【図７】
2004086769.tif 000009
【図８】
2004086769.tif 000010
【図９】
2004086769.tif 000011
【図１０】
2004086769.tif 000012
【図１１】
2004086769.tif 000013