archsummit阿里云原生微服务架构治理最佳实践

小明java问道之路 小明java问道之路     2023-03-20     275

关键词:

前言

📫 作者简介小明java问道之路,专注于研究 Java/ Liunx内核/ C++及汇编/计算机底层原理/源码,就职于大型金融公司后端高级工程师,擅长交易领域的高安全/可用/并发/性能的架构设计与演进、系统优化与稳定性建设。

📫 热衷分享,喜欢原创~ 关注我会给你带来一些不一样的认知和成长

🏆 InfoQ签约作者、CSDN专家博主/后端领域优质创作者/内容合伙人、阿里云专家/签约博主、51CTO专家 🏆

🔥 如果此文还不错的话,还请👍关注 、点赞 、收藏三连支持👍一下博主~

本文目录

前言

本文导读

一、云原生微服务的挑战和趋势

1、微服务在云原生下的挑战

1.1 挑战

1.2 微服务化深入服务治理是难点

2、云原生微服务的发展趋势

二、运行态服务治理最佳实践

1、无损上下线

2、安全生产(前后端全链路灰度发布)

三、开发态服务治理最佳实践

总结


前言

2022 年 9 月 26 -27 日,有幸参加极客邦科技旗下 InfoQ 中国举办的 ArchSummit 全球架构师峰会(杭州站)

本专栏是以“微服务架构设计模式与实践”为主题,经过推行多年,确实有很多应用程序落实了微服务架构,不过任有一些应用程序还处在 Monoliths 模式,而另一些则介于两者之间,而出现这样的情况,基本上就是公司在决定采用微服务和 Monoliths 时的技术折衷。这个专题,会相对聚焦在可落地的微服务架构经验分享。

大会内容涵盖人工智能、云计算、微服务、元宇宙、智能运维、大数据等主题,为企业管理者、架构师与开发人员提供了行业前沿视角与参考,帮助企业在数字化时代赢得先机,把握竞争优势。

本次大会官网ArchSummit 全球架构师峰会(杭州站),感兴趣的同学可以自行了解,错过杭州站的同学可以去了解一下北京站 

本文导读

本讲由阿里云云原生应用平台高级技术专家,阿里云微服务混合云产品研发负责人,Apache Dubbo PMC member,Apache Tomcat PMC member,Apache Member • Arthas Maintainer,阿里双十一中间件稳定性负责人望陶老师所分享。

一、云原生微服务的挑战和趋势

1、微服务在云原生下的挑战

1.1 挑战

稳定,业务高可用、多可用区部署;同城/异地容灾,业务多活;微服务需要更安全、更可信。

效率,白天流量高峰期发布;云边端一体化开发部署联调;服务治理体系强依赖SDK升级;K8s下应用IP的不确定、导致服务治理规则的失效。

成本,应用迁移_上云成本很高;极致、灵活的弹性

1.2 微服务化深入服务治理是难点

下面分享一下阿里的微服务治理技术演进路线:

微服务要想服务治理的好,首先是微服务治理的划分,全链路流量治理以及微服务引擎的服务治理。

阿里把整体流程划分为三个大模块,开发态Dev,测试态Test以及变更与运行态 Ops。

其中开发态Dev分为服务元信息、服务契约管理、服务调试、服务Mock、开发环境隔离、端云互联。

测试态Test分为服务压测、自动化回归、流量录制、流量回放。

变更与运行态 Ops,分为变更态和运行态,变更态有无损下线无损上线、金丝雀发布、A/B Test、全链路灰度;运行态有离群实例摘除、日志治理、流量控制与平滑、读写流量分离、熔断降级、缓存热点治理、同AZ优先路由、服务鉴权、推空保护、访问控制

阿里全链路流量治理(漏斗模型):

2、云原生微服务的发展趋势

后端服务BaaS化:DB,MQ, Redis, 注册中心、配置中心、服务治理中心

服务治理下沉、透明化:Java Agent, Sidecar, Java治 理和Mesh治理的统一,应用0成本. 上云

