If you read Hackaday, it is a good bet you’ve heard of MQTT — Message Queueing Telemetry Transport. If you’ve not used MQTT before, you should check out Ably’s [Kayla Matthews’] post entitled MQTT: A Conceptual Deep Dive paper. She does mention their MQTT protocol connector at the end, and has a few notes about Ably’s products, but most of the post is a normal white paper and has a lot of good info.
MQTT’s claim to fame, of course, is that it is very tiny and is made to minimize power consumption compared to heavier-weight protocols. When you are trying to provide or consume data from a device that has to last a year on a coin cell, MQTT is your friend.
What we liked about the white paper is that it covered the kind of architectural decisions you have to make when designing a system. There’s a section titled “When might you use MQTT?” and another titled “When shouldn’t you use MQTT?” Towards the end, the post even covers using Mosquitto, MQTT.js, and MQTTnet.