This topic describes the billing methods and billable items of ApsaraMQ for MQTT. In the actual business, you can select an ApsaraMQ for MQTT instance that meets your business requirements based on the description in this topic.
Usage notes
If you use ApsaraMQ for MQTT V3.x.x to exchange data with other Alibaba Cloud services based on the specified rules, you are charged for the services based on their billing rules. You can use ApsaraMQ for MQTT to exchange data with only ApsaraMQ for RocketMQ, which charges you topic occupancy fees and API call fees. For more information, see Billing overview.
Instance types and billing methods
The following table describes the instance types and billing methods supported by ApsaraMQ for MQTT. For information about the feature differences between instance types, see Instance editions.
Instance type | Billing method | Description | Scenario |
| Subscription | After you select resource specifications for an instance, you must pay an upfront fee. You can use the instance only after you complete the payment. | This billing method allows you to reserve resources in advance and helps you minimize costs by applying discounts. You can use this billing method if your business has a large amount of traffic and you require the service for long-term usage. |
Pay-as-you-go instance (discontinued) | Pay-as-you-go | ApsaraMQ for MQTT no longer supports the pay-as-you-go billing method. You can continue using existing pay-as-you-go instances. For more information, see Pay-as-you-go instances (end of sale). |
Billable items
The following figure shows the billable items of ApsaraMQ for MQTT.
For more information, see Billing of Basic Edition and Enterprise Platinum Edition instances
Calculation coefficients
When you transmit messages by using the Message Queuing Telemetry Transport (MQTT) protocol, the settings of the QoS and cleanSession parameters affect the actual charges. You are charged for messages, including calls to the client API and the cloud API. During billing, the system calculates the number of messages as the product of the number of messages that correspond to a transmission quality level in the specified protocol multiplied by the calculation coefficient that corresponds to this level. For example, if the number of messages that correspond to a transmission quality level is 1, the system calculates the number of messages as the product of 1 multiplied by the corresponding calculation coefficient.
The following table describes the calculation coefficients that correspond to different transmission quality levels in ApsaraMQ for MQTT.
Transmission quality level | Calculation coefficient |
| 1 |
| 2 |
| 5 |
| 5 |
ApsaraMQ for MQTT does not support the MQTT-based transmission quality level in which the
QoS
parameter is set to 2 and thecleanSession
parameter is set to false. If you specify this transmission quality level, the calculation coefficient is 5.ApsaraMQ for MQTT does not support the MQTT-based transmission quality level in which the
QoS
parameter is set to 0 and thecleanSession
parameter is set to false. If you specify this transmission quality level, the calculation coefficient is 1.
For more information about the QoS and cleanSession parameters, see Terms.