Using Event Store as a Recurly Webhook End Point

Just curious if anyone has used ES as Webhook End Point for Recurly or any other 3rd party service host?

Cheers,

Jason Wyglendowski

Exposing the HTTP interface directly to the internet without some intermediate proxy would be a bad idea, so this is unlikely. However it would likely make a reasonable internal data store for such events.

Thanks James for the response I was thinking that might be the answer.

We should write up a doc or two about why this is the case and an
example deployment.

In case its not clear why you shouldn't be putting event store
directly on the internet and only behind a proxy I will take a moment
to explain. The first reason (and in my mind most important) is the
surface is quite a bit larger a small misconfiguration could allow
someone outside to take admin access of your node. Beyond that I would
have worries about things like vulnerabilities. Systems such as nginx
and varnish have vastly more testing (including penetration testing).
This especially true running in mono as I am not 100% confident in
their http implementation though we are moving away from this and the
recommendation would still remain with say libev based stuff

The other benefits are largely in the area of performance. If you look
most uris in event store are cacheable.

Cheers,

Greg

Thanks Greg for the response. I was just looking for a simple solution to take in the events from a webhook, persist them, then process them asynchronously using another process.

So I was thinking of the EventStore as a document store/message queue. I was hoping to restrict things by ip range and use SSL. To your point that could be done just with something like varnish except that I can not request json and I would have to translate the XML to json through another endpoint prior to arriving at the ES. The other benefit I saw was creating reconciliation projections to compare things like total amount collected versus what our payment gateway is saying or check how many conversions we had for a given month.

Cheers,

Jason Wyglendowski