JPH0962626A - 分散処理システムのオンラインテスト方法 - Google Patents

分散処理システムのオンラインテスト方法

Info

Publication number
JPH0962626A
JPH0962626A JP7211561A JP21156195A JPH0962626A JP H0962626 A JPH0962626 A JP H0962626A JP 7211561 A JP7211561 A JP 7211561A JP 21156195 A JP21156195 A JP 21156195A JP H0962626 A JPH0962626 A JP H0962626A
Authority
JP
Japan
Prior art keywords
program module
generation
message
module
processing
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
JP7211561A
Other languages
English (en)
Inventor
Hiroshi Yamamoto
博 山本
Hideji Nishijima
英児 西島
Haruhito Kawashima
治仁 川島
Katsumi Kono
克己 河野
Kazumune Fujiwara
和統 藤原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP7211561A priority Critical patent/JPH0962626A/ja
Publication of JPH0962626A publication Critical patent/JPH0962626A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

(57)【要約】 【目的】 ソフトウエア改修時のテストをオンライン無
停止でかつ安全に実現する。 【構成】 共通伝送媒体20に複数の処理装置11〜1
6が結合された計算機システムに於いて、処理装置内に
同一内容の処理を行う異なるバージョンのアプリケーシ
ョンモジュール114、116がインストールされる。
オンライン稼働中の新バージョンモジュールに異常があ
ったとき、旧バージョンモジュール116をテストモー
ドで動作させる。テスト管理部306は、両バージョン
の出力結果を収集、比較し、オンライン無停止でのテス
トを実現する。テスト管理部306がプログラム異常を
検知した場合、新バージョンモジュール114のオンラ
イン稼働を停止し、旧バージョンモジュールをオンライ
ン稼働させることにより、復旧を行なう。 【効果】 バージョンアップ後にオンライン稼働を開始
した新バージョンモジュールの障害発生時に、旧バージ
ョンモジュールへの復旧を容易に実現することが可能と
なる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、分散処理システムに於
けるプログラム動作の診断方法に係り、特に、システム
内のプログラム、並びにハードウェアのバージョンアッ
プ時におけるオンラインでの診断方法に関する。
【0002】
【従来の技術】分散処理システムでは、複数の処理装置
がネットワークを介して接続され、これらの処理装置上
で動作するプログラムが互いに情報を交換し合ってある
与えられた処理を行っている。従来、このような分散処
理システムに於いて、そのシステム内のソフトウエア、
ハードウエアのバージョンアップなど行う場合、一般に
は、たとえ、そのバージョンアップがシステム内の一部
の処理装置、あるいはプログラムを対象としたものであ
っても、システム全体を停止して作業が行われていた。
また、例えば、プログラムのバージョンアップ作業で
は、プログラム改修後の新しいバージョンのプログラム
をオンライン状態で稼働させる前に、オンライン実環境
にて、テスト稼働が行われる。そして、オンライン実環
境での機能検証(オンラインテスト)が行なわれた後、
新しいバージョンのプログラムによるオンライン稼働が
開始される。このため、バージョンアップ時は、長時間
に渡ってオンライン業務の支障をきたしていた。
【0003】
【発明が解決しようとする課題】上記従来技術に述べた
ようなバージョンアップ作業におけるバージョン切り替
え/復旧の方法、あるいはオンラインテストの方法は、
システムを停止させずにそれらの作業を行うことを可能
にするという点について配慮がなされていなかった。こ
のため、バージョンアップ作業中は、システム内でのユ
ーザ業務は許可されないか、たとえ許可されたとしても
その業務は、著しく制限されたものであった。また、バ
ージョンアップ作業そのものについても、ユーザ業務の
停止、あるいは、制限による影響を抑えるために、その
作業は、ユーザがシステムを使用していない時間帯、例
えば、夜間、休日に行われていた。従って、バージョン
アップ作業は、それを行うシステム管理者にとっても、
不便なものであった。
【0004】更に、バージョンアップが行われ、新しい
プログラムのオンライン稼働が開始された後に、その新
しいバージョンのプログラムに異常が発生したような場
合、従来は、旧いバージョンのプログラムによりシステ
ムの復旧が行われているが、この旧いバージョンのプロ
グラムへの復旧についても、システム内のユーザ業務に
支障を与えることなく円滑に行うことは、困難であっ
た。
【0005】本発明の目的は、分散処理システムに於い
て、そのシステム内のソフトウエア、ハードウエアのバ
ージョンアップ作業を、ユーザの業務を継続しながら安
全に行うことの可能な保守管理方法を実現することにあ
る。
【0006】
【課題を解決するための手段】上記目的を達成するた
め、本発明によるオンラインテスト方法では、同一内容
の処理を行い世代の異なる2つのプログラムモジュール
(または、アプリケーションモジュール)をそれぞれい
ずれかの処理装置に配置し、一方の世代のプログラムモ
ジュールをテストモードで動作させるとともに、他方の
世代のプログラムモジュールをオンラインモードでオン
ライン稼働させ、任意の処理装置でこれら2つのプログ
ラムモジュールの処理結果のメッセージを収集し、受信
したメッセージ内容に基づいてプログラムモジュールの
診断を行う。本発明のより好ましい態様では、各処理装
置は、自処理装置内のプログラムモジュールによる処理
結果に、そのプログラムモジュールを特定する属性情報
と、世代情報とを付加してメッセージを生成し、共通伝
送媒体上に送出する。診断を行う任意の処理装置では、
これらの属性情報、世代情報に基づいてメッセージを蓄
積し、診断を行う。また、テストモードで動作している
プログラムモジュールの処理結果のメッセージには、そ
のメッセージがテストモードで動作中のプログラムモジ
ュールの処理結果であることを示すテストフラグが付加
される。オンライン稼働中のプログラムモジュールを持
つ処理装置では、受信したメッセージの中で、テストフ
ラグが付加されたメッセージを廃棄し、オンラインモー
ドのプログラムモジュールによる処理結果のメッセージ
のみを用いて処理を行う。
【0007】また、本発明の他の態様においては、第1
の世代のプログラムモジュールと、このプログラムモジ
ュールよりも世代の新しい第2の世代のプログラムモジ
ュールとをシステム内の処理装置に配置しておき、第2
の世代のプログラムモジュールをオンラインモードでオ
ンライン稼働させる。そして、第2の世代のプログラム
モジュールの処理に異常が検出されたことに応じて第1
の世代のプログラムモジュールのテストモードでの動作
を開始させる。任意の処理装置で、第1の世代のプログ
ラムモジュールの処理結果と、第2の世代のプログラム
モジュールの処理結果とを収集し、両者を比較して診断
を行う。この診断の結果異常が検出されたときには、第
2の世代のプログラムモジュールのオンライン稼働を停
止させ、第1の世代のプログラムモジュールの動作モー
ドをオンラインモードに切り替え、第1の世代のプログ
ラムモジュールによるオンライン稼働を開始する。
【0008】
【作用】本発明によれば、同一内容の処理を行う世代の
異なるプログラムモジュールをそれぞれ異なる動作モー
ドで動作させることで、同一システム内において、異な
る世代のプログラムモジュールによる処理を並行して動
作させることが可能となり、これらプログラムモジュー
ルをオンライン環境下でテストすることができる。ま
た、バージョンアップされた新しい世代のプログラムモ
ジュールによるオンライン稼働が開始された後も、旧い
世代のプログラムモジュールをシステム内に配置してお
き、新しい世代のプログラムモジュールの異常が検出さ
れたときに、旧い世代のプログラムモジュールを起動し
てそれら両者の処理結果を比較してその動作の検証を行
い、それらの間の不一致により異常が検出されれば、新
しいバージョンのオンライン稼働を停止し、旧い世代の
プログラムモジュールをオンライン状態にすることで、
プログラムモジュールのバージョンアップ後の障害に対
する復旧処理を容易に行うことが可能になる。
【0009】
【実施例】以下、本発明につて、実施例に基づき詳細に
説明する。
【0010】図1は、本発明が適用される分散処理シス
テムの全体構成を示すブロック図である。図1におい
て、11、12、13、14、15、および16は、そ
の内部に設けられたメモリに、所定の処理を達成するた
めのアプリケーションモジュールを格納してこれを実行
する処理装置である。20は、ネットワークバスであ
る。各処理装置11−16は、ネットワークバス20に
接続されており、このネットワークバス20を介して相
互にメッセージを送受信を行う。処理装置11−16に
は、それぞれを他から識別可能とする識別子としてアド
レスが与えられている。
【0011】図2は、ネットワークバス20を介して伝
送されるメッセージのフォーマット図である。201、
208は、それぞれメッセージの始めと終わりを示すフ
ラグである。202は、内容コード(FC)部であり、
そのメッセージの内容や機能に対応して予め定められて
いる内容コードが設定される。ネットワークバス20に
接続する各処理装置11−16は、この内容コードに基
づいて、そのメッセージが自処理装置内に存在するアプ
リケーションモジュールによる処理のために必要なもの
か否かを判断する。203は、そのメッセージを発信し
た処理装置を識別するために付される発信元アドレス
(SA)部である。204は、システム内でメッセージ
の伝送上必要となる通番、205は、そのメッセージに
より伝達されるデータが、テストデータ、或いは、オン
ラインデータのいずれであるかを示す識別子(テストフ
ラグ)がセットされるフラグ部である。206は、処理
装置内のアプリケーションモジュールにより実行された
処理の結果として出力されるデータである。また、20
7は、データ部206に格納されているデータを出力し
た送信元のアプリケーションモジュールを特定するため
のモジュール属性情報が設定されるモジュール属性情報
(PROG)部である。モジュール属性情報としては、
例えば、当該アプリケーションモジュールの入出力デー
タの内容コードを用いることができる。208は、送信
元のアプリケーションモジュールのバージョン(世代)
を示すバージョン情報が設定されるバージョン情報(V
ER)部である。
【0012】図3は、各処理装置の論理的な構成を示す
構成図である。図3では、その一例として処理装置11
の構成を示しているが、他の処理装置12−16につい
ても、同様に構成される。図中、テスト管理部(BIT
/EXT)306、モジュール管理部307、入出力管
理部308は、処理装置11内の各アプリケーションモ
ジュール310とネットワークバス20との間のメッセ
ージの受け渡しを制御する機能手段であり、本実施例で
は、それぞれの機能を達成するプログラムにより実現さ
れる。モジュール情報管理テーブル305は、処理装置
11内にあるアプリケーションモジュールの実行管理に
必要な情報を保持するテーブルであり、内容コードテー
ブル311は、アプリケーションモジュール310がそ
の処理のために必要とするデータの内容コードを格納し
たテーブルである。内容コードテーブル311には、受
信すべきメッセージに設定される内容コードと、その内
容コードに対応して、そのメッセージのデータを入力と
するアプリケーションモジュールのモジュールIDが登
録される。受信バッファ303、送信バッファ304、
入出力データ格納エリア308は、アプリケーションモ
ジュール310とネットワークバス20との間のメッセ
ージの受け渡し用いられるものであり、実際には、処理
装置11内のメモリ上に確保される記憶領域である。入
出力データ格納エリア309は、各アプリケーションモ
ジュール310ごとに、そのアプリケーションモジュー
ルが入出力するデータを格納する領域を有する。312
は、ディスク装置などの記憶装置であり、テスト管理部
306が収集するテストデータの格納のために用いられ
る。313は、ユーザとの間のインタフェースとなる端
末装置である。以下、処理装置11の動作について簡単
に説明する。
【0013】処理装置11は、ネットワークバス20上
を流れるメッセージを取り込むと、そのメッセージを受
信バッファ303に格納する。入出力管理部308は、
受信バッファ303に格納されたメッセージを取りだ
し、受信したメッセージの内容コード部202にセット
されている内容コードに基づいて、そのメッセージのデ
ータを必要とするアプリケーションモジュールが自処理
装置にあるかどうかを内容コードテーブル311を参照
して判断する。受信したメッセージのデータを必要とす
るアプリケーションモジュール310が存在すれば、そ
のアプリケーションモジュールに対応する入出力データ
格納エリアへ受信したメッセージのデータを格納する。
アプリケーションモジュール310は、入出力管理部3
08により入出力データ格納エリア309に格納された
データを読み込んで所定の処理を行う。そして、その処
理の結果得られるデータを入出力データ格納エリア30
9に格納する。テスト管理部306は、入出力管理部3
08が処理する送信メッセージのフラグ部205にテス
トフラグを設定し、あるいは受信メッセージのエリア2
05に設定されたテストフラグを識別して、そのメッセ
ージのデータを利用するアプリケーションモジュール3
10がオンラインモードの場合、そのデータの入力を抑
止する。また、テスト管理部306は、他に、テストデ
ータの収集、テスト状況の端末装置313への出力、オ
ンライン状態で動作しているアプリケーションモジュー
ルとテスト状態にあるアプリケーションモジュールの出
力結果の比較照合を行なう。モジュール情報管理部30
7は、各アプリケーションモジュールの動作モード、バ
ージョン、及び実行/停止の管理を行なう。
【0014】図4は、モジュール管理情報テーブル30
5の構成図である。401は、処理装置内の各アプリケ
ーションモジュールについて、それぞれのアプリケーシ
ョンモジュールに与えられているプロセスID、タスク
番号等のモジュール名(PID)がセットされるPID
エリア401である。モジュール管理情報テーブル30
5は、さらに、各PIDエリア401に対応して、対応
するPIDエリアにセットされたPIDを持つアプリケ
ーションモジュールに関するモジュール識別情報(Pr
og)、バージョン情報(Ver.)、及び動作モード
(Mode)が記録される、モジュール識別情報エリア
402、バージョン情報エリア403、及び動作モード
エリア404を含んでいる。
【0015】図5は、ソフトウエアバージョンアップ時
に行われるオンラインテストでのメッセージの伝送の様
子を示すメッセージフロー図である。処理装置11に
は、バージョンアップされる前のアプリケーションモジ
ュール(旧バージョンモジュール)114が、また、処
理装置13には新しいバージョンのアプリケーションモ
ジュール(新バージョンモジュール)116がインスト
ールされている。旧バージョンモジュール114、及び
新バージョンモジュール116は、処理装置14にイン
ストールされているアプリケーションモジュール113
が出力するデータ516を入力し、各々データ517、
518を出力する。処理装置11、13の入出力管理部
308、501は、ネットワークバス20に処理装置1
4の入出力管理部502により送出されたアプリケーシ
ョンモジュール113の出力データ516を取り込み、
それぞれ旧バージョンモジュール114、新バージョン
モジュール116に渡す。旧バージョンモジュール11
4、及び新バージョンモジュール116の出力データ
は、処理装置11、13からネットワークバス20上に
ブロードキャストされる。ここで、処理装置13の入出
力管理部501は、新バージョンモジュール116の出
力データのフラグ部204にテストフラグを付加してネ
ットワークバス20に送出する。これにより、新バージ
ョンモジュール116の出力データ518は、システム
内では、テストデータとして扱われる。テスト結果は、
処理装置11上のテスト管理部306により、モニタさ
れる。テスト管理部306は、入出力管理部308から
旧バージョンモジュール114、および新バージョンモ
ジュール116の出力データを受け取り、それを記憶装
置312に蓄積する。そして、所定のタイミングで記憶
装置312に蓄積した旧バージョンモジュール114、
および新バージョンモジュール116の出力データの比
較照合を行う。この比較照合の結果は、端末装置313
に出力される。
【0016】一方、処理装置15には、アプリケーショ
ンモジュール114、116の出力データ517、51
8を入力データとして処理を行うアプリケーションモジ
ュール119がインストールされている。アプリケーシ
ョンモジュール119は、オンラインモードで稼動して
いるため、処理装置15内の入出力管理部503は、フ
ラグ部204にテストフラグが設定されている新バージ
ョンモジュール116の出力データ518の入力を行な
わない(アプリケーションモジュール119に渡さずに
破棄する)。このようにして、本実施例では、旧バージ
ョンモジュールと新バージョンモジュールをオンライン
状態で並行して動作させながらテストが行われる。
【0017】図6は、各処理装置の入出力管理部により
実施されるデータ受信処理のフローチャートである。入
出力管理部308は、ネットワークバス20から受信バ
ッファ303に取り込まれたメッセージを受け取り、内
容コード部202に設定されている内容コードが、内容
コードテーブル311に登録されているものであるかチ
ェックし、登録されていれば、それを受信する(ステッ
プ602)。次に、内容コードに基づき受信メッセージ
の種別を判定する(ステップ604)。受信メッセージ
が、アプリケーションモジュールの開始/終了/切替指
示であるときには、その受信メッセージをモジュール管
理部307に渡して処理を終了する(ステップ60
5)。モジュール管理部307における処理について
は、後述する。受信メッセージが通常データであれば、
内容コードテーブル311に基づき、受信メッセージの
内容コード部202に設定されている内容コードに対応
するモジュールIDを取得する(ステップ606)。そ
して、モジュール情報管理テーブル305より、該当す
るモジュールIDを持つアプリケーションモジュール3
10の動作モードを取得する(ステップ608)。取得
した動作モードが、オンラインモードとテストモードの
いずれを示しているか判定する(ステップ610)。取
得した動作モードがテストモードを示していれば、入出
力データ格納エリア309に受信メッセージ内のデータ
をセットし、該当するアプリケーションモジュールにデ
ータを渡す(ステップ614)。一方、動作モードがオ
ンラインモードの場合、受信メッセージのフラグ部20
5により、受信メッセージ内のデータが、オンラインデ
ータであるか、テストデータであるかを判定する(ステ
ップ612)。受信メッセージ内のデータがオンライン
データであれば、入出力データ格納エリア309にその
データをセットし、アプリケーションモジュールにその
データを渡す(ステップ614)。受信メッセージ内の
データがテストデータであれば、そのデータを破棄する
(ステップ616)。
【0018】図7は、各処理装置の入出力管理部により
実施されるデータ送信処理のフローチャートである。入
出力管理部308によるデータ送信処理は、アプリケー
ションモジュール310がデータ送信命令を発行するこ
とにより起動される。まず、アプリケーションモジュー
ル310により送信データが入出力データ格納エリア3
09にセットされる(ステップ702)。入出力管理部
308は、モジュール管理部307より、送信命令を発
行しているアプリケーションモジュール310のモジュ
ールIDを取得する(ステップ704)。次に、モジュ
ール情報管理テーブル305を参照して、ステップ70
4で取得したモジュールIDのアプリケーションモジュ
ール310の動作モードを取得する(ステップ70
6)。取得した動作モードがテストモード、オンライン
モードのいずれであるか判定し(ステップ708)、テ
ストモードであれば、データ部206に入出力データ格
納エリア309から取り出した送信データを有する送信
メッセージのフラグ部204にテストフラグを設定する
(ステップ710)。そして、その送信メッセージを送
信バッファ304を介してネットワークバス20に送出
する(ステップ712)。一方、送信命令を発効したア
プリケーションモジュールの動作モードがオンラインモ
ードであれば、フラグ部205にテストフラグの設定を
行うことなく送信データを有する送信メッセージを送出
する。
【0019】図8は、テスト管理部(EXT)による比
較・照合テストのフローチャートである。テスト管理部
306は、起動されるとまず、比較・照合テスト開始の
報知を行なう(ステップ802)。比較・照合テスト開
始の報知に応答して送られてくるテストプログラム動作
開始のメッセージを受信する(ステップ804)。受信
したテストプログラム動作開始のメッセージのモジュー
ル属性情報部207に基づき、送信元のアプリケーショ
ンモジュールを識別し(ステップ806)、また、バー
ジョン情報部208に基づきモジュールバージョンを取
得する(ステップ808)。そして、これらの情報に基
づき、記憶装置312内にデータ比較照合テーブルを作
成する(ステップ810)。その後、テスト管理部30
6は、ステップ812以降の比較・照合処理にはいる。
【0020】比較・照合処理にはいると、テスト管理部
306は、入出力管理部308より、共通伝送媒体20
上から取り込んだ受信メッセージを受け取る(ステップ
812)。受信メッセージのフラグ部205を参照し
て、テストフラグが設定されているかどうか調べる(ス
テップ814)。テストフラグが設定されていれば、そ
のメッセージのデータをデータ比較照合テーブルのテス
トデータエリアへ格納する(ステップ816)。一方、
テストフラグが設定されていない場合は、データ比較照
合テーブルのオンラインデータエリアへデータを格納す
る(ステップ818)。次に、データ比較照合テーブル
に一定容量のデータが格納されたか否か判定し(ステッ
プ820)、データ比較テーブルに一定容量のデータが
蓄積されていなければ、ステップ812に戻り、データ
の受信を継続する。データ比較テーブルに一定容量のデ
ータが蓄積されていれば、データ比較テーブルに蓄積さ
れたテストデータと、オンラインデータとの比較・照合
を行う(ステップ822)。比較・照合の結果、両者の
一致が得られたか否か判定する(ステップ824)。テ
ストデータとオンラインデータの一致が得られていれ
ば、ステップ826で比較判定結果一致を端末装置31
3に表示した後、終了指示がある迄、比較処理を繰り返
す(ステップ834)。ステップ824における比較判
定結果が不一致の場合、端末装置313に出力不一致を
表示する(ステップ828)。そして、実行中のオンラ
インテストが、バージョンアップ時のオンラインテスト
(新バージョンモジュールのオンラインテスト)である
か否かに応じて切替指示、あるいは、終了指示のいずれ
を実施するか判定する(ステップ830)。新バージョ
ンモジュールのオンラインテストの場合には、新バージ
ョンモジュールへの終了指示情報の送信を行い、テスト
を中断する(ステップ832)。一方、新バージョンモ
ジュールのオンラインテストでないときには、ステップ
836で切換指示情報を送信してテストを中断する。
【0021】図9は、モジュール管理部により実施され
る処理のフローチャートである。モジュール管理部30
7は、入出力管理部308から開始、終了、あるいは、
切換を指示する受信メッセージを受け取ると、受信メッ
セージよりモジュール属性情報、およびバージョン情報
を取得し、開始/終了/切替処理を行うアプリケーショ
ンモジュールを特定する(ステップ902、904)。
受信メッセージに設定されている内容コードに基づい
て、受信メッセージが、開始、終了、および切替指示情
報のいずれであるか判定する(ステップ906)。開始
指示情報であれば、該当するアプリケーションモジュー
ルの起動を行なう(ステップ908)。切換指示情報の
場合は、切換指示メッセージで指定されていたバージョ
ンのアプリケーションモジュールがオンラインモードで
動作中か、テストモードで動作中か判定する(ステップ
910)。指定されたアプリケーションモジュールがオ
ンラインモードで動作していれば、そのアプリケーショ
ンモジュールの動作モードをテストモードに変更する
(ステップ912)。一方、指定されたアプリケーショ
ンモジュールがテストモードで動作していれば、そのア
プリケーションモジュールの動作モードをオンラインモ
ードへ変更する(ステップ914)。また、受信メッセ
ージが終了指示情報の場合は、指定されたバージョンの
アプリケーションモジュールによる処理を停止する(ス
テップ916)。
【0022】次に、バージョンアップ後、新バージョン
モジュールがオンライン稼動中に、処理装置、或いはオ
ペレータにより新バージョンモジュールの異常が検知さ
れた場合の旧バージョンモジュールへの復旧について図
10乃至図13を用いて説明する。なお、図10乃至図
13において、処理装置11には、バージョンアップさ
れたアプリケーションモジュール(新バージョンモジュ
ール)1010が配置される。処理装置14には、新バ
ージョンモジュール1010がその処理に利用するデー
タを出力するアプリケーションモジュール1020、処
理装置15には、新バージョンモジュール1010の処
理結果を利用するアプリケーションモジュール1030
が配置されている。処理装置13には、新バージョンモ
ジュールと同様に、アプリケーションモジュール102
0の出力を利用し、その処理結果がアプリケーションモ
ジュール1030により利用されるバージョンアップ前
のアプリケーションモジュール(旧バージョンモジュー
ル)1015が配置されている。501、502、50
3、および504は、それぞれ、処理装置13、14、
15、および12の入出力管理部である。なお、以下の
説明では、オンラインテストの管理を、処理装置12上
のテスト管理部1050を用いて行うものとする。ま
た、これらの図において、以下の説明に直接関係しない
部分については、図示を省略している。
【0023】図10は、バージョンアップ後のシステム
の稼動状態におけるメッセージフロー図である。処理装
置14のアプリケーションモジュール1020の処理結
果は、入出力管理部502によりメッセージ1101と
してネットワークバス20に送出される。処理装置11
の入出力管理部308は、ネットワークバス20からメ
ッセージ1101を取り込み、そのデータを新バージョ
ンモジュール1010に渡す。新バージョンモジュール
は、入出力管理部308から受け取ったデータを用いて
処理を行い、その結果を入出力管理部308に渡す。新
バージョンモジュール1010の処理結果は、メッセー
ジ1102としてネットワークバス20上に送出され
る。処理装置15の入出力管理部503は、メッセージ
1102を取り込んでアプリケーションモジュール10
30に渡し、アプリケーションモジュール1030は、
そのデータを用いて処理を行う。この時点では、旧バー
ジョンモジュール1015は、停止状態にある。
【0024】図11は、新バージョンモジュールに関連
した障害が検出された場合のメッセージフロー図であ
る。新バージョンモジュール1010の異常を処理装置
11のモジュール管理部307が検出すると、処理装置
11は、新バージョンモジュールのモジュール属性情報
およびバージョン情報を持ち、異常の発生を示す内容コ
ードを設定したメッセージ1103をネットワークバス
20に送出する。処理装置12の入出力管理部504
が、このメッセージ1103を受信すると、処理装置1
2は、テスト管理部1050を起動する。テスト管理部
1050は、旧バージョンモジュール1015のテスト
稼働開始を示す内容コードを設定したメッセージ110
4を入出力管理部504を介してネットワークバス20
に送出する(図8のステップ802〜ステップ81
0)。その後、テスト管理部1050は、新バージョン
モジュール1010の出力するオンラインデータと旧バ
ージョンモジュール1015の出力するテストデータの
収集を開始する。処理装置13の入出力管理部501
は、テスト稼働開始を指示するメッセージ1104を受
信すると、それをモジュール管理部1060に渡す。こ
こで、テスト稼働開始を示す内容コードは、予め各処理
装置の内容コードテーブルに登録されているものとす
る。モジュール管理部1060は、受け取ったメッセー
ジ内のモジュール属性情報、バージョン情報からテスト
稼働を開始するアプリケーションモジュール、即ち、旧
バージョンモジュールを決定し、旧バージョンモジュー
ル1015の動作モードをテストモードに設定して、旧
バージョンモジュール1015を起動する。
【0025】図12は、オンラインテスト実施中のシス
テム内でのメッセージの流れを示すメッセージフロー図
である。オンラインテスト実施中も、旧バージョンモジ
ュール1015は、メッセージ1101のデータを用い
てオンライン状態の時と同様に処理を行う。処理装置1
3の入出力管理部501は、旧バージョンモジュールの
出力したデータをテストデータとして、フラグ部205
にテストフラグを設定したメッセージ1105をネット
ワークバス20に送出する。新バージョンモジュール1
010による処理結果のメッセージ1102と、旧バー
ジョンモジュール1015による処理結果のメッセージ
1105は、ともに同じ内容コードがその内容コード部
202に設定される。処理装置15の入出力管理部50
3では、メッセージ1102とメッセージ1105の両
者が、アプリケーションモジュール1030の処理に利
用されるものであることを認識できるが、メッセージ1
105には、テストフラグがセットされているので、メ
ッセージ1102のみをアプリケーションモジュール1
030に渡す。一方、処理装置12では、メッセージ1
102、1105の両者が取り込まれ、テスト部105
0により図8により説明したステップ812以降の比較
・照合処理が実施される。
【0026】図13は、旧バージョンモジュールへの復
旧時のメッセージフロー図である。処理装置12のテス
ト管理部1050は、比較・照合処理の結果、旧バージ
ョンモジュール1015への切り替えを決定すると、オ
ンライン稼動中の新バージョンモジュール1010に対
して終了指示情報を送出して新バージョンモジュールの
オンライン稼働を停止した後、テストモードで稼動中の
旧バージョンモジュール1015に対して切換指示情報
1106送信する。終了指示情報切換指示情報1106
は、内容コード部202に切換指示を示す内容コード、
モジュール属性部207に切り替えを行うアプリケーシ
ョンモジュールの属性情報、バージョン情報部208
に、そのバージョン番号が設定されたメッセージであ
る。処理装置11の入出力管理部308は、切換指示情
報1506を受信すると、そのメッセージをモジュール
管理部307に渡す。モジュール管理部307は、切換
指示情報を受け取ると、新バージョンモジュール101
0のオンライン稼働を停止させる。処理装置13の入出
力管理部501も、同様に、切換指示情報1506を受
信すると、そのメッセージをモジュール管理部1060
に渡す。モジュール管理部1060は、旧バージョンモ
ジュール1015の動作モードをオンラインモードに変
更し、旧バージョンモジュール1015によるオンライ
ン稼働を開始する。
【0027】以上説明した実施例では、旧バージョンモ
ジュールへの復旧時に、オンライン稼働中の新バージョ
ンモジュールの動作モードをテストモードにすること
で、新バージョンモジュールのオンライン稼働を停止し
ているが、テスト管理部により、新バージョンモジュー
ルに対しては、終了指示情報を送出し、新バージョンモ
ジュールによる処理を停止して、旧バージョンモジュー
ルへの切替指示を出すようにすることもできる。また、
オンラインテストは、新バージョンモジュールをオンラ
イン稼働状態のまま行ったが、オンラインテストに先行
して新バージョンモジュールの動作モードをテストモー
ドとして、旧バージョンモジュールをオンライン稼働さ
せてオンラインテストを行うようにしてもよい。この場
合には、オンラインテストの結果異常がなければ、テス
ト終了後、新バージョンモジュールをオンラインモード
に戻し、旧バージョンモジュールを停止する。
【0028】以上説明した実施例によれば、同一システ
ム内にて、異なるバージョンのモジュールを同時に実行
させ、バージョンアップ後の新しいバージョンのアプリ
ケーションモジュールをオンライン環境下でテストする
ことが可能となる。また、バージョンアップ後にオンラ
イン稼働を開始した新バージョンモジュールの動作監視
を行い、新バージョンモジュールの障害発生時に、テス
ト状態で稼働中の旧バージョンモジュールに復旧するこ
とが可能となる。
【0029】
【発明の効果】本発明によれば、分散処理システムに於
いて、そのシステム内のソフトウエア、ハードウエアの
バージョンアップ作業を、ユーザの業務を継続しながら
安全に行うことの可能な保守管理を実現することができ
【図面の簡単な説明】
【図1】本発明の一実施例における分散処理システムの
ブロック図である。
【図2】ネットワークバスを伝送されるメッセージのフ
ォーマット図である。
【図3】処理装置の構成を示すブロック図である。
【図4】モジュール情報管理テーブルの構成図である。
【図5】オンラインテスト時のメッセージフロー図であ
る。
【図6】入出力管理部によるデータ受信処理のフローチ
ャートである。
【図7】入出力管理部によるデータ送信処理のフローチ
ャートである。
【図8】テスト管理部による比較・照合テストのフロー
チャートである。
【図9】モジュール管理部によるアプリケーションモジ
ュール管理のフローチャートである。
【図10】バージョンアップ後の新バージョンモジュー
ルオンライン稼働時のメッセージフロー図である。
【図11】新バージョンモジュールの異常検出時のメッ
セージフロー図である。
【図12】オンラインテスト実施中のメッセージフロー
図である。
【図13】旧バージョンモジュールへの復旧時のメッセ
ージフロー図である。
【符号の説明】
11〜16……処理装置、20……共通伝送媒体、30
5……モジュール情報管理テーブル、306……テスト
管理部、307……モジュール管理部、308……入出
力管理部、309……入出力データ格納エリア、310
……アプリケーションモジュール、311……内容コー
ド管理テーブル、114……旧バージョンモジュール、
116……新バージョンモジュール。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 河野 克己 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内 (72)発明者 藤原 和統 茨城県日立市大みか町5丁目2番1号 株 式会社日立製作所大みか工場内

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】共通伝送媒体と、該共通伝送媒体を介して
    相互に接続される複数の処理装置とを有してなり、各処
    理装置が、それぞれの処理装置内のプログラムモジュー
    ルの出力データを、該出力データの内容に対応して予め
    定められた内容コードを添付したメッセージとして前記
    共通伝送媒体に送出するとともに、前記共通伝送媒体上
    から前記内容コードに基づいて自処理装置内のプログラ
    ムモジュールの実行に利用すべきデータを含むメッセー
    ジを受信するように構成された分散処理システムにおい
    て、それぞれ同一内容の処理を行い世代の異なる2つの
    プログラムモジュールを前記複数の処理装置のいずれか
    に配置し、前記2つのプログラムモジュールの中の一方
    の世代のプログラムモジュールをオンライン稼働状態で
    動作させ、他方のプログラムモジュールをテストモード
    で動作させ、任意の処理装置において、前記2つのプロ
    グラムモジュールによる処理の結果として前記伝送媒体
    上に送出されたメッセージを受信し、受信したメッセー
    ジ内容に基づいて前記2つのプログラムモジュールの診
    断を行うことを特徴とする分散システムのオンラインテ
    スト方法。
  2. 【請求項2】前記処理装置の各々は、自処理装置内のプ
    ログラムモジュールによる処理の結果に、当該プログラ
    ムモジュールを特定するための属性情報および当該プロ
    グラムモジュールの世代を表す世代情報を付加してメッ
    セージを生成し、前記共通伝送媒体に送出することを特
    徴とする請求項1または2記載のオンラインテスト方
    法。
  3. 【請求項3】前記任意の処理装置は、前記属性情報およ
    び前記世代情報に基づいて受信した前記一方の世代のプ
    ログラムモジュールの処理結果のメッセージと前記他方
    の世代のプログラムモジュールの処理結果を記憶装置に
    蓄積し、蓄積されたメッセージの量が所定の容量に達し
    た後前記診断を行うことを特徴とする請求項2記載のオ
    ンラインテスト方法。
  4. 【請求項4】オンライン稼働中のプログラムモジュール
    を持つ処理装置は、受信したメッセージに前記テストフ
    ラグが付加されているか否か判定し、前記テストフラグ
    が付加されているときは、当該メッセージを自処理装置
    内のプログラムモジュールの処理に利用せずに廃棄する
    ことを特徴とする請求項3記載のオンラインテスト方
    法。
  5. 【請求項5】前記一方の世代のプログラムモジュール
    は、前記他方の世代のプログラムモジュールよりも新し
    い世代のプログラムモジュールであることを特徴とする
    請求項3記載のオンラインテスト方法。
  6. 【請求項6】前記任意の処理装置は、前記診断の結果、
    異常を検出したときは、前記一方の世代のプログラムモ
    ジュールの動作停止を指示するメッセージを前記共通媒
    体に送出し、前記一方の世代のプログラムモジュールが
    動作する処理装置では、前記動作停止を指示するメッセ
    ージを受信して、前記一方の世代のプログラムモジュー
    ルの動作を停止させることを特徴とする請求項5記載の
    オンラインテスト方法。
  7. 【請求項7】共通伝送媒体と、該共通伝送媒体を介して
    相互に接続される複数の処理装置とを有してなり、各処
    理装置が、それぞれの処理装置内のプログラムモジュー
    ルの出力データを、該出力データの内容に対応して予め
    定められた内容コードを添付したメッセージとして前記
    共通伝送媒体に送出するとともに、前記共通伝送媒体上
    から前記内容コードに基づいて自処理装置内のプログラ
    ムモジュールの実行に利用すべきデータを含むメッセー
    ジを受信するように構成された分散処理システムにおい
    て、第1の処理装置に配置された第1の世代のプログラ
    ムモジュールと、第2の処理装置に配置され、前記第1
    の世代のプログラムモジュールと同一内容の処理を行
    い、前記第1の世代のプログラムモジュールよりも世代
    の新しい第2の世代のプログラムモジュールとを設け、
    前記第2の世代のプログラムモジュールのオンライン稼
    働中に前記第2の世代のプログラムモジュールの異常が
    検出されたことに応じて、前記第1の世代のプログラム
    モジュールを他のプログラムモジュールの処理に影響を
    与えないようにされたテストモードで起動し、任意の処
    理装置において、前記第1および第2の世代のプログラ
    ムモジュールの処理結果のメッセージを受信し、受信し
    た前記第1の世代のプログラムモジュールの処理結果と
    前記第2の世代のプログラムモジュールの処理結果とを
    比較して前記第2の世代のプログラムモジュールの診断
    を行い、該診断の結果異常を検出したときは、前記第2
    の世代のプログラムモジュールによるオンライン稼働を
    停止し、前記第1の世代のプログラムモジュールの動作
    モードを前記テストモードからオンラインモードに変更
    し、前記第1の世代のプログラムモジュールによるオン
    ライン稼働を開始することを特徴とする分散処理システ
    ムのオンラインテスト方法。
  8. 【請求項8】共通伝送媒体と、該共通伝送媒体を介して
    相互に接続される複数の処理装置とを有してなり、各処
    理装置が、それぞれの処理装置内のプログラムモジュー
    ルの出力データを、該出力データの内容に対応して予め
    定められた内容コードを添付したメッセージとして前記
    共通伝送媒体に送出するとともに、前記共通伝送媒体上
    から前記内容コードに基づいて自処理装置内のプログラ
    ムモジュールの実行に利用すべきデータを含むメッセー
    ジを受信するように構成された分散処理システムにおい
    て、前記処理装置の各々が、自処理装置内のプログラム
    モジュールが出力したデータに、該データを出力したプ
    ログラムモジュールを特定するための属性情報と当該プ
    ログラムモジュールの世代情報とを添付して前記メッセ
    ージを生成して前記共通伝送媒体上に送出し、任意の処
    理装置において、前記属性情報および前記世代情報に基
    づいて前記共通伝送媒体上を伝送されるメッセージを収
    集し、前記属性情報が同一であり、前記世代情報が異な
    るメッセージ同士を比較照合して前記プログラムモジュ
    ールの診断を行うことを特徴とする分散処理システムの
    オンラインテスト方法。
  9. 【請求項9】前記任意の処理装置は、前記診断の結果前
    記プログラムモジュールの異常を検出したとき、当該異
    常の検出されたプログラムモジュールに関する前記属性
    情報と前記世代情報とを含む第1のメッセージを前記共
    通伝送媒体に送出し、各処理装置では、前記第1のメッ
    セージを受信して、前記属性情報および前記世代情報に
    基づいて、前記異常の検出されたプログラムモジュール
    が自処理装置内に存在するか否か判断し、異常の検出さ
    れたプログラムモジュールが存在するときは、そのプロ
    グラムモジュールの動作を中断することを特徴とする請
    求項8記載のオンラインテスト方法。
