【发布时间】:2020-12-05 05:56:04
【问题描述】:
我正在尝试建立一个具有微服务架构的小型学习项目。我只是想知道:一个微服务应该有多少个控制器?
目前我有两个表:书籍(标题、语言、类别等)和作者(名字、姓氏、出生日期等)。它们每个都有一个实体、一个 DTO、一个存储库和一个控制器。
- /api/books/
- /api/authors/
对我来说,拥有两个控制器是完全有意义的:BooksControllers 和 AuthorsControllers。两者都在第一个微服务中(在这种情况下也是 WebApi 项目)
稍后我将添加第二个微服务“销售数据”。它将包含书籍的销售数据(可能稍后会包含其他东西的销售数据)。
这是一个好方法吗?
【问题讨论】:
-
每个微服务都应该处理属于同一限界上下文的对象。只要它们满足相同的有界上下文,您就可以拥有任意数量的控制器。在您的示例中,书籍和作者都对相同的有界上下文做出了贡献,并且看起来是合法的。
标签: .net asp.net-web-api .net-core