我正在讨论分布式域驱动设计背后的一些概念,并且正在构建概念验证。我有三个 C# 解决方案,它们在整个系统中具有特定的职责。
我的解决方案是:
- 写入模型(从客户端接收命令并创建和发送事件)
- 读取模型(从写入模型接收事件,创建数据库并向客户端公开 DTO 服务,可能是 2 个单独的解决方案)
- 客户端(调用服务以获取所需数据并向写入模型发送命令)
所有三种解决方案都通过服务总线使用消息传递(命令、事件)。(在我的情况下是大众运输)。
我的主要问题是:创建带有消息的程序集并让每个解决方案都引用该程序集是常见的做法吗?
额外的功劳:在这个 POC 中,我正在做的事情有什么奇怪或有问题的吗?在创建此类系统时我应该注意的任何其他信息?