Dapr: Add Event-Sourced Persistent Actors

Created on 24 Dec 2019  路  3Comments  路  Source: dapr/dapr

Support Event Sourcing and CQRS for persistent actors. The actor would maintain the current state in-memory and only store the events in an event store. The event stream could feed read-side state stores (CQRS) as well. This should also support event translation to a stream of domain events (different from the persistent entity events) over pub-sub which other services / actors could subscribe to.

An interesting option is to implement the spec from Cloudstate.io for ES/CQRS and CRDTs.

areruntimactor kinfeature triageunresolved

Most helpful comment

Support Event Sourcing and CQRS for persistent actors. The actor would maintain the current state in-memory and only store the events in an event store. The event stream could feed read-side state stores (CQRS) as well. This should also support event translation to a stream of domain events (different from the persistent entity events) over pub-sub which other services / actors could subscribe to.

An interesting option is to implement the spec from Cloudstate.io for ES/CQRS and CRDTs.

We're looking into Event Sourcing and CRDTs, also with CloudState.
Will post updates here and relevant questions.

All 3 comments

Support Event Sourcing and CQRS for persistent actors. The actor would maintain the current state in-memory and only store the events in an event store. The event stream could feed read-side state stores (CQRS) as well. This should also support event translation to a stream of domain events (different from the persistent entity events) over pub-sub which other services / actors could subscribe to.

An interesting option is to implement the spec from Cloudstate.io for ES/CQRS and CRDTs.

We're looking into Event Sourcing and CRDTs, also with CloudState.
Will post updates here and relevant questions.

Hi,

Interesting. I think that supporting storing events in streams through "State/StateClient" would be a great starting point to build on top of. And the input binding for possible subscription support.

I posted and issue on the topic of "event store" support #907 with "State" and CosmosDB as an example.

@perokvist Could you provide a more detailed proposal?

Was this page helpful?
0 / 5 - 0 ratings