假设您有一个微服务架构,其中多个服务生成并消耗单元状态。
有多种方法可以设计这个,你会推荐哪一种?
这些是我想到的一些选项:
unit-status
,并使服务使用并生成有关此主题的消息。这导致您使用自己的消息并且必须过滤它们。我认为这是一个肮脏的解决方案,但新的消费者很容易获得所有单位状态事件。unit-status-created
,unit-status-packaged
,unit-status-loaded
,unit-status-deleted
等。每项服务仅在其上生成主题,但可以从主题列表中消费,排除它自己的主题。例如,加载服务将从列表中消耗(unit-status-created
,unit-status-deleted
,unit-status-packaged
)。这允许服务仅显示对特定事件的兴趣,但是当添加新状态主题时,它需要在可能的所有服务中进行代码或配置更改。 答案 0 :(得分:0)
根据我的理解,我会建议第1点
添加新的微服务将更容易添加新的微服务,并且仍然可以在没有太多变化的情况下工作。
业务逻辑应该是微服务的一部分,而不是消息队列