关注点分离-如何将GET / PUT / PATCH / POST / DELETE / ETC分离到一个微服务中,以从外部获取其模型和DTO

问题描述 投票:0回答:1

假设您要在微服务架构环境中使用典型的C#.netcore webapi。它使用实体框架连接到SQL数据库,具有模型和DTO。

如果您要分离“宁静”,实际上是对数据模型(以及微服务)中的各个GET / PUT / PATCH / POST / DELETE / ETC方法进行响应的操作,您将采用哪种方法?

IE不必创建100个微服务,每个微服务都暴露API中相同的完全RESTful功能,但是每个都有自己的特定数据模型和DTO,id想创建1个API来暴露宁静的GET / PUT / PATCH / POST / DELETE / ETC,并将其与静态模型,dto和entitybuilder配置分开。因此,我将有100个微服务与将数据传递到1个REST微服务有关,以动态地完成我需要做的任何工作。

我对面向对象的编程方法没有超级的经验,我认为也许有可能让我的子微服务与之对话的CRUD微服务(通过API网关或我尚未解决的其他方法)通过将一组模型,DTO和实体框架,entitybuilder参数放入CRUD微服务Program.cs的Main方法?

我在正确的道路上吗?

预先感谢您提供任何建议或有用的示例!

c# rest .net-core microservices separation-of-concerns
1个回答
1
投票

你不知道。您所描述的仍然只有一个整体,并且将100个微服务作为基础。这与订购大比萨饼[[和一打小沙拉作为甜点]]一样有意义,因为您被告知吃一顿小沙拉可以帮助您减轻体重。那不是这样的。要么研究微服务以及通过使用该体系结构所获得的收益,要么使用可以完成所有任务的单一服务。两者可能都是有效的选择,只是不要假装您也在做另一个。

© www.soinside.com 2019 - 2024. All rights reserved.