带你读《企业级云原生白皮书项目实战》——4.2.4 MSE最佳实践

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
注册配置 MSE Nacos/ZooKeeper,118元/月
云原生网关 MSE Higress,422元/月
简介: 带你读《企业级云原生白皮书项目实战》——4.2.4 MSE最佳实践

4.2.4 MSE最佳实践


消息队列Kafka版是阿里云提供的分布式、高吞吐、可扩展的消息队列服务。消息队列Kafka版广泛用于日志收集、监控数据聚合、流式数据处理、在线和离线分析等大数据领域,已成为大数据生态中不可或缺的部分。

4.2.4.1无损上下线

绝多数的软件生产安全事故发在应用上下线发布阶段,尽管通过遵守业界约定俗成的可灰度、可观测和可回滚的安全生产三板斧,可以最小限度的规避发布过程中由于应用本身代码问题对用户造成的影响。但对于并发流量情况下的短时间流量有损问题却仍然无法解决。基于此,阿里云微服务引擎MSE在应用发布过程中,提供了应用下线时自适应等待和主动通知、应用上线时就绪检查与微服务生命周期对齐以及服务预热等技术手段,实现微服务应用无损上下线发布,有效规避线上发布所出现的流量损失,降低研发运维成本。

image.png

图:主动通知

image.png

图:自适应等待


4.2.4.1微服务架构之应用配置

应用配置可解决的问题主要包括以下方面:

1.本地静态配置,采用本地静态配置,导致运行时无法动态修改。配置格式不统一,散乱,难以管理,有的用XML格式,有的用properties,有的用DB等

2.生产事故,容易将非生产配置带到生产环境,从而引发重大事故

3.配置修改困难,部署多台节点时,修改配置费时费力,周期长。

4.缺少安全审计和应用版本控制能力,无法追溯责任人,无法得知修改具体内容,无法确定具体修改时间,无法及时回滚应用。

针对上述问题,应用配置中心应运而生。用户在通过新应用接入或版本升级方式即可使用应用配置能力。MSE后端与应用配置服务(ahas-switch)整合而复用应用配置相关功能,解耦应用配置具体实现。控制台推送配置项由应用配置服务处理,配置项通过ACM组件持久化,应用重启或扩容阶段可读取持久化配置。

image.png

图:应用配置中心


4.2.4.1微服务限流降级

微服务的稳定性一直是开发者时常关注的话题。随着业务从单体架构向分布式架构演进以及部署形式的变化,服务之间的依赖关系变得越来越复杂,业务系统也面临着巨大的高可用挑战。如以下场景:演唱会抢票瞬间洪峰流量导致系统超出最高负载,load飙高,用户无法正常下单。影响微服务可用性的因素有非常多,而这些不稳定的场景可能会导致严重后果。我们从微服务流量的视角来看,可以粗略分为两类常见的场景:

1.服务自身流量超过承载能力导致不可用。例如激增流量、批量任务投递导致服务负载飙高,无法正常处理请求。

2.服务因依赖其他不可用服务,导致自身连环不可用。例如我们的服务可能依赖好几个第三方服务,假设某个支付服务出现异常,调非常慢,而调用端又没有有效地进行预防与处理,则调用端的线程池会被占满,影响服务自身正常运转。在分布式系统中,调用关系是网状的、错综复杂的,某个服务出现故障可能会导致级联反应,导致整个链路不可用。

针对这些不稳定的场景,MSE服务治理依托AHAS提供全方位的高可用流量防护能力。AHAS基于阿里限流降级组件Sentinel的稳定性防护能力,以流量为切入点,从流量控制、并发控制、熔断降级、热点防护、系统自适应保护等多个维度来帮助保障服务的稳定性,覆盖微服务、云原生网关、Service Mesh等几大场景。AHAS Sentinel不仅在阿里内部淘宝、天猫等电商领域有着广泛的应用,在互联金融融、在线教育、游戏、直播播业和其他大型政央企行业也有着大量的实践。

image.png

图:流量防护

相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
4月前
|
消息中间件 Cloud Native 安全
《阿里云产品四月刊》—得物 ZooKeeper SLA 也可以 99.99%丨最佳实践(1)
阿里云瑶池数据库云原生化和一体化产品能力升级,多款产品更新迭代
《阿里云产品四月刊》—得物 ZooKeeper SLA 也可以 99.99%丨最佳实践(1)
|
4月前
|
Cloud Native 数据库 存储
《阿里云产品四月刊》—得物 ZooKeeper SLA 也可以 99.99%丨最佳实践(2)
阿里云瑶池数据库云原生化和一体化产品能力升级,多款产品更新迭代
《阿里云产品四月刊》—得物 ZooKeeper SLA 也可以 99.99%丨最佳实践(2)
|
4月前
|
Cloud Native 数据库 测试技术
《阿里云产品四月刊》—得物 ZooKeeper SLA 也可以 99.99%丨最佳实践(3)
阿里云瑶池数据库云原生化和一体化产品能力升级,多款产品更新迭代
《阿里云产品四月刊》—得物 ZooKeeper SLA 也可以 99.99%丨最佳实践(3)
|
20天前
|
Cloud Native API
微服务引擎 MSE 及云原生 API 网关 2024 年 8 月产品动态
微服务引擎 MSE 及云原生 API 网关 2024 年 8 月产品动态。
|
24天前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 云原生 API 网关 2024 年 08 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要
|
5月前
|
存储 监控 安全
得物 ZooKeeper SLA 也可以 99.99%丨最佳实践
在本文中,作者探讨了ZooKeeper(ZK)的一个内存占用问题,特别是当有大量的Watcher和ZNode时,导致的内存消耗。
43421 8
|
5月前
|
弹性计算 监控 Cloud Native
云原生最佳实践系列 4:基于 MSE 和 SAE 的微服务部署与压测
通过MSE(微服务引擎)、SAE(Serverless应用引擎)、ARMS(应用监控服务)、PTS(性能测试服务)等产品,实现微服务的无服务化部署、监控和弹性伸缩。
|
5月前
|
负载均衡 Cloud Native 安全
云原生最佳实践系列 6:MSE 云原生网关使用 JWT 进行认证鉴权
本文档介绍了如何在 MSE(Microservices Engine)云原生网关中集成JWT进行全局认证鉴权。
977 13
|
5月前
|
消息中间件 存储 负载均衡
消息中间件的选择:RabbitMQ是一个明智的选择
消息中间件的选择:RabbitMQ是一个明智的选择
89 0
|
4月前
|
消息中间件 存储 中间件
【消息中间件】详解三大MQ:RabbitMQ、RocketMQ、Kafka
【消息中间件】详解三大MQ:RabbitMQ、RocketMQ、Kafka
446 0
下一篇
无影云桌面