Topik ini menjelaskan fitur kedaluwarsa sesi dari MQTT 5.0.
Informasi latar belakang
Sesi menentukan informasi tentang koneksi yang dibuat antara perangkat dan IoT Platform, serta disimpan di IoT Platform. Informasi tersebut mencakup hubungan langganan, status perangkat, dan pesan yang di-cache.
Pada MQTT 3.1.1, parameter
cleanSessionmenentukan pengaturan sesi.cleanSession = true: Sebuah sesi dihapus ketika koneksi dibuat. Perangkat harus berlangganan ulang ke topik dan tidak menerima pesan QoS 1 yang disimpan di IoT Platform secara hibrid.cleanSession = false: Sebuah sesi dipertahankan ketika koneksi dibuat. Perangkat tidak perlu berlangganan ulang ke topik dan menerima pesan QoS 1 yang disimpan di IoT Platform secara hibrid.
Pada MQTT 5.0, parameter
cleanSessiondiganti namanya menjadicleanStart, dan propertiSession Expiry Intervalditambahkan. Sebuah sesi dapat dihapus, dipertahankan, atau kadaluwarsa. Anda dapat mengonfigurasi properti Session Expiry Interval untuk mengelola sesi secara fleksibel. Jika Anda tidak lagi menggunakan sesi, Anda dapat menghapusnya untuk mengurangi konsumsi sumber daya IoT Platform. Ini juga membantu memenuhi persyaratan perangkat, seperti mencegah penerimaan pesan yang tidak terduga. Salah satu kasus berikut dapat terjadi berdasarkan kombinasi nilai propertiSession Expiry Intervaldan parametercleanStart:
Jika Anda tidak mengonfigurasi properti Session Expiry Interval, nilai default 0 digunakan.
Jika Anda mengatur properti Session Expiry Interval ke 0xFFFFFFFF, sesi tidak akan kadaluwarsa.
Skenario
Perangkat yang sering terputus
Jika Anda sering menghapus sesi untuk perangkat yang terus bergerak, seperti kendaraan, perangkat tersebut harus sering berlangganan ke topik. Kasus 3 pada gambar sebelumnya cocok untuk skenario ini. Jika perangkat tersambung kembali dalam periode waktu tertentu, gunakan kembali sesinya. Jika perangkat tidak dapat tersambung untuk jangka waktu panjang, hapus sesinya. Dengan cara ini, perangkat tidak menerima pesan yang sudah kedaluwarsa.
Perangkat yang tidak boleh kehilangan pesan
Jika Anda menggunakan perangkat finansial, seperti mesin POS dan speaker siaran, perangkat tersebut memiliki persyaratan tinggi untuk laju pengiriman pesan. Kasus 4 pada gambar sebelumnya cocok untuk skenario ini.
Sebuah sesi tetap aktif mulai dari waktu sesi dimulai hingga waktu sesi berakhir. Perangkat yang sesuai mempertahankan hubungan langganan dan pesan.
Perangkat yang tidak bergantung pada status
Jika Anda menggunakan perangkat seperti layar iklan, perangkat tersebut terus memutar konten iklan baru dan tidak perlu menerima pesan yang sudah kedaluwarsa. Kasus 1 pada gambar sebelumnya cocok untuk skenario ini.
Jika Anda menghapus sesi, perangkat tidak lagi menerima konten yang sudah kedaluwarsa. Ini membantu mengurangi konsumsi sumber daya IoT Platform.