【发布时间】:2021-07-07 23:19:07
【问题描述】:
我只是想大致了解如何为以下用例设计/编写微服务:
客户端微服务 MediaStore(我们称之为 A)与另外两个不同的微服务通信
- 微服务电影(B)
- 微服务手册(C)
用户可能想要从 MediaStore 查看/订购电影或书籍。 我知道 Movie 微服务将拥有其 Movie 实体和 MovieDB,同样,Book 微服务将拥有其 Book 实体和 BookDB。由于用户可以订购,因此在 MediaStore 微服务端有一个“订购”实体。
但是如何在客户端 MediaStore 微服务上设计/编写/使用它们呢?
a) 我是否应该使用另一个通用实体(比如说 Item)作为电影和书籍的父接口,以便我可以与通用实体(Item)进行交互? 原因是,我想在 MediaStore 微服务中创建一个实体“订单”。订单可以是电影或书籍。
b) 或者我应该仅将它们分别用作电影和书籍实体吗?从而在 MediaStore 微服务中创建 MovieOrder 和 BookOrder 作为订单。
c) 如果我能从 StackOverflow 社区获得有关此用例的任何其他建议/知识/提示,那将非常有帮助。 :)
【问题讨论】:
标签: java design-patterns architecture microservices domain-driven-design