Overview of kelindar/event
masterThe kelindar/event package is a high-performance, in-process event dispatcher for Go. It is designed for decoupling modules within a single process using a generic pub/sub pattern.
Key Characteristics:
- High Throughput: Capable of processing millions of events per second (often 4x to 10x faster than standard Go channels).
- Asynchronous: Each subscriber is executed in its own goroutine.
- Generic: Works with any type implementing the
Eventinterface.
When to use:
- Decoupling internal modules in a single Go process.
- Lightweight, high-throughput, low-latency event-driven patterns.
When NOT to use:
- For inter-process or service-to-service communication (use NATS, Kafka, etc.).
- When you need event persistence, durability, or replay capabilities.
- For scenarios involving heavy subscribe/unsubscribe churn.