Understanding event delivery failures By David Boyne

Understanding event delivery failures By David Boyne

Understanding event delivery failures

When building event-driven applications it’s good to understand what happens if your event fails to reach consumers, what your broker may do for you or what you need to manage yourself.

Dead-letter queue

  • Place where events can go when failed to be delivered to consumer
  • Events can fail to be delivered, do you want to store them? (before they are dropped)
  • Use queue to debug errors or replay events back into system
  • For more information you can read Dead letter channel enterprise integration pattern.

Redrive policies

Archive/Replay

  • Store events that were raised and replay them into broker.
  • Worth making sure consumers are idempotent as messages may be replayed more than once
  • Outbox pattern can be used to store events before sending them.

Dropping events

  • Some event brokers may just drop the event if it cannot process it
  • Many brokers will retry given conditions, but worth checking and handling failures

Extra Resources

Want to work together?

If you're interested in collaborating, I offer consulting, training, and workshops. I can support you throughout your event-driven architecture journey, from design to implementation. Feel free to reach out to discuss how we can work together, or explore my services on EventCatalog.

Download EDA Visuals

Join over 10,000 others learning EDA and download all the EDA visuals directly to your computer. This document updates everytime a new visual is added so make sure you come back to get the latest.

Download now →
Diagrams and thoughts by @boyney123 to help you learn.