asp.net-web-api – 微服务与多层架构
我的项目有一个后端服务(Web API)和一个前端SPA应用程序.后端服务具有位于不同.net程序集中的表示,应用程序服务,域和基础结构层.域层具有业务域对象,基础架构 – 与外部数据和其他东西的通信,应用程序服务 – 表示层使用的服务集,表示 – Web API控制器.我认为这是非常常见的分层架构.
我们的新架构师宣布,我们将移动后端到微服务架构,制动我们的层并将域,应用服务和基础架构层划分为少数服务,并将表示层转换为后端以用于前端层(如here所述).在功能方面,我们将有移动应用程序. Sql Server数据库将暂时保留原样. 我没有微服务架构的经验,所以我的问题是: 解决方法
微服务和分层架构有点不同.微服务架构,它是关于如何构建应用程序,它具有哪些组件(服务)以及这些服务如何相互通信,如何开发,部署等等.
多层架构是关于逻辑将应用程序划分为多个层,其中每个层都有自己的逻辑功能(表示,域等).通常,多层体系结构与单片体系结构和服务设计有关. 根据您的描述,您不会分解您的层,您的架构师希望将逻辑分成不同的服务.这两种架构风格可以一起使用.例如,您可以拥有3项服务,每项服务都可以拥有演示,域和服务层.如果您在一个服务中的当前层足够重,那么将它们分开是有意义的,这使得开发和测试更容易.前端风格的后端也有其优点,特别是如果你想添加一个移动应用程序. 对这个
不,它们都被使用,但是使用微服务作为规则层应该比单片应用薄得多.
我建议你看看comparison between microservice and monolithic architecture款和post款.要分或不做,你应该考虑项目的规模和复杂程度,团队的规模.划分必须为整个应用程序带来好处,使开发更容易.单片应用程序有其自身的好处,并且在项目的某个大小上,它可以是一个很好的决定.当然,这是一个噩梦,使用巨大的单片应用程序以及一百个非常小的(纳米)服务. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- ASP.NET Web API:OAuth服务提供商
- 如何清除Asp.Net按钮上所有文本框的值单击
- asp.net-core – 实体框架核心以编程方式应用迁移
- ASP.net图表控件:隐藏除数据点之外的所有行(轴等)
- asp.net-mvc – Olark免费替代品
- asp.net-mvc-2 – asp.net-mvc2 – 不使用Model的强类型助手
- asp.net-mvc – ASP.NET MVC 4,迁移 – 如何在生产服务器上
- asp.net – 使用SelectedValue对RadioButtonList进行数据绑
- asp.net-mvc-3 – 带有重音IE8的ASP MVC3 FileResult – 被
- asp.net – 使用CRC的较短GUID
- asp-classic – 如何在经典的asp web应用程序中生
- asp.net-web-api – 当我使用IFormFile时缺少一个
- asp.net – 我很难很好地定位这个按钮
- asp.net-mvc – MVC模型状态
- asp.net-mvc-3 – ASP.NET MVC3 WebGrid – 自定
- ASP.Net OData在LB中通过SSL终止失败
- asp.net-mvc-3 – asp.net mvc 3 razor从IEnumer
- asp.net – 通过使用Javascript将邮政编码传递到
- asp.net – 如何监视SQL Server中的活动连接池?
- asp.net – 在asp:GridView中插入隐藏列但仍然可