【问题标题】:How many controllers should a MS Web API microservice have? [closed]MS Web API 微服务应该有多少个控制器? [关闭]
【发布时间】:2020-12-05 05:56:04
【问题描述】:

我正在尝试建立一个具有微服务架构的小型学习项目。我只是想知道:一个微服务应该有多少个控制器?

目前我有两个表:书籍(标题、语言、类别等)和作者(名字、姓氏、出生日期等)。它们每个都有一个实体、一个 DTO、一个存储库和一个控制器。

  • /api/books/
  • /api/authors/

对我来说,拥有两个控制器是完全有意义的:BooksControllers 和 AuthorsControllers。两者都在第一个微服务中(在这种情况下也是 WebApi 项目)

稍后我将添加第二个微服务“销售数据”。它将包含书籍的销售数据(可能稍后会包含其他东西的销售数据)。

这是一个好方法吗?

【问题讨论】:

  • 每个微服务都应该处理属于同一限界上下文的对象。只要它们满足相同的有界上下文,您就可以拥有任意数量的控制器。在您的示例中,书籍和作者都对相同的有界上下文做出了贡献,并且看起来是合法的。

标签: .net asp.net-web-api .net-core


【解决方案1】:

微服务需要

  • 可独立部署
  • 松散耦合
  • 高度可维护和可测试

所以这与控制器数量无关。这是关于它们的独立性和松散耦合程度。例如,如果“销售数据”服务出现故障,它不应该影响“书籍和作者”,反之亦然。

在我看来,我认为你的方法很好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-05
    • 1970-01-01
    • 2019-10-23
    • 1970-01-01
    • 2020-06-15
    • 2018-10-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多