在{aa49aa}中,我们介绍了领域模型、事务、查询与功能分解之间的相互抵触是我们使用微服务架构的最主要障碍。前文所给出解决方法是将每个服务的业务逻辑实现为一系列DDD聚合,每个事务更新或创建一个独立的聚合,使用事件维护聚合(还有服务)间的数据一致性。
在第二部分中,我们将介绍聚合的自动更新和事件发布,这是使用事件的主要挑战所在。我们将给出通过事件溯源解决这类问题的方法。事件聚合用于业务逻辑的设计和持久化,是一种以事件为中心的方法。然后我们会介绍微服务是如何让查询变得难以实现的,并给出一种称为命令查询职责分离(CQRS,Command Query Responsibility Segregation)的方法。CQRS可以实现可扩展且高效的查询。
来源: