uber / cadence

Cadence is a distributed, scalable, durable, and highly available orchestration engine to execute asynchronous long-running business logic in a scalable and resilient way.
https://cadenceworkflow.io
MIT License
8.01k stars 777 forks source link

Add CRDT data structures support #1384

Open mfateev opened 5 years ago

mfateev commented 5 years ago

There are multiple use cases when workflow instances have to share some information. Currently the only way is to store it in an external data store or in a separate workflows. Both solutions add considerable complexity.

The idea is to add first class support for shared CRDT structures to Cadence workflows.

mfateev commented 5 years ago

The first candidate is counter: https://arxiv.org/pdf/1307.3207v1.pdf

mfateev commented 5 years ago

References:

Implementations: