还是蛮年轻的ES和CQRS,据我所知,他们密切相关的数据的最终一致性。事件采购和验证上写
当我们在写入商店之前应该进行验证,比如检查电子邮件地址是否已经被现有用户使用,最终一致性可能会有问题。以一致的方式做到这一点的唯一方法是停止接受新事件,根据我们的观点完成剩余事件的处理,然后查询视图。我们显然不想走得那么远,Greg Young实际上是recommends,以接受最终的一致性并处理(罕见的)我们违反约束的情况。
推动这种方法达到极限,我的理解是,这意味着,例如,在开发Web API时,对每个请求做出“OK”响应,因为在请求时不可能验证它...我在正确的轨道上,还是在这里错过了什么?
RESTful API可以返回'202 Accepted',而不是:http://stackoverflow.com/a/30078502/126014 –
感谢您的指针。尽管“状态监控”需要维护命令的历史记录,但我喜欢这种方式如何使系统从客户的角度来看更“黑烟”。 – ThomasWeiss