作者回复: 在没有用DDD之前,我们也是这么干的^_^。
作者回复: 感觉你这种方案也没法解决数据一致性的问题。一般来说产生数据一致性的主要原因在数据库,也就是说一个写成功,另一个写失败。虽然JAR包和业务执行逻辑在一起了,但是由于数据库是分开的,在数据库层面还是无法保证数据的一致性的,所以虽然它们在一个jar包中,应该还是需要采用分布式事务的。
我们没有遇到过你说的场景,但是这个场景应该在电商里面是非常常见的,比如查询商品数量,商品售出后,更新商品库存数据。
作者回复: 如果还是原来的架构模式,不做解耦的话,应该还是小单体模式。我也是找了好久才找到了DDD这个方法,不知道还有没有其它更好的方法。
作者回复: 应用层与领域层之间是DO。
微服务之间用DTO比较合适。
作者回复: 应用层也可以拆的。但是应用层的服务如果跨聚合组合,先需要解耦,从微服务内调用改成跨微服务调用。然后将聚合封装出来的应用服务拆分。
作者回复: 消息总线比较常见,这个专栏里就不讲了。