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


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

查看所有标签

猜你喜欢:

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

数字战争

数字战争

[英]查尔斯·亚瑟 / 余淼 / 中信出版社 / 2013-6-1 / 49

1998年,数码世界初具雏形。 至此以往,大浪淘沙。随着IT产业的迅猛发展,涌现出了以苹果、谷歌、微软为首的行业巨头。它们为争夺数码世界不同分支的霸主地位而争斗,包括搜索技术、移动音乐、智能手机和平板电脑市场。它们可利用的武器包括硬件、软件以及广告。同时,它们要赌上的则是公司的声望,当然,还有我们的未来。然而,无论在产品创新还是在战略优势上,这些企业彼此竞争、彼此砥砺,推动了行业的良性发展。......一起来看看 《数字战争》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

随机密码生成器
随机密码生成器

多种字符组合密码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码