It works by accepting PUT/POST/DELETE HTTP requests on behalf of the service. If the service is up, then it relays the event immediately; if the service is down it saves the message until the system can process it.
As we move towards an "always on" internet and its associated systems, we need more reliability from the systems being created. For one reason or another, the systems being created don't always have that reliability. What is really needed is a way of making an unreliable system reliable.
Miranda is a system that makes an unreliable system reliable in much the same way that TCP makes a reliable stream-oriented protocol from an unreliable datagram protocol.
Miranda records writes (HTTP POST, PUT and DELETE) to an underlying system. It does so in a distributed, fault-tolerant and secure manner. The underlying system appears have the reliability of Miranda itself.
It works by "sitting in front" of the underlying system and accepting writes (HTTP POST, PUT and DELETE) for the underlying system and recording them. If the underlying system is online, the writes are handed off immediately. If the underlying system is offline, then the writes are saved and played back in the order that Miranda received them to the underlying system when it is online.