JP2020184365A - アプリケーションサーバを並列起動するためのシステムおよび方法 - Google Patents

アプリケーションサーバを並列起動するためのシステムおよび方法 Download PDF

Info

Publication number
JP2020184365A
JP2020184365A JP2020117139A JP2020117139A JP2020184365A JP 2020184365 A JP2020184365 A JP 2020184365A JP 2020117139 A JP2020117139 A JP 2020117139A JP 2020117139 A JP2020117139 A JP 2020117139A JP 2020184365 A JP2020184365 A JP 2020184365A
Authority
JP
Japan
Prior art keywords
servers
dependency
server
entries
parallel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2020117139A
Other languages
English (en)
Other versions
JP7148570B2 (ja
Inventor
ルブ,シャンチェン
Xianzheng Lv
ジン,ジム・ヨンシュン
Yongshun Jin Jim
リトル,トッド・ジェイ
J Little Todd
リ,シャンドン
Xiangdong Li
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.)
Oracle International Corp
Original Assignee
Oracle International 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 Oracle International Corp filed Critical Oracle International Corp
Priority to JP2020117139A priority Critical patent/JP7148570B2/ja
Publication of JP2020184365A publication Critical patent/JP2020184365A/ja
Application granted granted Critical
Publication of JP7148570B2 publication Critical patent/JP7148570B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】アプリケーションサーバを並列起動することができ、より迅速且つより効率的に起動プロセスを実行するシステムおよび方法を提供する。【解決手段】アプリケーションサーバを並列起動するためのシステムおよび方法は、各サーバエントリおよびサーバグループエントリに依存関係属性を関連付けることができる。方法は、依存関係属性に基づいて、依存関係マップを作成し、呼び出されると、依存関係を有しないサーバを各々並列起動し、依存関係マップに基づいて、残りのサーバおよびサーバグループを起動する。【選択図】図3

Description