JP7211561A 1995-08-21 1995-08-21 分散処理システムのオンラインテスト方法 Pending JPH0962626A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7211561A JPH0962626A (ja) 1995-08-21 1995-08-21 分散処理システムのオンラインテスト方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7211561A JPH0962626A (ja) 1995-08-21 1995-08-21 分散処理システムのオンラインテスト方法

Publications (1)

Publication Number Publication Date
JPH0962626A true JPH0962626A (ja) 1997-03-07

Family

ID=16607840

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7211561A Pending JPH0962626A (ja) 1995-08-21 1995-08-21 分散処理システムのオンラインテスト方法

Country Status (1)

Country Link
JP (1) JPH0962626A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004005026A (ja) * 2002-05-30 2004-01-08 Denso Corp 生産ラインの工程管理システム
JP2009032253A (ja) * 2007-07-06 2009-02-12 Ntt Docomo Inc クライアント・サーバ・アーキテクチャに使用するためのミドルウェア
JP2009211618A (ja) * 2008-03-06 2009-09-17 Nec Corp 障害自動復旧装置
JP2011522334A (ja) * 2008-06-05 2011-07-28 インターナショナル・ビジネス・マシーンズ・コーポレーション ソフトウェア問題を識別するための方法、システム、およびコンピュータ・プログラム
JP2011215760A (ja) * 2010-03-31 2011-10-27 Hitachi Ltd 計算機システム、及び、モジュール実行方法
JP2011221912A (ja) * 2010-04-13 2011-11-04 Nec Corp 計算機システム、及び計算機システム管理方法
US9058313B2 (en) 2012-03-08 2015-06-16 Nec Corporation Test method for distributed processing system and distributed processing system
CN111796864A (zh) * 2020-06-02 2020-10-20 北京三快在线科技有限公司 一种数据校验的方法及装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004005026A (ja) * 2002-05-30 2004-01-08 Denso Corp 生産ラインの工程管理システム
JP2009032253A (ja) * 2007-07-06 2009-02-12 Ntt Docomo Inc クライアント・サーバ・アーキテクチャに使用するためのミドルウェア
JP2009211618A (ja) * 2008-03-06 2009-09-17 Nec Corp 障害自動復旧装置
JP2011522334A (ja) * 2008-06-05 2011-07-28 インターナショナル・ビジネス・マシーンズ・コーポレーション ソフトウェア問題を識別するための方法、システム、およびコンピュータ・プログラム
JP2011215760A (ja) * 2010-03-31 2011-10-27 Hitachi Ltd 計算機システム、及び、モジュール実行方法
JP2011221912A (ja) * 2010-04-13 2011-11-04 Nec Corp 計算機システム、及び計算機システム管理方法
US9058313B2 (en) 2012-03-08 2015-06-16 Nec Corporation Test method for distributed processing system and distributed processing system
CN111796864A (zh) * 2020-06-02 2020-10-20 北京三快在线科技有限公司 一种数据校验的方法及装置

