If you are considering I0T, then you need to learn about MQTT.
MQ Telemetry Transport Protocol (MQTT) is a lightweight publish/subscribe messaging protocol that offers a number of advantages over HTTP. It is binary and has a much smaller payload, which reduces power usage and transmit times with devices.
I thought about writing an article about this, but to be honest, HiveMQ has a great write up here that I recommend checking out.
Mosquito is an open source MQTT broker. I also recommend this if you want to run your own server. I have this running on a Raspberry Pi to support one of my projects.
I plan on publishing more posts on this topic. Please, join my mailing list, so I can notify you when new posts are available.