I am building a system that allows our customers to create subscriptions looking for specific events in our application which will result in a call to a webhook they specify. We will feed events from our application into this system and it will determine if any of the subscriptions match these events and will fire to the identified webhook(s).
I need "at least once" delivery guarantees and will need to support retry and dead letters for failed delivery attempts.
The Azure Event Grid (https://azure.microsoft.com/en-us/services/event-grid/) provides these capabilities out of the box. But I need a solution that is cloud agnostic. Valid solutions may be a third party service, an open source project, or a solution that gets me 90% of the way to my requirements.