基于CRUD的应用程序部分需要:
事件采购(或“命令模式”)是我正在寻找的用于完成这些项目的内容。我觉得用这个解决2& 3感觉很舒服,但对于第一项同步,同步并不清楚。
如果时间戳用于每个命令(如果需要),那么离线命令是否需要应用于主系统,因为它们实时(合并),或者我可以将它们视为应用于任何命令的结尾(具有更新的时间戳)?
基于命令的同步的任何基本算法描述都会有所帮助。
答案 0 :(得分:13)
您需要查看Greg Young对CQRS and Occasionally Connected Systems
的评论命令需要在收到记录系统时运行。因此,您的脱机客户端可以使用其本地缓存的陈旧,记录副本和队列命令。再次连接时,客户端更新它的记录系统副本,将其排队的命令与世界的新状态进行协调,然后将新命令发送到记录系统。
格雷格的谈话概述了命令协调的工作原理(基本上,通过查看临时命令生成的事件,并查找与记录系统记录的事件的冲突)。该演讲强烈暗示领域专家希望以特定方式解决事件冲突。