我是一名.net开发人员,试图学习使用.NET框架>4.0实现微服务。
在我从互联网搜索中提到的所有文章中,都提到了如何使用.NET核心来实现微服务。但是我想知道,我找不到任何一篇文章提到如何使用.NET框架>4.0开发微服务。
我知道.net核心拥有微服务的所有特性和运行时,但我的问题如下- 1.难道根本不可能使用.NET框架开发微服务吗?如果没有,那么所有的约束和限制是什么? 2.如果我们选择.NET框架仅用于开发面向微服务的体系结构3。任何示例/示例代码都会有帮助。
谢谢
发布于 2019-11-15 08:45:27
正如注释中提到的,microservices (MS)不受任何语言的约束,它是一个体系结构原则。
微服务是面向服务体系结构(-a)结构风格的一种软件开发技术,它将应用程序安排为松散耦合的服务的集合。在微服务体系结构中,服务是细粒度的,协议是轻量级的。
https://en.wikipedia.org/wiki/Microservices
您可以使用任何语言和各种平台解决方案来构建MS/SOA,但是某些实现当然也有缺点。
您所做的就是定义一个小型服务A和另一个小型服务B作为您的系统,通过轻量级REST (甚至可能是gRPC)公开数据,让它们彼此交谈--瞧!你有你的MS系统。
但是,为什么微软要推动在MS系统中使用.NET核心呢?我最好的猜测是,由于 docker (和其他容器解决方案),要将每个.NET封装起来,.NET Core和.NET框架在这种情况下的区别是容器化,.NET Core可以在所有平台上运行,比如linux和docker支持linux容器。
在计算中,自包含系统(
)是一种软件体系结构方法,其重点是将功能分离为多个独立的系统(),从而使整个逻辑系统成为许多较小的软件系统的协作。
https://en.wikipedia.org/wiki/Self-contained_system_(software)
为什么linux容器很重要?好吧,我会因为Kubernetes (或其他容器编排工具)而争论。
Kubernetes (通常称为k8s)是一个开放源代码的容器编排系统,用于自动化应用程序的部署、缩放和管理。它最初由Google设计,现在由云计算基金会维护。它的目标是提供一个“跨主机集群的应用程序容器自动部署、缩放和操作的平台”。它适用于一系列容器工具,包括Docker。许多云服务提供基于Kubernetes的平台或基础设施作为服务(PaaS或IaaS),可以将Kubernetes部署为提供平台的服务。许多供应商还提供自己品牌的Kubernetes发行版。
https://en.wikipedia.org/wiki/Kubernetes
Kubernetes是一个非常强大的集装箱编配系统。我不能随意扩展您松散耦合的MS容器--还有更多。
现在,我建议你继续读下去,一个很好的开端是:
朗读
源代码
视频
https://stackoverflow.com/questions/58862682
复制相似问题