Artikel ini menjelaskan cara menggunakan SDK ApsaraMQ for RocketMQ dan ApsaraMQ for MQTT, serta menyediakan pemetaan antara struktur pesan dan atribut yang terlibat dalam interaksi. Informasi ini membantu Anda lebih memahami dan menggunakan kedua produk tersebut.
ApsaraMQ for MQTT adalah gateway yang dirancang untuk perangkat seluler. Dalam pengiriman dan penerimaan pesan, produk ini harus digunakan bersama dengan solusi penyimpanan lainnya, seperti ApsaraMQ for RocketMQ yang berfungsi sebagai penyimpanan pesan.
Jika Anda menggunakan ApsaraMQ for MQTT secara mandiri, Anda tidak perlu memperhatikan hubungan pemetaan yang dijelaskan dalam artikel ini. Cukup ikuti spesifikasi protokol MQTT standar.
Untuk informasi lebih lanjut tentang ApsaraMQ for MQTT, lihat Apa itu ApsaraMQ for MQTT? dan Istilah.
Pemetaan Struktur Pesan
ApsaraMQ for MQTT dan ApsaraMQ for RocketMQ merupakan sistem pesan berbasis model publikasi-langganan dengan konsep serupa. Gambar berikut menunjukkan perbedaan utama dan pemetaan antara kedua sistem tersebut.

Seperti ditunjukkan pada gambar di atas, ApsaraMQ for MQTT memiliki struktur topik multi-level, sedangkan ApsaraMQ for RocketMQ hanya mendukung topik level 1. Oleh karena itu, ApsaraMQ for MQTT memetakan topik level -1 ke ApsaraMQ for RocketMQ, sementara topik level -2 dan level -3 dipetakan ke properti pesan ApsaraMQ for RocketMQ.
ApsaraMQ for RocketMQ mendukung properti kustom dalam protokolnya, tetapi versi saat ini dari protokol MQTT tidak mendukung properti. Untuk memudahkan pelacakan informasi header dan perangkat dalam protokol MQTT, ApsaraMQ for MQTT memetakan sebagian informasi tersebut ke ApsaraMQ for RocketMQ, sehingga mempermudah penggunaan SDK ApsaraMQ for RocketMQ.
ApsaraMQ for RocketMQ dan ApsaraMQ for MQTT melakukan serialisasi data dari pesan layanan Anda. Namun, ApsaraMQ for RocketMQ dan ApsaraMQ for MQTT tidak melakukan pengkodean atau dekode tambahan pada pesan layanan.
Pemetaan Properti
Tabel berikut mencantumkan hubungan pemetaan bidang properti yang didukung oleh ApsaraMQ for MQTT dan ApsaraMQ for RocketMQ. Anda dapat mengatur atau mendapatkan informasi dengan membaca dan menulis properti ini selama interaksi aplikasi melalui SDK ApsaraMQ for RocketMQ dan ApsaraMQ for MQTT.
Untuk informasi lebih lanjut tentang QoS, cleanSession, topik, dan ID Klien, lihat Istilah.
| Kunci Properti | Nilai Valid | Deskripsi |
| qoslevel | 0, 1, 2 | ApsaraMQ for RocketMQ Kirim ke ApsaraMQ for MQTT properti ini dapat diatur saat mengirim pesan. Jika tidak diatur, nilai default 1 digunakan. ApsaraMQ for MQTT Kirim ke ApsaraMQ for RocketMQ dapat dibaca langsung. |
| cleansessionflag | true dan false | ApsaraMQ for RocketMQ Kirim ke ApsaraMQ for MQTT parameter ini diatur saat klien berlangganan pesan P2P. Jika tidak diatur, nilai default "true" digunakan. Parameter ini tidak dapat diatur untuk pesan lainnya. ApsaraMQ for MQTT Kirim ke ApsaraMQ for RocketMQ dapat dibaca langsung. |
| mqttSecondTopic | String yang menunjukkan subtopik tertentu | ApsaraMQ for RocketMQ Kirim ke ApsaraMQ for MQTT Untuk memfilter pesan berdasarkan subtopik, atur parameter ini. Jika Anda tidak mengatur parameter ini, nilai default null digunakan. ApsaraMQ for MQTT Kirim ke ApsaraMQ for RocketMQ dapat dibaca langsung. |
| mqttRealTopic | String sub-level yang diharapkan oleh layanan agar klien penerima pesan menampilkan | ApsaraMQ for RocketMQ Kirim ke ApsaraMQ for MQTT Anda dapat mengatur parameter ini untuk pesan klien. Parameter ini biasanya digunakan untuk pesan P2P. Jika Anda tidak mengatur parameter ini, pesan P2P menggunakan nama Topik tetap secara default. ApsaraMQ for MQTT Kirim ke ApsaraMQ for RocketMQ atribut tidak ditemukan dalam pesan. |
| clientId | String yang menunjukkan ID klien tertentu | Tidak dapat diatur, ApsaraMQ for MQTT kirim ke ApsaraMQ for RocketMQ digunakan untuk melacak ID klien pengirim pesan. |