このトピックでは、ビジネス アクティビティ監視 (BAM) のパフォーマンス要因について説明します。
BAM ディスクの使用構成
BAM は、BAM データベースに保持される大量のデータが原因で BizTalk システムの負荷が高い場合に、大幅なオーバーヘッドが発生します。 したがって、BAM データベースのディスク I/O 手法を慎重に使用することが非常に重要です。
BAM EventStream API
BizTalk BAM シナリオでは、次の 4 種類の EventStream を使用できます。
DirectEventStream (DES)
BufferedEventStream (BES)
OrchestrationEventStream (OES)
MessageEventStream (MES)
次の要因に基づいて、これらの API のいずれかを選択する必要があります。
待機時間が問題の場合は、データが BAM プライマリ インポート データベースに同期的に保持される DES を選択します。
イベント挿入のパフォーマンスとスループットが懸念される場合は、非同期 API (BES、OES、MES) を選択します。
BizTalk Server がインストールされていないコンピューターで実行されるアプリケーションを作成する場合は、DES と BES を使用します。これらの API は、BizTalk 以外のアプリケーションで使用できます。
注
EventStream の種類を混在させるシナリオがあります。 たとえば、パイプライン処理の場合、パイプラインがトランザクションをロールバックしているかどうかに関係なく、BAM で特定のデータをキャプチャできます。 特に、失敗したメッセージの数やパイプライン処理中に発生した再試行回数に関するデータをキャプチャできます。 このような状況でデータをキャプチャするには、BES を使用する必要があります。
BizTalk Server がインストールされているコンピューターでアプリケーションを実行する場合は、MES と OES を使用します。 (これらの API は BizTalk アプリケーションからのみ使用できます)。
注
OES は MES に相当しますが、BizTalk オーケストレーション用です。
BAM イベント永続化をパイプライン トランザクションと同期させる場合は、メッセージング イベント ストリーム (MES) を使用する必要があります。
すべての非同期 EventStreams (BES、MES、OES) は、最初に BizTalk MessageBox データベースにデータを保持します。 データは定期的に処理され、追跡データ デコード サービス (TDDS) によって BAM プライマリ インポート データベースに保持されます。
BAM EventStream API の詳細については、BizTalk Server ドキュメントの EventStream クラス (https://go.microsoft.com/fwlink/?LinkId=158046) を参照してください。
BAM パフォーマンス カウンター
BAM のパフォーマンス カウンターの詳細な一覧については、BizTalk Server ドキュメントの BAM パフォーマンス カウンター (https://go.microsoft.com/fwlink/?LinkId=158048) を参照してください。