著作権表示
この特許文書の開示の一部は、著作権保護の対象となるものを含んでいる。著作権者は、特許商標庁の特許ファイルまたは記録に掲載された特許文書または特許開示の複製に対しては異議を唱えないが、その他の場合、全ての著作権を留保する。
発明の分野
本発明は、一般にコンピュータシステムに関し、特にトランザクション処理環境に関する。
背景
Tuxedoアプリケーションを起動(boot)するための従来のメカニズム(すなわち、tmboot)は、通常、所定の順序でTuxedoアプリケーションサーバを1つずつ起動する。大規模/複雑なアプリケーションの場合、起動時間が長くなり、望ましくない。
概要
アプリケーションサーバを並列起動するためのシステムおよび方法が提供される。例示的な方法において、各サーバおよびサーバグループエントリに依存関係属性を関連付けることができる。この方法は、依存関係属性に基づいて、依存関係マップを作成することができる。この方法は、呼び出されると、依存関係を有しないサーバを各々並列起動することができる。依存関係マップに基づいて、残りのサーバおよびサーバグループを起動することができる。
従来、Tuxedoによって、シーケンスパラメータに従ってアプリケーションサーバを起動することができる。この場合、管理者が(アプリケーションを使用するようにサーバを起動するために)tmbootを呼び出したときに、アプリケーションサーバは、割り当てられたシーケンス番号/パラメータに従って起動される。これによって、サーバの起動シーケンスが遅くなる可能性がある。
本開示に記載のシステムおよび方法は、グループおよびサーバにDEPENDSON属性を追加
する。アプリケーションサーバは、DEPENDSONパラメータで指定された順序で起動される
。これによって、アプリケーションサーバを並列起動することができ、より迅速且つより効率的に起動プロセスを実行することができる。
一実施形態に従って、トランザクション処理環境を例示する図である。 一実施形態に従って、アプリケーションサーバの並列起動を例示する図である。 トランザクション処理環境においてアプリケーションサーバを並列起動するための例示的な方法を示すフローチャートである。
詳細な説明
本発明は、限定ではなく例示として添付の図面に示される。添付図面の図において、同様の参照符号が類似する要素を示す。なお、本開示において、一実施形態、1つの実施形態またはいくつかの実施形態の言及は、必ずしも同一の実施形態に限定されず、少なくとも1つの実施形態を意味する。
特定の実現例を説明する場合、これらの特定の実現例は、例示のみの目的で提供されていることを理解すべきである。当業者なら、本発明の範囲および精神から逸脱することなく、他の要素および構成を使用できることを理解するであろう。
以下の本発明の説明は、トランザクションミドルウェアマシン環境の例として、Tuxedo(登録商標)環境を使用する。制限することなく、他の種類のトランザクションミドルウェアマシン環境を使用できることは、当業者にとって明らかであろう。
場合によって、本発明の完全な説明を提供するように、多くの具体的な詳細を記載する。しかしながら、これらの具体的な詳細がなくても、本発明を実施できることは、当業者にとって明らかであろう。また、場合によって、本発明を不明瞭にしないように、周知の特徴は、詳細に記載されない。例えば、詳細な説明において、例示として、XA分散トランザクション環境を使用する。本発明は、制限することなく、他の種類の分散トランザクション環境に適用できることは、当業者にとって明らかであろう。
図面および詳細な説明において、共通の参照番号を使用して同様の要素を示す。したがって、他の箇所で図示された要素を説明する場合、図面に使用されている参照番号は、必ずしもこの図面に対応する詳細な説明に記載する必要がない。
本開示は、トランザクション処理環境において、アプリケーションサーバを並列起動するためのシステムおよび方法を説明する。
トランザクションミドルウェア環境
トランザクションミドルウェアシステムは、迅速に用意することができ且つオンデマンドで拡張することができる大規模並列処理インメモリグリッドを含む完全なJava(登録商標)EEアプリケーションサーバ複合体を提供するために、64ビットプロセッサ技術などの高性能ハードウェア、高性能大容量のメモリ、冗長インフィニバンド(登録商標)およびイーサネット(登録商標)ネットワーク、並びにWebLogic(登録商標)スイートなどのアプリケーションサーバまたはミドルウェア環境の組み合わせを含む。本発明のシステムは、アプリケーションサーバグリッド、ストレージエリアネットワーク、およびインフィニバンド(IB)ネットワークを形成するフルラック、ハーフラックまたはクォーターラックもしくは他の構成として展開されることができる。ミドルウェアマシンソフトウェアは、アプリケーションサーバ、ミドルウェアおよび他の機能、例えば、WebLogic Server、JRockitまたhはHotspot JVM、Oracle(登録商標)Linux(登録商標)あmたはSolaris、およびOracle(登録商標)VMを提供することができる。本発明のシステムは、I
Bネットワークを介して互いに通信する複数の計算ノード、IBスイッチゲートウェイ、およびストレージノードまたはストレージユニットを含むことができる。ラック構成として実装される場合、ラックの未使用部分は、空のままにしてもよく、詰め物で充填されてもよい。
例えば、「Sun Oracle Exalogic」または「Exalogic」などのシステムにおいて、本発
明のシステムは、Oracle(登録商標)ミドルウェアSWスイートまたはWebLogicなどのミドルウェアまたはアプリケーションサーバソフトウェアをホストするために、展開容易な解決案である。本開示に説明するように、トランザクションミドルウェアシステムは、ミドルウェアアプリケーションをホストするために必要とされる1つ以上のサーバ、ストレ
ージユニット、ストレージネットワーク用のIBファブリック、および全ての他の要素を含む「グリッドボックス」(grid in a box)である。例えば、共有キャッシュアーキテ
クチャを備えるクラスタデータベースであり且つクラウドアーキテクチャの構成要素であり得るOracleリアルアプリケーションクラスタ(RAC)エンタープライズデータベースおよびExalogicオープンストレージを使用する大規模並列グリッドアーキテクチャを活用することによって、全ての種類のミドルウェアアプリケーションに高性能を提供することができる。このシステムは、線形I/O拡張性によって改善した性能を提供し、使用および管理が簡単であり、ミッションクリティカルな可用性および信頼性を提供する。
本発明の一実施形態によれば、Tuxedoシステムのようなトランザクションミドルウェアシステムは、複数のプロセッサを備える高速マシン、例えばExalogicミドルウェアマシン、および高性能ネットワーク接続、例えばインフィニバンド(IB)ネットワークを利用することができる。
Oracle(登録商標)Tuxedoシステムは、高性能分散型ビジネスアプリケーションの構築、実行および管理を可能にするソフトウェアモジュールのセットであり、トランザクションミドルウェアとして多くの複層アプリケーション開発ツールに使用されている。Tuxedoは、分散トランザクション処理を管理するために、分散コンピューティング環境に使用することができるミドルウェアプラットフォームである。Tuxedoは、無制限の拡張性および標準ベースの相互運用性を提供しながら、エンタープライズレガシーアプリケーションのロックを解除し、エンタープライズレガシーアプリケーションをサービス指向型アーキテクチャに拡張するための有効なプラットフォームである。
また、Tuxedoは、リクエスト、イベント、システムプロセス間のアプリケーションキュー、およびアプリケーションサービスを効率的にルーティングする、配布するおよび管理するためのサービス指向型インフラストラクチャを提供する。Tuxedoは、事実上無制限に拡張できるため、ピークトランザクションボリュームを効率的に管理することによって、ビジネスの機敏性を向上させ、IT組織がビジネスの需要および処理量の変化に迅速に対応できるようにする。Oracle(登録商標)Tuxedoは、アクセスプロトコルに関係なく、複数のデータベース間のトランザクションを最適化し、全ての加入リソースの間のデータ整合性を保証する。このシステムは、トランザクション加入者を追跡し、拡張コミットプロトコルを監督することによって、全てのトランザクションコミットおよびロールバックを適切に処理することを保証する。
さらに、Oracle(登録商標)Tuxedoシステムは、2フェイスコミット(2PC)処理をサポートするためのXA標準、X/Open(登録商標)ATMI API、X/Open(登録商標)「分散トランザクション処理:TX(トランザクション境界設定)仕様」、および言語国際化を行うためのX/Open(登録商標)移植性ガイド(XPG)標準を含むオープングループのX/Open(登録商標)標準に準拠することができる。トランザクションアプリケーションサーバは、XA標準を使用する場合、XAサーバとして呼ばれてもよい。例えば、Tuxedoグループに属する各Tuxedoアプリケーションサーバは、OPENINFO属性を使用するように構成することができる。Tuxedoグループ内の全てのXAサーバは、OPENINFO属性を使用して、リソースマネージャ(RM)との接続を形成することができる。
Tuxedoアプリケーションサーバの順次起動
従来、Tuxedoによって、シーケンスパラメータに従ってアプリケーションサーバを起動することができる。この場合、管理者が(アプリケーションを使用するようにサーバを起動するために)tmbootを呼び出すときに、アプリケーションサーバは、割り当てられたシーケンス番号/パラメータに従って起動される。
アプリケーションサーバは、シーケンスパラメータ(SEQUENCEパラメータ)によって指定された順序でまたは設定ファイル(例えば、UBBCONFIG)内のサーバエントリの順序で
起動することができる。2つ以上のサーバが同様のSEQUENCEパラメータを有する場合、tmbootは、これらのサーバを並行起動して、全てののサーバの初期化が完了するまで操作を続行しない。
あるサーバが起動できなかった場合、tmbootは、診断結果を主要イベントログに書き込み、起動できなかったサーバが親サーバである(すなわち、起動できなかったサーバの後に起動されるサーバが正常に動作するためには起動できなかったサーバに依存する)場合を除いて、操作を続行することができる。
このように、起動および/または初期化できなかったサーバが起動プロセス内の他のサーバを起動するための前提条件である場合、またはサーバを確認できなかった場合、アプリケーションサーバの起動プロセスに望ましくない遅延が生じる可能性がある。
依存関係に基づくTuxedoアプリケーションサーバの並列起動
図1は、トランザクション処理環境100を例示する図である。より具体的には、図1は、トランザクション処理環境100内のTuxedoアプリケーションサーバを並列起動するためのプロセスを示している。
一実施形態によれば、トランザクション処理環境100内で、管理者110は、tmbootなどのコマンドおよび起動マップ115を用いて、1つまたは複数のアプリケーションサーバ130、例えばTuxedoアプリケーションサーバを起動することができる。アプリケーションサーバは、起動され初期化された後、1つ以上のデータベース140と通信することができ、アプリケーション120に利用されることができる。
一実施形態によれば、起動マップ115は、2つ以上のアプリケーションサーバ130を並行起動させる起動プランを含むことができ、サーバとサーバグループとの間の依存関係を取り込むことができる。
一実施形態によれば、Tuxedoアプリケーションサーバを並列起動するためのオプションをtmbootに追加することができる。このオプションは、アプリケーションサーバを並列モードで起動するよう指定するために、tmbootに追加された「-p num」オプションであってもよい。また、tmbootコマンドを使用するときに、Tuxedoアプリケーションサーバの起動順序を指定するように、新しいキーワード「DEPENDSON」をUBBCONFIG内のグループおよびサーバに追加することもできる。
一実施形態によれば、tmbootに追加された「-p num」オプションは、アプリケーションサーバを並列モードで起動するように指定することができる。「-p」は、アプリケーションサーバを並列起動することを意味する。「num」は、同時に起動できるサーバの数を意
味する。例えば、「-p 1」を指定したtmbootは、「-p」オプションを指定しないtmbootと同様である。num=0の場合、システムは、初期の数字、例えば16を使用することができ
る。
一実施形態によれば、本開示に記載の方法およびシステムは、キーワードDEPENDSON属
性をグループおよびサーバに追加することができる。アプリケーションサーバは、DEPENDSONパラメータまたはSEQUENCEパラメータにより指定された順序でまたは設定ファイル(
例えば、UBBCONFIG(5))内のサーバエントリの順序で起動することができる。DEPENDSON
パラメータおよびSEQUENCEパラメータが同時に指定された場合、DEPENDSONパラメータが
優先する。
一実施形態によれば、本開示に記載の方法およびシステムは、tmbootにオプション「-p
<数字>」を追加することができる。UBBCONFIGに設定されたDEPENDSON関係を有しない全
てのアプリケーションサーバは、並列して起動する。依存関係に従った順序でサーバを起動し且つ並列に動作するために、tmbootは、各サーバが起動した状態まで待機しなければならない。
一実施形態によれば、SHM(共有メモリ)モードで動作する場合、tmbootは、並列に動
作するサーバを全て起動し、起動されたサーバからの応答を待つ。これらのサーバは、パイプを介して応答をtmbootプロセスに送信し、tmbootプロセスは、応答を受け取り、次のジョブを実行する。
一実施形態によれば、MP(マルチプロセス)モードで動作する場合、tmbootおよびtlistenは、互いに情報を交換するもう1つのスレッドを作成することができる。このローカ
ルスレッドは、リモートマシンから送信されるメッセージを待つことができる。リモートで起動されたサーバがある場合に、続行するようにメインスレッドに通知する。リモートtlistenスレッドは、起動されたサーバからの応答を収集するように準備を整える。1つ
のサーバが起動または失敗した場合、ネットワークメッセージを介してローカルスレッドに通知する。
図2は、一実施形態に従って、アプリケーションサーバの並列起動を例示する図である。
一実施形態によれば、図2は、いくつかのサーバ、例えば、サーバS11(202)、S12(209)、S13(204)、S14(203)、S21(206)、S22(211)、S23(210)、S24(205)の依存関係および並列起動マップを示している。また、依存関係および並列起動マップは、G1(212)、G2(213)、G3(216)およびG4(218)を含むいくつかのサーバグループを含む。
一実施形態によれば、図2の依存関係および並列起動マップ200は、サーバとグループとの間の依存関係に基づいて構築することができる。
一実施形態によれば、図2に示すように、サーバグループの数は複数であってもよい。すなわち、サーバグループは、G1、G2およびG3(3つ)を含んでもよい。
G1は、サーバS11、S12(DEPENDSON S11)、S13およびS14を含む。表記
(DEPENDSON)を用いて、S12が正常に機能するように起動され且つ初期化されたS1
2に依存することを示すことができる。
G2は、サーバS21、S22(DEPENDSON S21)、S23(DEPENDSON G1.S13、S24)およびS24を含む。ここでは、表記(DEPENDSON)を用いて、S22が正常に機能する
ように起動され且つ初期化されたS21に依存することを示すことができる。同様に、S32は、正常に機能するように起動され且つ初期化された(G1の)S13およびS24に依存する。
G3(DEPENDSON G1、G2)は、サーバS31およびS32を含むことができる。ここでは、G3が正常に機能するために、グループG1およびG2を完全に起動して初期化する必要がある。
G4は、S41、S42(DEPENDSON S41, G3)、およびS3を含むことができる。こ
こでは、表記(DEPENDSON)を用いて、G4が正常に機能するように起動され且つ初期化
されたS41およびG3を示すことができる。
一実施形態によれば、S11、S13、S14、S21、S24、S41、S43を並行起動するように、図2の並列起動マップ200を構築し、サーバを起動する(201)ことができる。S11を起動した後、S12を起動することができる。S21を起動した後、S22を起動することができる。S13を起動した後、S24を起動し、その後S23を起動することができる。G1(S11、S12、S13、S14)およびG2(S21、S22、S23、S24)を起動した後、サーバS31、S32を並列起動することができる。G3(S31、S32)およびS41を起動した後、S42を起動することができる。S42およびS43を起動した後、G4を起動し、初期化する。
一実施形態によれば、全てのサーバを起動した後、管理者によって開始されたtmbootタスクを完了することができる。
図3は、トランザクション処理環境においてアプリケーションサーバを並列起動するための例示的な方法を示すフローチャートである。方法は、ステップ310から始まる。ステップ310において、方法は、複数のサーバエントリおよび複数のグループエントリをメモリにロードすることができる。複数のサーバエントリの各々は、複数のサーバのうち1つのサーバに関連し、複数のグループエントリの各々は、複数のサーバグループのうち1つのサーバグループに関連する。ステップ320において、方法は、複数のサーバと複数のグループエントリとの間の依存関係マップを作成することができる。ステップ330において、方法は、引き続き、複数のサーバの中に依存関係を有しないサーバをチェックすることができる。ステップ340において、方法は、複数のサーバの中に依存関係を有しないサーバを各々並列起動することができる。ステップ350において、方法は、引き続き、複数のサーバの中に依存関係を有しないサーバを各々初期化することができる。ステップ360において、方法は、作成された依存関係マップに従って、残りの未起動サーバを起動することができる。
起動プロセス
一実施形態によれば、tmbootが実行されると、例示的なプロセスは、サーバおよびグループエントリをTUXCONFIGからメモリにロードすることができる。次に、プロセスは、グ
ループおよびサーバのDEPENDSON属性に従って、依存関係マップ内のサーバノードとグル
ープノードとの間の依存関係を設定することができる。次に、プロセスは、ループおよび他のDEPENDSONエラーが存在するか否かをチェックすることができる。次に、プロセスは
、map_startノードからサーバを実行可能なリストに追加することができる。次に、プロ
セスは、非同期モードで利用可能なリスト内のサーバを起動し、パイプから応答情報を取得する。プロセスは、1つの応答を受け取ると、従属サーバを起動できるか否かをチェックする。起動できる場合、従属サーバを実行可能なリストに追加し、実行可能なリスト内のプロセスの起動を続行する。最後に、全てのサーバを起動した後、tmbootが終了する。
依存関係マップの作成
一実施形態によれば、例示的なプロセスは、例えば以下の例示的な手順に従って、依存関係マップを作成することができる。
ローカルモードでの並列起動
一実施形態によれば、プロセスは、ローカルモードで並列起動をサポートすることができる。以下、このようなプロセスの一例を示す。
Unix(登録商標)の場合
tmbootプロセスは、匿名パイプを作成し、サーバプロセスを分岐し、パイプfdをサーバプロセスに送信する。
サーバプロセスは、tpsrvinitを完了し、パイプを介して応答をtmbootに送信する。
tmbootは、非停止(non-block)モードでパイプを読み込み、応答を取得した場合、依
存関係マップをチェックして、次に起動するサーバを判断する。
Windows(登録商標)の場合
tmbootプロセスは、名前付きパイプを作成し、サーバプロセスを分岐する。サーバは、tpsrvinitを完了した後、名前付きパイプを開放して接続し、名前付きパイプを介して応
答をtmbootに送信する。
tmbootは、1つのスレッドを作成し、パイプ情報を待つ。応答を取得した場合、依存関係マップをチェックして、次に起動するサーバを決定する。
SHMモード
一実施形態によれば、SHMモードで並列起動をサポートすることができる。SHMモードにおいて、tmbootは実行可能なリスト内の全てのサーバを起動し、起動されたサーバからの応答を待つ。サーバは、パイプを介して応答をtmbootプロセスに送信する。tmbootプロセスは、応答を受け取り、次のジョブを実行する。Tmbootは、非同期モードで実行可能なリスト内のサーバを起動し、起動されたサーバからの応答を収集するように準備を整える。サーバが1つの応答を受信した場合、依存先のサーバの準備が整っているか否かをチェックする。準備が整っている場合、そのサーバを実行可能なリストに追加して起動させる。
MPモードでの並列起動
一実施形態によれば、MPモードで並列起動をサポートすることができる。MPモードにおいて、tmbootおよびtlistenは、互いに情報を交換するもう1つのスレッドを作成できる
。このローカルスレッドは、リモートマシンから送信されるメッセージを待つことができる。リモートで起動されたサーバがある場合に、続行するようにメインスレッドに通知する。リモートtlistenスレッドは、起動されたサーバからの応答を収集するように準備を
整える。1つのサーバが起動または失敗した場合、ネットワークメッセージを介してローカルスレッドに通知する。
本発明の多くの特徴は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの組み合わせに実行する、またはそれらを使用して実行する、またはそれらの援助で実行することができる。したがって、(例えば、1つ以上のプロセッサを含む)処理システムを用いて、本発明の特徴を実施することができる。
本発明の多くの特徴は、コンピュータプログラム製品に実装され、またはこのコンピュータプログラム製品を使用して実装され、またはこのコンピュータプログラム製品の支援によって実装されることができる。このコンピュータプログラム製品は、本明細書に記載の特徴のいずれかを実行するように処理システムをプログラムするために使用できる命令を格納する記憶媒体またはコンピュータ可読媒体である。この記憶媒体は、フロッピー(登録商標)ディスク、光ディスク、DVD、CD−ROM、マイクロドライブ、および光磁気ディスクを含む、任意の種類のディスク、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、フラッシュメモリデバイス、磁気もしくは光カード、ナノシステム(分子メモリICを含む)、または、命令および/もしくはデータを格納するのに適した任意の種類の媒体もしくは装置を含むことができるが、これらに限定されない。
本発明の特徴は、機械可読媒体のいずれかに格納された場合、処理システムのハードウェアを制御し、本発明の結果を利用して処理システムと他の機構との相互作用を可能にするソフトウェアおよび/またはファームウェアに組み込むことができる。そのようなソフトウェアまたはファームウェアは、アプリケーションコード、装置ドライバ、オペレーティングシステムおよび実行環境/コンテナを含むことができるが、これらに限定されない。
本発明の特徴は、例えば、特定用途向け集積回路(ASIC)などのハードウェア要素を使用して、ハードウェアで実施することもできる。本開示に記載の機能を実行するためのハードウェアステートマシンの実装は、当業者には明らかであろう。
さらに、本発明は、本開示の教示に従ってプログラムされた1つ以上のプロセッサ、メモリおよび/またはコンピュータ可読記憶媒体を含む1つ以上の従来の汎用または専用デジタルコンピュータ、コンピューティング装置、機械、またはマイクロプロセッサを使用して都合よく実施することができる。ソフトウェア分野の当業者には明らかであるように、熟練したプログラマは、本開示の教示に基づいて、適切なソフトウェアのコーディングを容易に準備することができる。
上記で本発明のさまざまな実施形態を説明したが、これらの実施形態は、限定ではなく例示として提示されることを理解すべきである。本発明の精神および範囲から逸脱することなく、形態および詳細のさまざまな変更を行うことができることは、当業者にとって明らかであろう。
本発明は、特定の機能の実行およびそれらの関係を示す機能性構成ブロックを用いて説明された。これらの機能性構成ブロックの境界は、通常、説明の便宜上、本開示に任意に定義される。代替的には、別々の要素によって実行されるように示された機能は、1つの要素によって実行されてもよい。特定の機能およびそれらの関係が適切に実行される限り、代替的な境界を定義してもよい。したがって、これらの代替的な境界のいずれも、本発明の範囲および精神内に含まれる。
本発明の上記記載は、例示および説明を目的として提供される。本発明を網羅的なものまたは開示された形態そのものに限定することを意図していない。本発明の広さおよび範囲は、上記の例示的な実施形態のいずれかによって限定されるべきではない。数多くの変
更および変形は、当業者にとって明らかであろう。修正例および変形例は、開示された特徴の任意可能な組み合わせを含む。実施形態は、本発明の原理およびその実際の応用を最も良く説明することによって、他の当業者がさまざまな実施形態および考えられる特定の用途に適したさまざまな変形に応じて本発明を理解できるように、選択され説明される。本発明の範囲は、添付の特許請求の範囲およびそれらの同等物によって規定されると意図する。

