asp.net - 拥有单个 API 项目而不是多个 API 项目
问题描述
在应用程序中,我正致力于在一个 Visual Studio 解决方案中以及在每个 API 项目中拥有几个 Api 控制器的 ASP.Net 核心 api 项目。让我们假设像 Order.Api、Customer.Api 和 Product.Api 这样的。考虑保留一个 API 项目而不是几个单独的项目,我们将其称为 Backend.Api 并将所有控制器移动到这个单个项目中。它的缺点也是它的优点是什么?
解决方案
最好了解您有多个 api 项目开始回答问题的原因。您可以阅读有关微服务与单体设计之间权衡的更多见解。这是来自 Martin Fowlers 博客https://martinfowler.com/articles/microservice-trade-offs.html的文章
这就是说以下可能会给你一个高层次的答案。
缺点
合并 api 将带走功能的独立可测试性、可部署性和可扩展性的能力。
合并 api 可能会导致源代码组织的可读性降低。
降低故障隔离级别。
优点
- 应用程序的部署和监控将变得更加简单。
- 易于调试
- 客户、订单、产品业务能力之间的沟通会更容易。
推荐阅读
- java - 如何通过 solrTemplate 获得建议
- azure - Azure AD SAML 实体 ID 允许的字符
- sharepoint-online - SharePoint 2019 连接列表
- excel - 获取单元格格式
- php - MYSQL INNER JOIN 得到 3 种类型的结果
- css - 在 `Primefaces:dashboard` 组件上添加标签和自定义 CSS
- javascript - 如何通过存储在 Firebase 主机上的 FTP 访问 HTML 文件
- node.js - 使用 SSL 运行的 NodeJS,Apache2 代理不起作用
- sql - 定期将具有 NTEXT 列的数据导出到 Excel(作为作业)
- android - 为什么使用 putAll 会发生 ConcurrentModificationException?