Perangkat Skenario
IoT (saat ini perangkat IPv4) yang mengirimkan melalui TCP socket sebuah payload ke server sekali per hari. Server memiliki alamat IP publik, perangkat berada di belakang router / NAT. Saya akan menggunakan modul berdasarkan ESP8266 (yaitu Olimex satu)
Tujuannya
The Server harus dapat mengirim data ke klien setiap kali perlu. Saya tidak tertarik pada komunikasi langsung klien-ke-klien (yaitu menyambung ke perangkat dari ponsel cerdas saya) seperti yang seharusnya dilakukan dengan meninju lubang.
Persyaratan lain
Perangkat IoT mungkin tumbuh hingga beberapa ribu. Koneksi internet mereka disediakan oleh banyak router / modem yang mendukung 4G. Masing-masing akan menangani 10-20 klien.
Usulan solusi
Sejauh yang saya mengerti solusi umum adalah MQTT. Klien secara berkala mengirim data ke broker (yaitu Mosquitto yang berjalan di server hosting), yang pada gilirannya memperbarui aplikasi web utama yang berjalan di server yang sama.
Pertanyaan
Apakah pendekatan MQTT cocok untuk sejumlah besar perangkat (1000+) kebanyakan di belakang router 4G?