【发布时间】:2018-12-20 22:19:22
【问题描述】:
我对其他人如何处理 CQRS/事件溯源最终一致系统中的读取端数据库更新失败感兴趣。
我有这样一个系统,它可以将事件附加到我的事件存储中,然后由于某种原因无法更新相应的读取端 DB,从而导致不一致状态。
我已阅读 this post 和 this one,它们真正关注在事件存储事件之前管理约束的单例/全局聚合。
但是,当更新失败与约束无关时(例如临时硬件故障),您将如何处理?
另一个提到的解决方案是人工干预,但我想我想避免这种情况。高级别的我正在考虑做一些事情,比如触发某种工作来从事件存储中重建我的整个读取端数据库,同时暂时挂起和排队通常更新读取端的命令和事件处理程序。
还有其他人做类似的事情吗?有没有更好的办法?
谢谢!
【问题讨论】:
标签: architecture domain-driven-design cqrs event-sourcing eventual-consistency