How producers are implemented
Producers, along with Subscriptions, are the foundation of the Eventuous' messaging system.
Although an event store produces events too, it is normally used via the Aggregate store. Sometimes, you just need to produce arbitrary messages, which aren’t necessarily events. For example, you can also produce commands. Still, the main purpose of a producer is to put events to an event database or a broker, so they can be consumed by a subscription.