Claims (20)

  1. トランザクション処理環境において、アプリケーションサーバを並列起動するための方法であって、
    複数のサーバエントリおよび複数のグループエントリをメモリにロードするステップを含み、前記複数のサーバエントリの各々は、前記複数のサーバのうち1つのサーバに関連し、前記複数のグループエントリの各々は、前記複数のサーバグループのうち1つのサーバグループに関連しており、
    前記複数のサーバエントリと前記複数のグループエントリとの間の依存関係マップを作成するステップと、
    前記複数のサーバの中に依存関係を有しないサーバをチェックするステップと、
    前記複数のサーバの中に依存関係を有しないサーバを各々並列起動するステップと、
    前記複数のサーバの中に依存関係を有しないサーバを各々初期化するステップと、
    前記作成された依存関係マップに従って、残りの未起動サーバを起動するステップとを含む、方法。
  2. 前記依存関係マップを作成するステップは、
    前記複数のサーバエントリおよび前記複数のグループエントリの各々の依存関係属性をチェックするステップと、
    前記チェック中に発見した各々の依存関係属性に基づいて、前記依存関係マップを作成するステップとを含む、請求項1に記載の方法。
  3. 前記依存関係マップの依存関係ループをチェックするステップと、
    依存関係ループを発見した場合、前記発見した依存関係ループを回避するように、前記依存関係マップを再作成するステップとをさらに含む、請求項1または2に記載の方法。
  4. 前記作成された依存関係マップに従って残りの未起動サーバを起動する前に、並列起動された前記複数のサーバの中に依存関係を有しないサーバの各々が適切に動作しているかをチェックするステップをさらに含む、請求項1、2または3に記載の方法。
  5. 前記複数のサーバの各々は、Tuxedoアプリケーションサーバを含む、請求項1に記載の方法。
  6. 前記トランザクション処理環境は、SHMモードで動作する、請求項5に記載の方法。
  7. 前記トランザクション処理環境は、MPモードで動作する、請求項5に記載の方法。
  8. トランザクション処理環境において、アプリケーションサーバを並列起動するためのシステムであって、
    1つ以上のマイクロプロセッサと、
    前記1つ以上のマイクロプロセッサ上で動作する処理装置とを備え、前記処理装置は、動作すると、
    複数のサーバエントリおよび複数のグループエントリをメモリにロードするステップを実行し、前記複数のサーバエントリの各々は、前記複数のサーバのうち1つのサーバに関連し、前記複数のグループエントリの各々は、前記複数のサーバグループのうち1つのサーバグループに関連しており、
    前記複数のサーバエントリと前記複数のグループエントリとの間の依存関係マップを作成するステップと、
    前記複数のサーバの中に依存関係を有しないサーバをチェックするステップと、
    前記複数のサーバの中に依存関係を有しないサーバを各々並列起動するステップと、
    前記複数のサーバの中に依存関係を有しないサーバを各々初期化するステップと、
    前記作成された依存関係マップに従って、残りの未起動サーバを起動するステップとを実行する、システム。
  9. 前記依存関係マップを作成するステップは、
    前記複数のサーバエントリおよび前記複数のグループエントリの各々の依存関係属性をチェックするステップと、
    前記チェック中に発見した各々の依存関係属性に基づいて、前記依存関係マップを作成するステップとを含む、請求項8に記載のシステム。
  10. 前記ステップは、
    前記依存関係マップの依存関係ループをチェックするステップと、
    依存関係ループを発見した場合、前記発見した依存関係ループを回避するように、前記依存関係マップを再作成するステップとをさらに含む、請求項8または9に記載のシステム。
  11. 前記ステップは、
    前記作成された依存関係マップに従って残りの未起動サーバを起動する前に、並列起動された前記複数のサーバの中に依存関係を有しないサーバの各々が適切に動作しているかをチェックするステップをさらに含む、請求項8、9、または10に記載のシステム。
  12. 前記複数のサーバの各々は、Tuxedoアプリケーションサーバを含む、請求項8に記載のシステム。
  13. 前記トランザクション処理環境は、SHMモードで動作する、請求項12に記載のシステ
    ム。
  14. 前記トランザクション処理環境は、MPモードで動作する、請求項12に記載のシステム。
  15. トランザクション処理環境において、アプリケーションサーバを並列起動するための命令を格納する非一時的な機械可読記憶媒体であって、これらの命令は、実行されると、システムに
    複数のサーバエントリおよび複数のグループエントリをメモリにロードするステップを実行させ、前記複数のサーバエントリの各々は、前記複数のサーバのうち1つのサーバに関連し、前記複数のグループエントリの各々は、前記複数のサーバグループのうち1つのサーバグループに関連しており、
    前記複数のサーバエントリと前記複数のグループエントリとの間の依存関係マップを作成するステップと、
    前記複数のサーバの中に依存関係を有しないサーバをチェックするステップと、
    前記複数のサーバの中に依存関係を有しないサーバを各々並列起動するステップと、
    前記複数のサーバの中に依存関係を有しないサーバを各々初期化するステップと、
    前記作成された依存関係マップに従って、残りの未起動サーバを起動するステップとを実行させる、非一時的な機械可読記憶媒体。
  16. 前記依存関係マップを作成するステップは、
    前記複数のサーバエントリおよび前記複数のグループエントリの各々の依存関係属性をチェックするステップと、
    前記チェック中に発見した各々の依存関係属性に基づいて、前記依存関係マップを作成するステップとを含む、請求項15に記載の非一時的な機械可読記憶媒体。
  17. 前記ステップは、
    前記依存関係マップの依存関係ループをチェックするステップと、
    依存関係ループを発見した場合、前記発見した依存関係ループを回避するように、前記依存関係マップを再作成するステップとをさらに含む、請求項15または16に記載の非一時的な機械可読記憶媒体。
  18. 前記ステップは、
    前記作成された依存関係マップに従って残りの未起動サーバを起動する前に、並列起動された前記複数のサーバの中に依存関係を有しないサーバの各々が適切に動作しているかをチェックするステップをさらに含む、請求項15、16、または17に記載の非一時的な機械可読記憶媒体。
  19. 前記複数のサーバの各々は、Tuxedoアプリケーションサーバを含む、請求項15に記載の非一時的な機械可読記憶媒体。
  20. 前記トランザクション処理環境は、SHMモードまたはMPモードで動作する、請求項19
    に記載の非一時的な機械可読記憶媒体。
