Azure Service Bus の概要

Azure イベントベース・メッセージベースソリューションの開発

Fiodar Sazanavets

Senior Software Engineer and Microsoft MVP

Queue Storage と Service Bus の比較

Queue Storage

  • シンプルなリスト
  • 高度な機能なし
  • メッセージは1回のみ処理

Service Bus

  • エンタープライズ向けメッセージング
  • 強力な配信保証
  • 高度なルーティング
  • 調整機能
  • 複数のコンシューマーに対応

Queue Storage

Service Bus

Azure イベントベース・メッセージベースソリューションの開発

Service Bus キュー

  • ポイント間通信:
    • プロデューサーがメッセージを送信
    • 1つのコンシューマーが受信
    • メッセージは1回のみ処理
  • Queue Storage と同様の動作

Service Bus ロゴ

Azure イベントベース・メッセージベースソリューションの開発

Service Bus トピック

  • パブリッシュ・サブスクライブモデル
    • 複数のプロデューサーがメッセージを送信
    • 複数のコンシューマーが同じメッセージを受信可能
  • 各サブスクリプションでメッセージをフィルタリング:
    • 必要なメッセージのみを受信
  • キューは単一の受信箱
  • トピックはメーリングリスト

Service Bus トピック

Azure イベントベース・メッセージベースソリューションの開発

メッセージの信頼性

  • 組み込みの信頼性:
    • 障害を自動処理
    • 自動リトライ
  • 配信不能キュー:
    • 失敗メッセージを格納
    • メッセージの検査が可能

メッセージの信頼性

Azure イベントベース・メッセージベースソリューションの開発

重複検出

  • 重複検出により、メッセージの二重処理を防止します。

  • 送信側が再試行して同じメッセージが届いた場合、メッセージ ID で検出されます。

  • 重複は設定された時間ウィンドウ内に破棄されます。

  • ネットワークの再試行があっても、ほぼ正確に1回の処理を実現します。

Service Bus の重複検出

Azure イベントベース・メッセージベースソリューションの開発

順序処理

Service Bus セッション

  • Service Bus セッションにより、メッセージの順序処理が可能になります。

  • 関連するメッセージはセッション ID を共有します(例:同一注文の更新すべて)。

  • 各セッションは1つのコンシューマーに順番に配信されます。

  • メッセージの順序はセッション内で保持され、コンシューマーは軽量な状態を維持できます。

  • 複数のセッションを並列処理しながら、各セッションの順序は維持されます。

Azure イベントベース・メッセージベースソリューションの開発

練習しましょう!

Azure イベントベース・メッセージベースソリューションの開発

Preparing Video For Download...