データベースを静止すると、ブローカーおよびデータベースは特定の動作を行います。
ユーザーが 1 つ以上のメッセージ・フローからデータベースにアクセスすると、場合によってはデータベース管理者がデータベースに対して静止命令を発行することがあります。 このアクションはデータベースの機能の 1 つで、ブローカーの機能ではありません。
静止しようとしているデータベースに、次の 3 つの前提事項が設けられています。
- データベースを静止できます (すべてのデータベースがこの機能をサポートしているわけではありません)
- データベースの静止時に、データベースに対する新規接続がデータベースによってブロックされます。
- データベースにアクセスする メッセージ・フロー が最終的にアイドルになります。
以下のリストは、データベースの静止中に予期される動作を示しています。
- データベースを静止するコマンドを実行します。 このコマンドを開始すると、使用中の接続は引き続き使用されますが、データベースに対する新規接続は許可されなくなります。
- データベースに対する既存の接続を使用する、メッセージ・フローで処理されるメッセージは、接続がアイドル状態になるまでこれらの接続を引き続き使用します。 そのため、引き続きメッセージ・フローによってメッセージが受信される場合、静止までに時間がかかる場合があります。 確実にメッセージが処理されなくなるようにするには、メッセージ・フローを停止してください。 メッセージ・フローを停止すると処理中のメッセージが停止され、そのフローが使用していたデータベース接続が解放されます。 このアクションによって、フローが保持するデータベース接続が確実にアイドル状態になります。
- メッセージ・フローに関するデータベース接続がアイドル状態になります。 この状態になると、メッセージ・フロー が使用しているユーザー・データベースに対する接続が、ブローカーによって解放されます。 ブローカーから、およびデータベースを使用している他のアプリケーションからデータベースへの接続がすべて解放されると、そのデータベースは静止機能を完了できます。
詳しくは、ユーザー・データベース接続を参照してください。