JP2020117139A 2020-07-07 2020-07-07 アプリケーションサーバを並列起動するためのシステムおよび方法 Active JP7148570B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020117139A JP7148570B2 (ja) 2020-07-07 2020-07-07 アプリケーションサーバを並列起動するためのシステムおよび方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020117139A JP7148570B2 (ja) 2020-07-07 2020-07-07 アプリケーションサーバを並列起動するためのシステムおよび方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2017552147A Division JP6832291B2 (ja) 2015-10-23 2015-10-23 アプリケーションサーバを並列起動するためのシステムおよび方法

Publications (2)

Publication Number Publication Date
JP2020184365A true JP2020184365A (ja) 2020-11-12
JP7148570B2 JP7148570B2 (ja) 2022-10-05

Family

ID=73045443

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020117139A Active JP7148570B2 (ja) 2020-07-07 2020-07-07 アプリケーションサーバを並列起動するためのシステムおよび方法

Country Status (1)

Country Link
JP (1) JP7148570B2 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07334466A (ja) * 1994-06-14 1995-12-22 Hitachi Ltd 分散システムおよび分散システムの自動運転スケジュールの作成方法
WO2006043321A1 (ja) * 2004-10-20 2006-04-27 Fujitsu Limited アプリケーション管理プログラム、アプリケーション管理方法、およびアプリケーション管理装置
JP2007179252A (ja) * 2005-12-27 2007-07-12 Nomura Research Institute Ltd サーバシステム、サーバシステムの制御方法
JP2014010772A (ja) * 2012-07-02 2014-01-20 Fujitsu Ltd システム管理装置、システムの管理方法、及びシステムの管理プログラム
US8819673B1 (en) * 2007-05-24 2014-08-26 United Services Automobile Association (Usaa) Systems and methods for java virtual machine management

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07334466A (ja) * 1994-06-14 1995-12-22 Hitachi Ltd 分散システムおよび分散システムの自動運転スケジュールの作成方法
WO2006043321A1 (ja) * 2004-10-20 2006-04-27 Fujitsu Limited アプリケーション管理プログラム、アプリケーション管理方法、およびアプリケーション管理装置
JP2007179252A (ja) * 2005-12-27 2007-07-12 Nomura Research Institute Ltd サーバシステム、サーバシステムの制御方法
US8819673B1 (en) * 2007-05-24 2014-08-26 United Services Automobile Association (Usaa) Systems and methods for java virtual machine management
JP2014010772A (ja) * 2012-07-02 2014-01-20 Fujitsu Ltd システム管理装置、システムの管理方法、及びシステムの管理プログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
TIMOTHY E. CARONE: "ミドルウェアと3層クライアント/サーバーシステム開発", ドクター・ドブス・ジャーナル/日本版 1997年3月号, vol. 第6巻, JPN6019037538, 1 March 1997 (1997-03-01), JP, pages 33 - 39, ISSN: 0004546186 *
TPシリーズ V1.1 運用手引書 B2WN-0022-01-00, JPN6019037536, May 1996 (1996-05-01), pages 1 - 26, ISSN: 0004546187 *
平 初&できるシリーズ編集部, できるPRO RED HAT ENTERPRISE LINUX7, vol. 第1版, JPN6019037535, 1 July 2015 (2015-07-01), pages 116 - 121, ISSN: 0004546188 *

