Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Handle more advanced failure scenarios #45

Open
hjr3 opened this issue Sep 15, 2023 · 0 comments
Open

Handle more advanced failure scenarios #45

hjr3 opened this issue Sep 15, 2023 · 0 comments

Comments

@hjr3
Copy link
Owner

hjr3 commented Sep 15, 2023

Webhooks are fun to think about. A couple more issues off the top of my head:

  • Ordering. Since network requests can take variable amounts of time, how do you ensure those two "foo.updated" events are processed in order, or that the receiver can tell their order? Especially something to consider if the webhooks will retry a few times on intermittent failures.
  • Consistency. Always a concern in distributed microservice land, but maybe more acute when generating webhooks right as things are updated: if the receiver uses the webhook to make an API request right back into the system, will the API have the same view of the data?
  • DDoS. How do you make sure the webhook destination URL is owned by the subscriber? If your system can generate high volumes of webhook traffic, that could be a problem.
  • Infinite loops. A silly one, but the user could conceivably point the webhook at a URL of the system that sends the webhook, in such a way that it will cause a new webhookable event to be generated.

source

@hjr3 hjr3 changed the title Handle more advanced scenarios Handle more advanced failure scenarios Sep 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant