As of now the EMQ (Erlang MQTT Broker) does not seem to persist QoS 1/2 messages to disk: How does EMQ persist QoS 1/2 messages?
So in case of an unexpected server reboot, memory limits, or other event messages might be lost despite QoS 1/2 level messages must be delivered at least or exactly once.
Are there MQTT brokers that persist QoS 1/2 messages to disk thus ensuring delivery?