DACEO: Declarative Asynchronous Choreographies with General Data-Dependent Event-Ordering and Objects
摘要
We provide a formal modeling language, DACEO, for declarative asynchronous choreographies with general data-dependent message ordering and data objects. The language is equipped with execution semantics, and thereby, it can be used to specify the semantic and support monitoring of asynchronous distributed event-based systems in which a total ordering of message delivery cannot be assumed. DACEO models are graphs, which extends previous work on synchronous declarative choreographies based on Dynamic Condition Response Graphs and their operational semantics by adding asynchronous message channels with general data-dependent ordering constraints as well as general objects and data activities. The addition of objects builds on recent work on object-centric Dynamic Condition Response Graphs. We show that the DACEO Graphs can be encoded as the more basic Synchronous Object-centric Dynamic Condition Response Choreographies, preserving the semantics. We motivate DACEO by demonstrating its applicability in describing data-dependent ordering constraints between messages using a running example that shows how a system with causal consistency requirements can be specified. The marketplace is built on a benchmark for microservices that relies on asynchronous, event-based communication.