.NET Core微服务开发选项

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

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

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

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

.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微服务开发选项


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

查看所有标签

猜你喜欢:

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

跨越鸿沟

跨越鸿沟

[美] 杰弗里·摩尔(Geoffrey A. Moore) / 赵娅 / 机械工业出版社 / 2009-1 / 36.00元

在真正涉足高科技领域之前,你有必要读一读这本书——在这个节奏飞快、竞争激烈的技术竞技场上,这本书绝对能够帮助你更容易地获得成功。 ——威廉姆·劳森 罗盛软件公司董事会主席兼CEO 最近40年来,本书对高科技营销各个方面所做出的贡献远远超过了其他任何相关书籍。如今已经有无数企业和大学分别在自己的运营和教学过程中引入了鸿沟思想,如果你还不是这些企业或大学中的一员,你可能就要担心自己的未来了......一起来看看 《跨越鸿沟》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

html转js在线工具
html转js在线工具

html转js在线工具