監視およびログ記録
監視は重要です。 アーキテクチャによっては、少し難しい場合があります。 これはさらに困難ですが、分散システムでも重要な場合があります。
リアルタイム アプリケーションを監視する
我々は、リアルタイムシステムでは、タスクが所定の時間枠内でその機能を果たすことを学びました。 一般的なリアルタイム アプリケーション スタックを監視する 5 つの手順の一覧を見てみましょう。
- システムのすべての個々のタスクを定義します。
- 各タスクの完了の期間を見積もります。
- 各タスクのパフォーマンス、依存関係、およびシステム全体の規則性を監視して確認します。
- タスクがその時間枠を逃した場合は、アラートを指定し、戦略を設定します。
- 自動化してみてください。
重要
個々のタスクを他のタスクから切り離して定義してください。 1 つのタスクで障害が発生しても、他のタスクの障害は発生しません。
注
信頼性の高いシステムが重要です。 自動化は、システムの信頼性を高めるのに役立ちます。
イベント ドリブン アプリケーション スタックを監視する
ほとんどのイベント ドリブン アーキテクチャでは、 ファイア アンド フォーゲットが使用されます。 ファイア アンド フォーゲットでは、発信元はメッセージを送信し、受信者からの応答は期待しません。 発信元は、このシナリオのプロデューサーであり、次のサービスにイベントを送信します。 次のサービスには、別の関数、メッセージ ブローカー、またはイベント ハブまたはストリームを指定できます。 このサービスは、メッセージの受信者にすることはできません。 特定のシナリオと同様に、イベント ハブからメッセージを受信する使用関数はメッセージの受信者です。
イベント ドリブン アプリケーション スタックが分散システムの場合は、インフラストラクチャの各部分とシステム全体を適切に監視することを忘れないでください。