事件溯源提供了一种灵活的方法来管理和保留粒度状态。 事件溯源的粒度具有许多优于标准粒度的潜在优势。 例如,可以将它与许多不同的存储提供程序配置一起使用,并支持跨多个群集进行异地复制。 此外,它将粒度类与粒度状态的定义(由粒度状态对象表示)和粒度更新(由事件对象表示)分离。
文档的结构如下:
JournaledGrain 基础知识 介绍了如何通过派生自 JournaledGrain<TGrainState,TEventBase>、如何访问当前状态以及如何引发更新状态的事件来定义事件源粒度。
复制的实例 说明了事件溯源机制如何处理复制的粒度实例并确保一致性。 它讨论了赛车事件和冲突的可能性,以及如何解决这些问题。
即时/延迟确认 说明延迟确认事件和重新进入如何提高可用性和吞吐量。
通知 说明了如何订阅通知,从而允许粒度对新事件做出反应。
事件溯源配置 说明如何配置项目、群集和日志一致性提供程序。
内置日志一致性提供程序 说明了当前包含的三个日志一致性提供程序的工作原理。
JournaledGrain 诊断 说明如何监视连接错误并获取简单的统计信息。
上述行为在 API 方面 JournaledGrain
相当稳定。 但是,我们希望很快扩展或更改日志一致性提供程序列表,以便更轻松地插入标准事件存储系统。