部署形态多云、混合云化:本地云端混部、多云混部、公私混部

二、运行态服务治理最佳实践

1、无损上下线

无损下线(白天大流量下发布依然丝般顺滑)

服务调用报错期的时候,由注册中心感知到服务端下线,通知消费者,客户端选择调用其他提供者,同时报错服务端确保在途请求处理完毕再下线。

无损上线

第一步应用初始化,第二部预建链接(Redis:JedisPool连接池创建后不会立即建连接;数据库:druid连接池异步创建连接),三注册服务(Dubbo/SC服务需要延迟暴露),四步,通过readiness检

查(K8s readiness检查和SpringCloud/Dubbo体系没有打通),第五步小流量预热(流量需要缓慢增加,但Dubbo 2.7.4.1以下版本存在服务预热不生效问题;Fastjson/Jetty低版本没有开启并行类

加载;JVM JIT编译问题引起cpu飙高;日志异步化),最后正常流量进入。

2、安全生产(前后端全链路灰度发布)

安全生产发布最佳实践

第一步:新建灰度Deployment,部署新版本的镜像,打上新版本的标签

第二步:配置针对新版本的标签路由规则

第三步:验证成功,扩大灰度比例。

第四步:若验证成功,将稳定版本的应用更新成最新镜像;若验证失败,把灰度的Deployment副本数调整到0或删除该Deployment

三、开发态服务治理最佳实践

多版本开发测试环境主要设计有,一、研发人员每个人独立部署一套环境;二、基于全链路流量控制进行逻辑隔离;三。入口请求打上标识,标识绑定应用 分组,形成规则推送到配置中心;四、大幅度降低研发成本

多版本开发测试环境,云上VPC主要是本地开发环境通过通道服务进行ECS代理,转发到基线环境上。

总结

本文围绕阿里云云原生的微服务挑战和趋势、运行态服务治理最佳实践、开发态服务治理最佳实践展开介绍阿里云原生微服务架构治理最佳实践展开说明和复盘。

感兴趣的同学可以自行了解其中更加详细的信息(微服务架构设计模式与实践),错过杭州站的同学可以去了解一下北京站

云原生微服务治理技术朝无代理架构的演进之路

...1a;本文基于对微服务治理技术从SOA,微服务框架,到云原生架构的历史发展总结,提出了一种新的基于Javaagent技术的新一代无代理架构的服务治理技术,并介绍了其相关的代表性开源项目Sermant。本文分享自华为云社区... 查看详情

从建好到用好,阿里云原生微服务生态的演进

最佳实践孵化于阿里巴巴,经过十年双十一打磨稳定可靠,并且通过开源构建了丰富的生态,目前几乎支持了所有主流语言,并且在过去1年里对Golang微服务生态做了完善的支持,体验大幅提升。2 微服务生态规划在过去的十... 查看详情

云原生时代,微服务到底应该怎么玩儿?

...,丰富的功能让其他语言体系的开发者们羡慕不已。在云原生时代,Kubernetes快速普及,除了解决微服务所需要的应用编排、伸缩、保活等功能外,Kubernetes里本身还带了服务发现、配置管理、负载均衡和网关。既然这样,那么是... 查看详情

网易云原生架构实践之服务治理(代码片段)

云原生(CloudNative)的高阶实践是分布式服务化架构。一个良好的服务化架构,需要良好的服务发现、服务治理、服务编排等核心能力。本文为读者解析网易云的服务治理策略及其典型实践。 网易云微服务架构 在优化了... 查看详情

云原生架构下的微服务选型和演进

作者:彦林本文整理自阿里云智能高级技术专家彦林的线上直播分享《云原生微服务最佳实践》。视频回放地址:https://yqh.aliyun.com/live/detail/28454随着云原生的演进,微服务作为主流应用架构被广泛使用,其落地的难题逐步从如... 查看详情

在微服务架构下基于prometheus构建一体化监控平台的最佳实践

