Breeze Occasion Bus + Workflow: orchestration with out the boilerplate
One factor I saved seeing in backend tasks:
You begin with a easy occasion bus.
Then come retries.
Timeouts.
Cancellation.
Dependencies between occasions.
Compensation.
Idempotency.
Observability.
And all of the sudden, your “easy” event-driven system wants quite a lot of glue code.
That’s why I constructed Occasion Bus + Workflow into Breeze.
The Occasion Bus handles decoupled communication.
The Workflow engine builds on prime of it to deal with actual orchestration:
→ DAG-based workflows
→ Deterministic topological execution
→ Retries with exponential backoff + jitter
→ Timeouts & cancellation
→ Panic restoration
→ Conditional steps
→ Typed payloads
→ Shared metadata
→ Idempotency keys
→ Saga-style compensation
→ Observability
The aim isn’t to exchange Kafka, NATS, RabbitMQ, or different messaging infrastructure.
It’s to make the applying code round them dramatically less complicated.
It is best to have the ability to describe what your workflow does, as a substitute of spending your time wiring each edge case round it.
Breeze is shifting towards turning into greater than an HTTP framework.
It’s turning into a sensible basis for constructing distributed Go functions.
GitHub: GitHub – nelthaarion/breeze: Breeze — Excessive-Efficiency Golang Internet Framework · GitHub
Would you construct workflows this manner in Go?

