Skip to content

Development Related Questions

Which protocol connections are supported?

EMQX Cloud deployment supports MQTT over TLS/SSL and WebSockets over TLS/SSL protocol connections.

If you need other protocol support, you can submit a ticket or send an email (cloud-support@emqx.io) to us.

How to bind a domain name?

When you create a deployment in EMQX Cloud, you will be given an MQTT connection address, which is displayed as a domain in the deployment.

You may already have your own domain and would like to be able to bind to it.

Note: mqtts and wss ports will not be available on Standard after the domain is bound.

Steps

  1. Let's assume you have the top-level domain abc.com and want to access the MQTT service as mqtt.abc.com, and your deployment on EMQX Cloud has a connection address of xxx.emqx.cloud.

  2. Point the CNAME record from mqtt.abc.com to xxx.emqx.cloud in your domain settings panel.

  3. Once the DNS resolution has taken effect, you can connect to the MQTT service via mqtt.abc.com.

How to set up NAT gateway configuration?

NAT is only supported for Professional plan. You can enable NAT gateway in Valued-Added Service.

Will cluster scaling affect device connectivity?

It will cause an interruption to the connectivity for a few seconds.

How do I connect my own services to the MQTT service via local network when I have built a VPC peer-to-peer connection?

If you need an internal network connection to the professional deployment, you can purchase Internal Load Balancers to achieve that. It'a Value Added Service provided by us.

Is API supported?

Yes. An HTTP API is provided for integration with external systems, such as querying client information, posting messages, and creating rules.

Find more here REST API

What kind of TLS/SSL authentication is supported?

Support one-way, two-way, and custom signature for configuration.

How to integrate with other systems?

You can use data integrations to integrate with other applications. Check Data Integrations for more details.

The authentication data of the device is stored in my own database. Can I do the authentication of MQTT connections through my own database?

EMQX Cloud Dedicated supports authentication from the user's own database, see the document External Authentication and Access Control.

How long can device logs be kept in the console?

EMQX Cloud does not keep device communication logs, only deployment event logs, which are kept for 7 days by default.

How long can device events be stored?

Device event data can be permanently integrated into third-party storage through event topics.

How to calculate sessions?

The definition for session: The number of sessions is calculated by adding the number of connected clients and the disconnected clients with sessions retained in the broker. Connected clients are those that connect to the broker after CONNECT, including those that are not disconnected within the keepAlive span. Disconnected clients that keep a session are clients that are offline but have CleanSession set to false, and such clients are counted in the session count. When a device DISCONNECT goes offline, or if it has not communicated for more than the keepAlive span, the device will go offline and will not be counted in the number of sessions.

TPS definition

TPS, or Transactions Per Second, is used to measure the number of messages processed per second in a deployment.The following MQTT messages and HTTP messages will be counted into TPS.

TypeFlow directionDescription
MQTT PUBLISHSent from device or AppsSending messages from devices or applications to the deployment, and the deployment receives the messages.
MQTT PUBLISHSent from deploymentSending messages from the deployment to the subscriber (device or application service), and the subscriber receives the messages.
MQTT RETAINEDSending from devices or services, or sending from the deployment.Publish or recieve retained messages
HTTP PUBLISHSent from AppsSending messages by API: POST /mqtt/publish and POST /mqtt/publish_batch

The following MQTT messages will not be counted into TPS.

TypeDescription
MQTT CONNECTClient requests a connection to a server
MQTT CONNACKAcknowledge connection request
MQTT PUBACKPublish acknowledgment
MQTT PUBRECAssured publish received (part 1)
MQTT PUBRELPublish Release (assured delivery part 2)
MQTT PUBCOMPPublish Complete (assured delivery part 3)
MQTT SUBSCRIBEClient Subscribe request
MQTT SUBACKSubscribe Acknowledgment
MQTT UNSUBSCRIBEClient Unsubscribe request
MQTT UNSUBACKUnsubscribe Acknowledgment
MQTT PINGREQPING Request
MQTT PINGRESPPING Response
MQTT DISCONNECTClient is Disconnecting