次の方法で共有


Service Bus とオペレーショナル エクセレンス

Azure Service Bus を使用して、エンタープライズメッセージブローカーを完全に管理し、メッセージキューと発行/サブスクライブトピックを扱います。 このサービスは、使用側がメッセージを受信する準備ができるまで、ブローカー (キューなど) にメッセージを格納します。

次のような利点があります。

  • 競合するワーカー間での負荷分散作業。
  • サービスとアプリケーションの境界を越えてデータと制御を安全にルーティングおよび転送します。
  • 高い信頼性を必要とするトランザクション作業の調整。

Service Bus の使用方法の詳細については、Azure Service Bus メッセージング 参照してください。 オンプレミス環境とクラウド環境間でアプリケーションとサービスを接続するメッセージングを設定する方法について説明します。

Service Bus がオペレーショナル エクセレンスを促進する方法を理解するには、次のトピックを参照してください。

次のセクションは、Azure Service Bus とオペレーショナル エクセレンスに固有のものです。

  • 設計に関する考慮事項
  • 構成チェックリスト
  • 推奨される構成オプション
  • ソース成果物

設計に関する考慮事項

Azure Service Bus アップタイム サービス レベル アグリーメント (SLA) を使用して信頼性を最大化します。 適切に構成されたアプリケーションは、メッセージを送受信したり、デプロイされたキューまたはトピックに対して他の操作を実行したりできます。 詳細については、Service Bus SLAを参照してください。

その他の設計上の考慮事項は次のとおりです。

Service Bus Premium および Standard メッセージングレベルのに関するドキュメントに加えて、次の機能は Premium Stock Keeping Unit (SKU) でのみ使用できます。

  • 専用リソース。
  • 仮想ネットワーク統合: Service Bus インスタンスに接続できるネットワークを制限します。 サブネットでサービス エンドポイントを有効にする必要があります。 仮想ネットワーク (Event Grid との統合など) を実装するときにサポートされない信頼された Microsoft サービスがあります。 詳細については、「特定の仮想ネットワークから Azure Service Bus 名前空間へのアクセスを許可する」を参照してください。
  • プライベート エンドポイント。
  • IP フィルタリング/ファイアウォール: 定義された IPv4 アドレスまたは IPv4 アドレス範囲のみに接続を制限します。
  • 可用性ゾーン: 追加コストなしで 1 つのリージョン内の可用性ゾーンにレプリカを分散することで、可用性が向上します。
  • Event Grid の統合: 使用可能なイベントの種類
  • メッセージング ユニットをスケーリングします。
  • geo ディザスター リカバリー (ペアの名前空間)。
  • BYOK (Bring Your Own Key): Azure Service Bus は保存データを暗号化し、アクセス時に自動的に暗号化を解除しますが、顧客は独自のカスタマー マネージド キーを持ち込むこともできます。

Geo ディザスター リカバリーと可用性ゾーンで Service Bus をデプロイする場合、サービス レベル目標 (SLO) は大幅に増加しますが、アップタイム SLA は変更されません。

チェックリスト

オペレーショナル エクセレンスを念頭に置いて Azure Service Bus を構成しましたか?

  • Service Bus メッセージング例外 が適切に処理されていることを確認します。
  • 高度なメッセージ キュー プロトコル (AMQP) を使用して Service Bus に接続し、可能な場合はサービス エンドポイントまたはプライベート エンドポイントを使用します。
  • 配信不能キュー (dlq) メッセージをアクティブに監視するプロセスを確立します。
  • Service Bus メッセージング を使用したパフォーマンス向上のためののベスト プラクティスを確認します。
  • Azure Storage キューと Azure Service Bus キューの違いを分析します。

構成に関する推奨事項

Azure Service Bus を構成するときの信頼性を最適化するには、次の推奨事項を検討してください。

勧告 説明
AMQP プロトコルを使用して Service Bus に接続し、可能な場合はサービス エンドポイントまたはプライベート エンドポイントを使用します。 この推奨事項は、Azure バックボーン上のトラフィックを保持します。 注: Microsoft.Azure.ServiceBus および Windows.Azure.ServiceBus 名前空間の既定の接続プロトコルは AMQPです。
配信不能キュー (dlq) メッセージをアクティブに監視するプロセスを確立します。 配信不能キューには、処理できないメッセージまたは受信者に配信できないメッセージが保持されます。 このキューを監視して問題の原因を調べ、必要な修正を適用し、メッセージを再送信することが重要です。
Azure Storage キューと Azure Service Bus キューの違いを分析します。 Azure Service Bus メッセージング エンティティは、Azure Storage キューよりも高度で信頼性が高く、機能豊富であることがわかります。 信頼性の高いメッセージングの要件のない単純なキュー メッセージングが必要な場合は、Azure Storage キューがより適切なオプションである可能性があります。

ソース成果物

  • プライベート エンドポイントを使用していない Premium Service Bus インスタンスを識別するには、次のクエリを使用します。

    Resources
    | where
      type == 'microsoft.servicebus/namespaces'
    | where
      sku.tier == 'Premium'
      and isempty(properties.privateEndpointConnections)
    
  • Premium レベルにない Service Bus インスタンスを識別するには、次のクエリを使用します。

    Resources
    | where
      type == 'microsoft.servicebus/namespaces'
    | where
      sku.tier != 'Premium'
    

次の手順