Azure Storage Queuesの使い方
Azure Storage 開発
Shahzad Mian
Content Developer, DataCamp
ストレージQueuesの概要
ストレージキューはメッセージキューイングサービスです。
アプリケーションは多数のリクエストを同時に処理することがあります。
各処理の完了を待つとシステムが遅くなります。
Azure Storage Queuesはコンポーネント間の非同期通信を実現します。
非同期メッセージングにより速度とスケーラビリティを維持できます。
現実世界の課題
Cipher CoffeeのオンラインストアはA一度に何百もの注文を受け取ります。
キューがなければ、各注文は他の処理が完了するまで待つ必要があります。
キューにより注文を即時受付し、処理を後で実行できます。
これによりWebサイトの速度を維持し、顧客満足度を高めます。
キューとは?
キューはメッセージを処理するための待ち行列です。
メッセージは
先入れ先出し(FIFO)
の順で処理されます。
各メッセージは小さな作業単位を表します。
処理が完了すると、メッセージはキューから削除されます。
Azure Storage Queuesの仕組み
Azure Storage Queuesは
ストレージアカウント
の一部です。
メッセージは最大64 KBで、永続的に保存されます。
アプリケーションの機能:
キューへのメッセージ送信。
メッセージの受信と処理。
処理完了後のメッセージ削除。
メッセージはシステム再起動後も保持されます。
非同期ワークフロー
送信者が「
Order 2045
の支払いを処理」などのメッセージを追加します。
Azure Function
などのバックグラウンドサービスがメッセージを取得します。
処理が成功すると、メッセージは削除されます。
このパターンにより、負荷時もスケーラブルかつ応答性を維持できます。
Cipher Coffeeの実例
Cipher CoffeeのWebサイトが注文メッセージをキューに送信します。
注文処理システムがキューからメッセージを読み取ります。
メッセージがデータベースと決済システムの更新をトリガーします。
バリスタは顧客のチェックアウトを遅らせることなく通知を受けます。
Queuesのメリット
疎結合:
システムが独立して動作します。
スケーラビリティ:
ワーカーを追加してメッセージ処理を高速化できます。
信頼性:
ダウンタイム中もメッセージが保持されます。
統合性:
Azure FunctionsおよびLogic Appsと連携できます。
メッセージのライフサイクル
メッセージは3つの主要なステージを経由します:
エンキュー:
メッセージがキューに追加されます。
デキュー:
ワーカーがメッセージを取得して処理します。
削除:
処理成功後にメッセージが削除されます。
失敗したメッセージは自動的に再表示され、再試行されます。
主なユースケース
注文処理とバックグラウンド請求。
通知メールの送信。
IoTテレメトリのバッファリング。
ログ収集とイベントパイプライン。
独立した再試行可能な操作にキューを使用します。
その他多数
QueuesとService Busの比較
Azure Service Bus
は高度なメッセージングシナリオに使用されます。
Service Busのサポート機能:
メッセージの順序付けとセッション。
トランザクションとトピック/サブスクリプション。
Azure Storage Queues
は軽量ワークロードに対してシンプルでコスト効率が高いです。
Cipher Coffeeは注文処理とリアルタイム更新にキューを使用しています。
さあ、練習しましょう!
Azure Storage 開発
Preparing Video For Download...