ApsaraMQ for RabbitMQ のサーバーレスインスタンスには、「プロビジョニング容量とエラスティックトラフィックによる課金」と「メッセージングリクエストによる課金」という 2 つの課金方法があります。前者では、ビジネスワークロードに基づいて購入時にプロビジョニング容量を選択しますが、後者は完全エラスティックで、事前のプロビジョニングは必要ありません。お客様のビジネスに最も適した方法を選択してください。このトピックでは、サーバーレスインスタンスの課金項目と課金ルールについて説明します。
サポートされているリージョン
サーバーレスインスタンスは特定のリージョンでのみ利用可能です。詳細については、サポートされているリージョン をご参照ください。
課金項目
「プロビジョニングされたキャパシティとエラスティックトラフィックによる課金」および「メッセージングリクエストによる課金」のいずれの課金方法でも、料金は 1 時間単位で発生します。課金は、インスタンスを購入した時点で開始されます。次の図は、課金項目を示しています。
以降のセクションでは、各課金項目の単価と課金計算式について説明します。料金計算ツールを使用して、コストを見積もることもできます。
メッセージングのカウントルール
以下のルールは、メッセージングリクエスト、プロビジョニングされたキャパシティ、エラスティックトラフィックを含む、メッセージング機能のすべての課金項目に適用されます。
メッセージングリクエスト = メッセージ受信 + メッセージ配信
課金ログまたは請求明細項目を照合する際は、次の表を使用して、ログフィールド名とこのドキュメントで使用されている用語を対応させてください:
課金ログフィールド | ドキュメントの用語 | 説明 |
| メッセージ受信 | キューがプロデューサーから受信したメッセージの数。1 つのメッセージが N 個のキューにルーティングされた場合、N 回のメッセージ受信としてカウントされます。 |
| メッセージ配信 | キューからコンシューマーへ配信されたメッセージの数。ACK 応答に関係なく、配信試行ごとに 1 回カウントされます。 |
メッセージ受信:キューが受信したメッセージの数です。たとえば、エクスチェンジに送信されたメッセージが 3 つのキューにルーティングされた場合、3 回のメッセージ受信としてカウントされます。
メッセージ配信:キューからコンシューマーへのメッセージ配信の試行です。ACK 応答に関係なく、試行ごとに 1 回のメッセージ配信としてカウントされます。
ペイロードサイズ:リクエストは、メッセージサイズに基づいて 4 KB のチャンク単位で測定されます。4 KB 未満のメッセージは 1 リクエストとしてカウントされます。4 KB を超えるメッセージの場合、リクエスト数は天井関数を使用して計算されます。たとえば、18 KB のメッセージを配信すると、5 リクエストとしてカウントされます (⌈18/4⌉ = 5)。
説明⌈ ⌉ は天井関数を示します。これは、数値を次の整数に切り上げることを意味します。
メッセージングリクエスト
従量課金の サーバーレス インスタンス の場合、料金は メッセージングリクエスト の合計数に基づいて計算されます。
課金計算式
1 時間あたりのメッセージング料金 = メッセージングリクエストの合計 × リクエストあたりの単価 (USD)
単価
リクエストタイプ | 単価 (100 万リクエストあたり USD) | ||
UAE (Dubai) および SAU (Riyadh - Partner Region) 以外のリージョン | UAE (Dubai) | SAU (Riyadh - Partner Region) | |
通常メッセージの送受信 | 0.31 | 0.62 | 0.372 |
遅延メッセージの受信 | 1.55 | 3.1 | 1.86 |
遅延メッセージの配信 | 0.31 | 0.62 | 0.372 |
課金の例
China (Hangzhou) リージョン の サーバーレス インスタンス を例に挙げます。1 時間の使用状況は次のとおりです。
ブローカーがプロデューサーから 700 万個の通常メッセージと 200 万個の遅延メッセージを受信します。各メッセージは 8 KB です。ブローカーがコンシューマーに 800 万個の通常メッセージと 320 万個の遅延メッセージを配信します。各メッセージは 8 KB です。
1 時間あたりのメッセージング料金は、次のように計算します: (7 + 8) × ⌈8/4⌉ × 0.31 + 2 × ⌈8/4⌉ × 1.55 + 3.2 × ⌈8/4⌉ × 0.31 = USD 17.484
プロビジョニングされたキャパシティー
サーバーレス ApsaraMQ for RabbitMQ インスタンスが「プロビジョニング + エラスティック」課金方法を使用する場合、メッセージング料金はプロビジョニングされたキャパシティー料金とエラスティックトラフィック料金からなります。プロビジョニングされたキャパシティー料金は、プロビジョニングされたキャパシティーと使用期間によって決まります。
課金数式
1時間あたりのプロビジョニングされたキャパシティー料金 = プロビジョニングされたキャパシティー (TPS) × プロビジョニングされたキャパシティーの単価 (USD/TPS・時間)
単価
リージョン | 単価 (USD/TPS・時間) | |
共有 | 専用 | |
UAE (Dubai) および SAU (Riyadh - Partner Region) 以外のリージョン | 0.00013 | 0.00021 |
UAE (Dubai) | 0.00026 | 0.00042 |
SAU (Riyadh - Partner Region) | 0.000156 | 0.000252 |
課金例
たとえば、China (Hangzhou) リージョンのサーバーレス ApsaraMQ for RabbitMQ インスタンスを例とします。このインスタンスは共有クラスターモードでデプロイされており、「プロビジョニング + エラスティック」課金方法を使用しています。3,000 TPS のキャパシティをプロビジョニングした場合、1時間あたりのプロビジョニングされたキャパシティー料金は 3,000 × 0.00013 = 0.39 USD です。30日間の合計料金は 0.39 × 24 × 30 = 280.8 USD となります。
エラスティックトラフィック
サーバーレスインスタンスが「プロビジョニング済みキャパシティ + エラスティックトラフィック」課金方法を使用する場合、プロビジョニング済みキャパシティを超えるトラフィックは、エラスティックトラフィックとして課金されます。
課金計算式
この式において、T0、T1、...、Ti、...、T59 は、それぞれその時間の 0 分目、1 分目、...、i 分目、...、59 分目を示します。
単価
リージョン | 単価 (USD/TPS/分) | |
Shared | Exclusive | |
UAE (Dubai) と SAU (Riyadh - Partner Region) を除くリージョン | 0.000019 | 0.000028 |
UAE (Dubai) | 0.000038 | 0.000056 |
SAU (Riyadh - Partner Region) | 0.000022 | 0.0000336 |
課金例
China (Hangzhou) リージョンに、プロビジョニング済みキャパシティが 5,000 TPS の Shared サーバーレスインスタンスがあると仮定します。このインスタンスは「プロビジョニング済みキャパシティ + エラスティックトラフィック」課金方法を使用しています。次の表は、1時間におけるインスタンスの使用状況を示しています。
項目 | 0 分目 | 1 分目 | 2 分目 | 3 分目 | ... | 58 分目 | 59 分目 |
実際のピーク TPS | 5200 | 5300 | 4000 | 4500 | < 5000 | 4800 | 5100 |
エラスティック TPS | 200 | 300 | 0 | 0 | 0 | 0 | 100 |
この時間のインスタンスのエラスティックトラフィック料金は、(1 × 200 + 1 × 300 + 1 × 100) × 0.000019 = USD 0.0114 となります。
キュー数
サーバーレス ApsaraMQ for RabbitMQ インスタンスの場合、料金は作成したキューの数に基づいて計算されます。
料金計算式
1 時間あたりのキュー料金 = インスタンスのキュー数 × キューの単価 (USD/キュー)
課金数量は、特定の 1 時間におけるインスタンスのキューのピーク数です。
たとえば、1 時間以内に 300 個のキューを作成してから 100 個を削除した場合、その 1 時間については 300 個のキューに対して課金されます。
単価
キューあたりの単価は、キューの合計数に基づいて階層化されています。
料金階層 | 単価 (USD/キュー/時間) | |
共有 | 専有 | |
[0, 200] | 0.000044 | 0 |
[201, 3000] | 0.000022 | 0.000022 |
[3001, 20000] | 0.000044 | 0.000044 |
[20001, 100000] | 0.000088 | 0.000088 |
料金計算の例
次の例では、2 時間にわたるインスタンスのキュー料金を計算します。
時間 | 操作 | 実際の課金数量 | 単価 | 合計料金 |
1 時間目 | 150 個のキューを作成してから 50 個を削除します。 | 150 | 150 個のキューは料金階層 [0, 200] に該当します。単価はUSD 0.000044/キュー/時間です。 | 150 × 0.000044 = USD 0.0066 |
2 時間目 | さらに 500 個のキューを追加します。 | 100 + 500 = 600 |
| 200 × 0.000044 + 400 × 0.000022 = USD 0.0176 |
メッセージストレージ料金
サーバーレスインスタンスでは、消費済みのメッセージを含め、すべてのメッセージのストレージサイズと期間に基づき、最大 3 日間、メッセージストレージに課金されます。
課金計算式
時間単位のストレージ料金 = ストレージサイズ (GB) × 単価 (USD/GB/時)
単価
リージョン | 単価 (USD/GB/時) |
UAE (Dubai) および SAU (Riyadh - Partner Region) 以外のリージョン | 0.000319 |
UAE (Dubai) | 0.0005742 |
SAU (Riyadh - Partner Region) | 0.0003828 |
アウトバウンドインターネットトラフィック
サーバーレスインスタンスでは、インターネットアクセスの使用時に発生するアウトバウンドインターネットトラフィックにのみ課金されます。
インターネットアクセスが無効の場合、アウトバウンドインターネットトラフィックは課金されません。
料金計算式
時間単位のインターネット料金 = 合計アウトバウンドインターネットトラフィック (GB) × 単価 (GB あたり USD)
単価
リージョン | 単価 (GB あたり USD) |
SAU (Riyadh - Partner Region) 以外のリージョン | 0.13 |
SAU (Riyadh - Partner Region) | 0.156 |
メッセージトレース
メッセージトレース機能を有効にすると、生成されるメッセージトレースログの数に応じて、サーバーレスインスタンスに料金が発生します。
この機能が無効になっている場合、料金は発生しません。
料金計算式
時間単位のメッセージトレース料金 = メッセージトレースログの数 × トレースあたりの単位価格 (USD)
ログ集計ルール
以下の API オペレーションは、課金対象のメッセージトレースログを生成します。オペレーションが失敗した場合でも、生成された各ログに対して課金されます。
BasicAck
BasicConsume
BasicGet
BasicNAck
BasicReject
SendMessage
PushMessage
単位価格
リージョン | 単位価格 (USD) |
サウジアラビア (リヤド) 以外のリージョン | 0.0155 |
サウジアラビア (リヤド) | 0.0186 |
インスタンス料金
インスタンス料金は、PrivateLink エンドポイントを使用する従量課金インスタンスにのみ適用されます。
この料金は、2 つのアベイラビリティーゾーンにある PrivateLink インスタンスを対象とし、ストレージ容量 1 GB、キュー 30 個、および 1 時間あたりに送受信されるメッセージ 50,000 件 (通常、スケジュール、シーケンシャルなどのすべてのタイプ) の無料利用枠が含まれます。
料金計算式
時間あたりのインスタンス料金 = PrivateLink エンドポイントを使用する従量課金インスタンス数 × 単価 (インスタンス時間あたり USD)
単価
リージョン | インスタンス料金 (USD/時間) |
その他のパブリッククラウドリージョン | 0.02 |
UAE (Dubai) | 0.04 |
Saudi Arabia (Riyadh) | 0.024 |
PrivateLink
PrivateLink エンドポイントを有効にすると、それ経由で ApsaraMQ for RabbitMQ にアクセスする際に料金が発生します。詳細については、「PrivateLink エンドポイント」をご参照ください。
よくある質問
Q: サーバーレスインスタンスのトラフィックは少ないのに月額料金が高い、またはプロビジョニングされたキャパシティー料金が高すぎるように見えます。どうすればよいですか?
サーバーレスインスタンスの料金は、次の 2 つの要素で構成されています。
実際のリソース使用料金:メッセージングリクエスト、ストレージ使用量、キュー数、アウトバウンドインターネットトラフィック、およびメッセージトレース (有効な場合) に基づく料金。
プロビジョニングされたキャパシティー料金:プロビジョニングされたキャパシティー仕様 (TPS) と使用期間に基づく料金で、実際のトラフィック量とは無関係です。これは 「プロビジョニングキャパシティー + 弾性」 課金方法を使用するインスタンスにのみ適用されます。
月額料金が予想よりも高い場合は、次の手順に従って原因を特定してください。
Alibaba Cloud 請求センター にログインして項目別の請求明細を表示し、最も料金が高い課金項目を特定します。
プロビジョニングされたキャパシティー料金が高い場合は、プロビジョニングされたキャパシティー仕様 (TPS) がワークロードに対して適切なサイズであるかを確認してください。課金ルールについては、このドキュメントの「プロビジョニングキャパシティー」および「弾性トラフィック」のセクションをご参照ください。必要に応じて、その情報に基づいてプロビジョニングされたキャパシティー仕様を調整してください。
Q: 請求書では、個々のキューレベルでコスト詳細を表示できますか?
現在、請求書およびコンソールでは、個々のキューレベルでのコスト詳細表示に対応していません。
代替案として、次の方法でキューごとのコストを推定できます。
Simple Log Service (SLS) を有効にしてクエリを実行し、各キューの
sendCnt(メッセージ受信) およびpushCnt(メッセージ配信) の値を取得します。「メッセージングの計算ルール」セクションで説明されている計算ルール (4 KB のペイロードサイズ乗数 (⌈メッセージサイズ / 4 KB⌉) および該当する単価を含む) を適用して、各キューの推定コストを計算します。
Q: 異なるサーバーレス課金方法 (メッセージリクエスト課金とプロビジョニングキャパシティーおよび弾性トラフィック課金) のテストコストを見積もったり比較したりするにはどうすればよいですか?
インスタンス作成ページでは、インスタンスを設定すると、右下に推定価格がリアルタイムで更新されます。購入ページに進み、メッセージリクエスト課金、プロビジョニングキャパシティーおよび弾性トラフィック課金、サブスクリプションという異なる課金方法を切り替えて、購入を確定せずに推定コストを直接比較できます。これにより、テストまたは本番環境のシナリオにおいて、どのオプションが最もコスト効率が高いかを判断できます。
関連トピック
サーバーレスインスタンスを作成するには、「インスタンス」をご参照ください。
サーバーレスインスタンスが不要になった場合は、「ApsaraMQ for RabbitMQ インスタンスの削除」をご参照ください。
ApsaraMQ for RabbitMQ はサブスクリプションインスタンスもサポートしています。課金項目の詳細については、「サブスクリプションインスタンスの課金」をご参照ください。