Also Published As

Publication number Publication date
JP7148570B2 (ja) 2022-10-05

Similar Documents

Publication Publication Date Title
JP6832291B2 (ja) アプリケーションサーバを並列起動するためのシステムおよび方法
US9229707B2 (en) Zero downtime mechanism for software upgrade of a distributed computer system
US6192514B1 (en) Multicomputer system
US7716377B2 (en) Clustering server providing virtual machine data sharing
US7761538B2 (en) Dynamically configuring, allocating and deploying computing systems
EP3138013B1 (en) System and method for providing distributed transaction lock in transactional middleware machine environment
US6167430A (en) Multicomputer with distributed directory and operating system
US9110851B2 (en) System and method for persisting transaction records in a transactional middleware machine environment
WO2019164942A1 (en) Autonomous cell-based control plane for scalable virtualized computing
CN111258976A (zh) 分布式锁实现方法、系统、设备及存储介质
US8141084B2 (en) Managing preemption in a parallel computing system
US10970141B2 (en) Integrating transaction processing system interfaces with event-driven polyglot runtime modules
US8484616B1 (en) Universal module model
US10534640B2 (en) System and method for providing a native job control language execution engine in a rehosting platform
US6990608B2 (en) Method for handling node failures and reloads in a fault tolerant clustered database supporting transaction registration and fault-in logic
JP7148570B2 (ja) アプリケーションサーバを並列起動するためのシステムおよび方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200804

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200804

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210706

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210921

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220419

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220830

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220922

R150 Certificate of patent or registration of utility model

Ref document number: 7148570

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150