.NET Core微服务开发选项

栏目: IT技术 · 发布时间: 5年前

内容简介:微服务开发的关注点有哪些?微服务构最终的目标是实现业务的价值,交付,为了让开发人员更加关注业务开发和交付,微服务需要一些比较底层的基础设置,我们也称为微服务公共关注点。

微服务开发的关注点有哪些?

微服务构最终的目标是实现业务的价值,交付,为了让开发人员更加关注业务开发和交付,微服务需要一些比较底层的基础设置,我们也称为微服务公共关注点。

.NET Core微服务开发选项

  • 配置管理:对微服务可变参数进行配置管理。比如各种开关、数据库连接等。

  • 服务发现和LB:服务分布在不同节点上,服务之间需要互相调用,首先需要定位找到对方,这就是服务发现。一般一个服务会多实例部署,调用方需要以某种负载均衡策略访问目标服务实例这就是LB。

  • 弹性和容错:分布式服务是以网络相互连接,网络可能会出现故障,比如断线,宕机,超时,微服务必须具备容错的能力来保证服务的质量和用户体验。

  • API管理:主要指微服务系统对外暴露的api,一般通过api网关管理,网关是微服务大门,需要支持反向路由、安全鉴权、日志监控、限流容错等基本功能,高级网关还需要支持AB测试、蓝绿和灰度测试等高级功能。

  • 服务安全:用户访问微服务首先需要认证,如果操作某些敏感服务还需要鉴权,服务之间调用也需要一定的权限管控。

  • 日志监控:服务访问日志需要进行集中采集、存储和分析,方便进一步的分析微服务性能甚至是用户的行为。

  • Metrics监控:通过埋点对微服务进行性能、延迟、调用量、错误数等等进行监控;也可以对重要的业务指标进行监控。

  • 调用链监控:分布式系统服务之间相互依赖错综复杂,通过调用链监控可以事实掌握服务之间的依赖关系和之间调用的性能,出现问题,通过分析调用链分析,进一步进行排障。

  • 调度和发布:最终微服务需要发布到生产环境当中去,目前推荐的微服务交付手段主要是容器云环境,容器云 需要支持资源自动调度和发布,高级的需要滚动发布和蓝绿发布。

  • 自愈和自动伸缩

.NET Core 微服务开发有哪些选择?

  • 如果在3年前,你羡慕别人有Spring cloud 全家桶 ,可以很方便的开发微服务,那是真羡慕。不过随着K8S的出现,你真的不用羡慕了,你可以使用.NET core+K8S 的组合方式作为开发微服务的选择。

  • 也可以选择Steeltoe,它是Pivotal公司开源给.NET基金会的项目。官网地址:https://steeltoe.io/

  • 完全使用.NET开源社区项目来开发微服务。比如Ocelot等..

下面主要列举下采用.NET开源社区和k8s作为微服务进行开发

.NET Core微服务开发选项

最终采用哪种开发技术,需要根据自己公司的团队和业务进行考虑,k8s很强大的,需要掌握和学习的技术。

.NET Core微服务开发选项


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据结构(C语言版)

数据结构(C语言版)

严蔚敏、吴伟民 / 清华大学出版社 / 2012-5 / 29.00元

《数据结构》(C语言版)是为“数据结构”课程编写的教材,也可作为学习数据结构及其算法的C程序设计的参数教材。 本书的前半部分从抽象数据类型的角度讨论各种基本类型的数据结构及其应用;后半部分主要讨论查找和排序的各种实现方法及其综合分析比较。其内容和章节编排1992年4月出版的《数据结构》(第二版)基本一致,但在本书中更突出了抽象数据类型的概念。全书采用类C语言作为数据结构和算法的描述语言。 ......一起来看看 《数据结构(C语言版)》 这本书的介绍吧!

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具