Glossary · System coordination, integration and orchestration
Service choreography
Also known as: Choreography
German: Dienstchoreografie
In service-oriented and event-driven architecture, service choreography is a form of coordination in which services interact by reacting to each other's messages or events according to agreed rules, without a central controller directing the overall process.
- System integration
In one sentence
Service choreography coordinates services that react to each other's events according to agreed rules, without a central controller.
Example
When the machine publishes "batch completed", the quality service starts its checks and the logistics service schedules pickup; neither is called by a central orchestrator.
How it applies
- Engineering: Choreography reduces central dependencies and lets services evolve independently. It requires well-defined events, schemas and a reliable Message broker.
- Operation: Because no single component knows the whole process, monitoring needs end-to-end tracing (correlation IDs) to see where a process stopped.
- Change: Adding a new reaction is easy; changing the overall process is hard, because the logic is spread across services.
- Documentation: Document the choreography as a whole, with event catalogs and sequence diagrams showing which service reacts to which event. Without this, nobody can explain the process.
Service choreography vs. service orchestration
In Service orchestration, one orchestrator calls each service and owns the process logic. In choreography, the process emerges from the services' reactions to events. Many systems combine both: orchestration inside a domain, choreography between domains.