Similar Documents

Publication Publication Date Title
JP2001188765A (ja) 分散コンピューティング環境で複数の関係する障害を表す障害情報を参照する技法
JPH0756636B2 (ja) データ処理方法
JP3481737B2 (ja) ダンプ採取装置およびダンプ採取方法
JPH0962626A (ja) 分散処理システムのオンラインテスト方法
JP2519276B2 (ja) 障害情報収集処理方式
JP2595833B2 (ja) 遠隔保守装置
CN114205231B (zh) 批量启动hadoop集群的方法、系统及可读存储介质
JP2002182951A (ja) 情報処理装置のメンテナンス方法および情報処理装置
JPH1188471A (ja) 試験方法及び試験装置
JPH0667909A (ja) 障害回復方式
JPH10260870A (ja) システム起動/終了制御装置
JPH04213126A (ja) ソフトウェアテスト方式
JP2928707B2 (ja) 割り込み報告装置
KR100206472B1 (ko) 전전자교환기에서 시스템 장애관리 및 복구방법
JPH03253945A (ja) データ処理システムの異常回復処理機能確認方式
JP3144787B2 (ja) 分散処理システムおよびその対話処理方法
JPH01256896A (ja) プロセス状態表示装置
CN121050943A (zh) 车载终端人工智能训练的容错管理系统、方法以及设备
CN121301114A (zh) 一种基于bmc的服务故障定位系统及方法
CN121387340A (zh) 一种嵌入式管理模块的热更新方法、装置、设备及介质
CN115934402A (zh) 一种故障现场保留方法、装置和服务器
JPS6149225A (ja) 情報処理システムの運転方式
CN112328497A (zh) Java异常处理方法
JPH0944380A (ja) モジュール管理装置
JPS5927355A (ja) 情報処理システム