事件溯源(Event Sourcing)
事件溯源提供了一种灵活方式,来管理和保持grain状态。与标准的grain相比,被事件溯源的grain具有许多潜在优势。首先,它可以与许多不同的存储提供程序配置一起使用,并支持跨多个集群的地理复制。此外,它可以清晰地将grain类与grain状态(由grain状态对象表示)和grain更新(由事件对象表示)的定义分开。
此部分的文档结构如下:
-
JournaledGrain Basics 解释了如何通过继承
JournaledGrain
来定义一个事件溯源的grain,如何访问当前状态,以及如何激发更新状态的事件。 -
复制实例 解释了事件溯源的机制,是如何处理复制的grain实例并确保其一致性的。它讨论了竞争事件和冲突的可能性,以及如何解决它们。
-
立即/延迟确认 解释了如何进行事件的延迟确认,以及重入性可以提高可用性和吞吐量。
-
通知 解释了如何订阅通知,允许grain对新事件做出反应。
-
事件源配置 解释了如何配置项目、集群和日志一致性的提供程序。
-
内置的日志一致性的提供程序 解释了当前包含的三个日志一致性的提供程序的工作原理。
-
JournaledGrain Diagnostics 解释了如何监控连接错误,并获得简单的统计信息。
就JournaledGrain API而言,上面所列出的行为相当稳定。但是,我们希望尽快扩展或更改日志一致性的提供程序列表,以便允许开发人员更轻松地插入标准的事件存储系统。