.NET微服务

本文探讨了微服务架构在云原生系统中的应用,强调了其灵活性、独立部署和扩展性优势,介绍了.NET Microservices的设计实践和开发工具选择。通过对比单体应用,展示了微服务如何提升敏捷性和降低风险。
摘要由CSDN通过智能技术生成

前文传送门:

Microservices

微服务是一种构建现代应用程序的流行的体系结构,云原生系统拥抱微服务。

微服务是由一组(使用共享结构交互的、独立的小块服务)搭建的分布式集,具有以下特征:

  • 在大型的领域上下文中,每个微服务实现特定的业务功能

  • 每个微服务都自主开发的,且可以独立部署

  • 每个微服务都独立封装了自己的数据存储技术(SQL,NoSQL)和编程平台。

  • 每一个微服务都运行在独立进程,并使用标准的通信协议(例如HTTP/HTTPS、WebSocket或AMQP)与其他进程进行通信。

  • 它们一起组成一个应用程序

下图对比单体与微服务应用:

注意,单体应用由分层架构组成,在单个进程中执行,通常使用关系型数据库。
但是,微服务方法依据功能划分为(逻辑+数据)的独立服务,每个微服务都托管自己的数据存储。

微服务依然遵守"十二要素应用"中的One Codebase, One Application”原则。

每个微服务存储在独立代码仓库,通过版本管理进行跟踪,可以部署到多个环境。

Why microservices?

微服务提供了敏捷能力

上一段落,我们已经对比了单体和微服务,我们看到了一些明显的好处:

  • 每个微服务都有自治的生命周期,可以独立演进、多频次部署。
    你不必等待发布窗口即可部署新功能或更新,你可以只更新复杂应用的一小部分区域,减少破坏整个系统的风险。

  • 每个微服务都可以独立扩展。
    不需要以应用整体为单位进行扩展,而仅扩展那些需要更多处理能力或网络带宽的微服务,这种细粒度的伸缩方法提供更好的控制力和成本优势。

学习微服务的最佳指南是《.NET Microservices: Architecture for Containerized .NET Applications》,这本书深入探讨了微服务设计和架构,它是微服务实践https://github.com/dotnet-architecture/eShopOnContainers的阅读搭档。

Developing microservices

可以使用任何现代开发平台来创建微服务。

微软.NET平台是一个绝佳的选择,免费、开源,内置许多功能以简化微服务开发。.NET是跨平台的,可以在Windows、macOS和大多数Linux上构建和运行应用程序。

.NET的性能很高,在TechEmpower组织的性能基准测试中,.NET相当优秀。

.NET由Microsoft和.NET社区在GitHub上维护。

Ref

  • https://docs.microsoft.com/en-us/dotnet/architecture/cloud-native/definition

  • ????后台回复 cloud-native,获取微软出品《Architecting Cloud Native .NET Apps》PDF

  • ????后台回复 microservices,获取微软出品《.NET Microservices: Architecture for Containerized .NET Applications》PDF

更多干货及最佳实践分享
关注并星标我们~。。~

.NET 微服务框架是一种用于开发微服务应用程序的框架。微服务是一种软件架构风格,通过将应用程序拆分为一组小型、独立的服务来帮助开发人员构建可扩展、可维护和可部署的应用程序。 .NET 微服务框架提供了一系列的功能和工具,方便开发人员快速构建微服务应用程序。其中包括以下几个方面: 1. 服务发现和注册:框架提供了服务发现和注册功能,使得各个微服务能够自动注册并发现其他服务,方便进行通信和交互。 2. 负载均衡:框架支持负载均衡机制,可以根据服务的性能自动调整访问请求的分配,提高整体的性能和可用性。 3. 容器化支持:微服务通常会通过容器进行部署和管理,框架提供了与各种容器化技术的集成,如Docker和Kubernetes,方便开发人员在容器环境中部署微服务应用程序。 4. 监控和日志:框架提供了监控和日志功能,可以实时监控微服务的运行状态、性能指标和错误日志,帮助开发人员及时发现和解决问题。 5. 安全性:框架提供了安全性的支持,包括身份验证和授权等功能,确保只有授权的用户能够访问微服务.NET 微服务框架具有良好的开发生态和强大的社区支持,开发人员可以基于框架进行快速开发,并且可以方便地与其他.NET技术和服务进行整合。通过使用.NET 微服务框架,开发人员可以更轻松地构建高可用、可伸缩、易于维护的微服务应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有态度的马甲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值