At the moment we use the Event Subscription API which requires that Consular runs an HTTP server to listen for requests from Marathon. Since Marathon 0.9.0, the Event Stream API has provided a way to receive events using Server Sent Events which does not require an HTTP server.
There is nothing technically wrong with the way we are doing things now, it's just that using the event stream has some advantages:
- Don't need to run a server on a certain interface/port
- Fewer config parameters necessary
- Simplifies things if we ever run Consular in a Marathon-deployed container as we don't need to worry about dynamic ports/addresses
At the moment we use the Event Subscription API which requires that Consular runs an HTTP server to listen for requests from Marathon. Since Marathon 0.9.0, the Event Stream API has provided a way to receive events using Server Sent Events which does not require an HTTP server.
There is nothing technically wrong with the way we are doing things now, it's just that using the event stream has some advantages: