All terms

Glossary

Event-driven architecture

Services exchange events instead of calling each other directly. The sender does not know who is listening.

The gain is decoupling: a new consumer appears without changing the sender. The price is that the flow no longer lives in one place in the code, it emerges from the interplay.

That shifts the questions: ordering, duplicate delivery, events nobody consumes, and how to follow a single operation across several services.

How you notice it

  • Several systems must react to the same transaction.
  • New consumers should be added without touching the producer.
  • Processing may happen with a delay.

Frequently asked

How do I keep track of a single transaction?

With a correlation identifier carried by every event. Without one a distributed flow cannot be followed, and every investigation becomes puzzle work across several log streams.

Read moreAttribution service in Go