上下文:
我正在使用的系统有一个模块。该模块具有用于其聚合状态的持久性存储。
我想实施一项策略,将所有聚合状态从零恢复。
事件存储是使用关系数据库的自制实现。 它将所有事件从系统历史的开始就保留下来。 目前,我没有快照。目前该系统还很小。但是,我想在问题中考虑快照的存在。
因此,我正在寻找一种策略来在系统崩溃后恢复聚合,这是在最坏的情况下(模块数据库丢失(无法恢复))。
问题:
该模块应该从事件存储中请求什么步骤以及哪些信息才能恢复其状态?
我有一个解决方案,我想知道我是否走对了路。请检查下面写的解决方案。
到目前为止我提出的解决方案:
步骤:
如果您有其他建议的解决方案,我将很高兴学习。