御成門プログラマーの技術日記

Microsoft AzureやAngularなどの技術情報を発信します。

Azure SignalR Service の価格形態を調べてみた【コスト見積・最適化】

Azure SignalR Service の課金形態や価格要素を調べてみました。

Azure SignalR Service とは

Azure SignalR Service の基本的な機能や使い方についての説明については別の記事で紹介しています。ぜひこちらをご参照ください。
onarimon.jp

Azure SignalR Service の価格形態について


Azure SignalR Service の課金形態について調べてみました。課金要素としては「価格レベル」、「ユニット数」、「メッセージ数」がキーになります。

まず「価格レベル」ですが、現在のところ Free, Standard (標準), Premium の3種類のレベルがあるようです。 価格レベルによって同時接続数(コンカレント接続数)やメッセージ数の制限、SLA、 最大ユニット数などが変わってきます。

続いて「ユニット数」ですが、Azure SignalR Service におけるインスタンス数みたいなものです。1ユニットごとに同時接続数や1日にやり取りできるメッセージ数が変わります。

最後に「メッセージ数」ですが、Standardレベル、Premiumレベルでは1ユニットごとに日単位で100万メッセージまでは費用がかかりません。1日でそれ以上のメッセージが必要な場合は使用した分追加で課金が発生します。

これらの課金要素により Azure SignalR Service の課金が決定します。自分は最初勘違いしていたのですが、接続数は間接的にはコストに影響しますが、直接接続した数での課金は発生しません。詳しくは下記の Microsoft 公式ドキュメントをご参照ください。
azure.microsoft.com

Azure SignalR Service の価格レベルを選定する方法

価格レベルを選定する方法についてです。ちょこっと試すなどテスト用の環境であればFreeレベルで大丈夫です。

本番の環境であれば StandardレベルかPremiumレベルを選択しましょう。 Standard と Premium の大きな違いはSLAと「可用性ゾーン」、「ユニットの自動スケーリング」、「カスタムドメイン」が使えるかの違いです。特に影響が大きいのが「ユニットの自動スケーリング」だと思います。自動スケーリングがないとボトルネックになるのが同時接続数ですね。使用するアーキテクチャで同時接続数が最大値を超える可能性があるなら Premium プランにして自動スケーリングを設定した方がよいと思います。

最後に

Azure SignalR Service の課金形態を紹介しましたが、シンプルでわかりやすい課金形態だったと思います。ぜひ、Azure SignalR Service をどんどん使ってみてもらえると幸いです。ご拝読ありがとうございました。