BEA Logo BEA Tuxedo Release 8.0

  BEA ホーム  |  イベント  |  ソリューション  |  パートナ  |  製品  |  サービス  |  ダウンロード  |  ディベロッパ・センタ  |  WebSUPPORT

 

   Tuxedo ホーム   |   BEA Tuxedo アプリケーション実行時の管理   |   先頭へ   |   前へ   |   次へ   |   目次

 


ATMI を使用してシステム・エラーとアプリケーション・エラーを処理する

ATMI を使用すると、プログラマは通信に関するよりグローバルな問題を管理できます。ATMI には、アプリケーションとシステムの両方に関連するエラーを処理する機能があります。サービス・ルーチンで、アプリケーション・エラー (無効なアカウント番号が使用された場合など) が発生すると、アプリケーション・エラーが返され、サービスは実行されたがリクエストは完了しなかったことがクライアントに通知されます。

システム障害 (リクエストの実行中にサーバがクラッシュするなど) が発生すると、システム・エラーが返され、サービス・ルーチンによりタスクが実行されなかったことがクライアントに通知されます。BEA Tuxedo システムは、アプリケーションの動作およびシステム自体の動作を監視し、プログラムに対してシステム・エラーを発行します。

設定可能なタイムアウトのメカニズムを使用する

リクエストの処理中に、サービスが無限ループに陥る場合があります。この場合、クライアント側で待機しても応答は戻りません。クライアントが無限に待機しないようにするため、BEA Tuxedo システムには、ブロッキング・タイムアウトとトランザクション・タイムアウトという 2 つの設定可能なタイムアウトのメカニズムがあります。

ブロッキング・タイムアウトは、ブロックされたプログラムが、何らかのイベント発生後に指定の時間を超えて待機しないようにするメカニズムです。いったんタイムアウトが検出されると、待機中のプログラムは、ブロッキング・タイムアウトが発生したことを通知するシステム・エラーを受信します。ブロッキング・タイムアウトは、サービス要求の有効期間、つまりアプリケーションがサービス要求に対する応答を待機する時間を定義します。タイムアウト値は、TUXCONFIG ファイルの RESOURCES セクションの BLOCKTIME フィールドで定義されるグローバルな値です。

トランザクション・タイムアウトは、アクティブなトランザクションでリソースが集中することが原因で発生するタイムアウトです。トランザクション・タイムアウトは、トランザクション (その中で複数のサービス要求が行われる場合もあり) の有効期間を定義します。このタイムアウト値は、tpbegin(3c)). を呼び出して、トランザクションを開始するときに定義されます。トランザクション・タイムアウトは、リソースを最大化する場合に便利です。たとえば、トランザクション処理中にデータベースがロックされた場合に、アプリケーションのトランザクション用のリソースが停止状態になる時間を制限することができます。トランザクション・タイムアウトは、常にブロッキング・タイムアウトを上書きします。

冗長サーバを設定して障害を処理する

冗長サーバと自動再起動機能をアプリケーションに設定して、障害に対処することもできます。冗長サーバを設定すると、可用性が高まり、大量の処理、サーバ障害、またはマシン障害を処理できるようになります。BEA Tuxedo システムは、アクティブなサーバの状態を定期的に調べ、再起動可能なサーバの障害を検出すると、自動的にサーバの新しいインスタンスを生成します。

サーバに自動再起動のプロパティを設定すると、個々のサーバの障害を処理できます。また、システムによる再起動の回数を指定することもできます。この機能により、サーバの再起動回数の制限が原因で度々発生するアプリケーション・エラーを回避できます。

BEA Tuxedo システムは、アクティブなマシンの可用性を頻繁に調べます。マシンにアクセスできない場合は、そのマシンを「分断されたマシン (partitioned)」とマークします。この場合は、システム・イベントが生成されます。マシンの分断は、ネットワーク障害、マシン障害、またはサーバの性能低下が原因で発生する場合もあります。

関連項目

 

先頭へ戻る 前のトピックへ 次のトピックへ