...器化技术演进的监控之痛云原生时代,为什么是Prometheus阿里云Prometheus在微服务场景的落地实践大规模落地实践挑战和解决方案云原生可观测性的发展趋势和展望01微服务、容器化技术演进的监控之 查看详情

小红书微服务框架及治理等云原生业务架构演进案例

‍在互联网世界,变化与演进是业务架构永恒的主题。技术迭代、业务演变等多重因素,一再提升着系统架构设计的难度和复杂度,可以说,没有一种架构是永久适用的,要想让自己的业务具有快速响应、快... 查看详情

云原生微服务架构springcloud和dubbo的区别?

...odubbo启动流程图先说说Dubbo吧!Dubbo是基于Tcp协议、是阿里巴巴开源的分布式服务治理框架,出现的时间比SpringCloud早,并且当时国内在这方面并未成熟,因此很多团队在做服务化改造的时候都采用了Dubbo,比如... 查看详情

云原生微服务架构springcloud和dubbo的区别?

...odubbo启动流程图先说说Dubbo吧!Dubbo是基于Tcp协议、是阿里巴巴开源的分布式服务治理框架,出现的时间比SpringCloud早,并且当时国内在这方面并未成熟,因此很多团队在做服务化改造的时候都采用了Dubbo,比如... 查看详情

云原生架构下日志服务数据预处理

...il/207】观看视频:【https://yqh.aliyun.com/live/detail/23950】阿里云最佳实践目前已覆盖23类常用场景,有200多篇最佳实践,这其中涉及110款以上阿里云产品的最佳使用场景。目前,最佳实践已成功帮助大量客户实现自助... 查看详情

云原生架构下日志服务数据预处理

...il/207】观看视频:【https://yqh.aliyun.com/live/detail/23950】阿里云最佳实践目前已覆盖23类常用场景,有200多篇最佳实践,这其中涉及110款以上阿里云产品的最佳使用场景。目前,最佳实践已成功帮助大量客户实现自助... 查看详情

阿里云acm:云原生配置管理利器

摘要:在传统架构中,如果配置信息有变更,通常是登陆服务器手动修改配置来使配置生效。在微服务架构中,应用数和节点数由于微服务化数量激增,导致发布次数增加,配置变更难度加大,通常是将应用配置抽象出来放置在... 查看详情

身为程序员,就应该了解微服务的未来发展趋势:云原生应用架构

...、无侵入治理等方面进行变革和演进。本篇我们将讲解云原生架构、ServiceMesh技术、无服务器架构(Serverless)技术。云原生应用架构云原生应用架构的3个特征包括:容器化、微服务、DevOps。通俗地讲,就是将现代... 查看详情

应用量化时代|微服务架构的服务治理之路

...随数字经济的发展,在众多企业的数字化转型之路上,云原生、DevOps、微服务、服务治理等成为行业内不断被探讨的新话题。人们在理解和接受这些新型概念的同时,也不断地思考其可能的落地形态。需求是创造发生的原动力,... 查看详情

云原生架构微服务架构

微服务架构 云原生架构  查看详情

用友云服务治理平台助力企业微服务架构落地

本文主要阐述使用微服务架构时,治理框架或者平台需要解决的主要问题,微服务落地实施过程中所遇到的关键问题和对应解决方案。同时,文章也介绍用友云旗下的微服务治理平台的核心功能和技术架构,以及微服务治理平台... 查看详情

阿里云服务网格asm集成sls告警

简介:随着微服务的流行,微服务的架构也在不断的发展演进,SpringCloud与Dubbo为代表的微服务开发框架也得到了普及和落地;在云原生时代,无侵入的服务网格(ServiceMesh)开始走向成熟,相对于... 查看详情

在dubbo3.0上服务治理的实践

简介: Dubbo3.0是在云原生背景下诞生的,使用Dubbo构建的微服务遵循云原生思想,能更好的复用底层云原生基础设施、贴合云原生微服务架构。Dubbo3.0介绍作者|十眠自从ApacheDubbo在2011年开源以来,经过多年一众大... 查看详情