您的位置: 首页> 资讯 > 正文

每日快报!构建高可用云原生应用,如何有效进行流量管理?

2023-05-25 18:19:43 来源:博客园
摘要:对于那些希望使用华为云的云原生服务的人来说,这篇文章提供了很好的指导,让他们了解如何通过容错来保证他们的服务的可用性和稳定性。

本文分享自华为云社区《构建高可用云原生应用,如何有效进行流量管理?》,作者: breakDawn。


(资料图片)

随着云原生的概念越来越火,服务的架构应该如何发展和演进,成为很多程序员关心的话题。大名鼎鼎的《深入理解java虚拟机》一书作者于21年推出了新作《凤凰架构》,从这本书中可以看到当前时下很多最新的技术或者理念。

因此本文以及后续都将持续沉淀发布这本书的学习笔记和思考,也欢迎购买该书进行详细学习,或者关注后续的学习笔记内容发布,了解精华内容和总结思考。

流量治理

1 服务容错

1.1 容错策略

文章中介绍了故障转移、快速失败、安全失败、沉默失败、故障恢复、并行调用、广播调用等几种容错策略,我用表格的形式直观呈现一下这几种策略的区别,方便理解和选型:

1.2 容错设计模式

1.断路器模式

即服务中发请求的地方都通过一个断路器模块来转发发送当10秒内请求数量达到20,且失败阈值达到50%以上(这些参数都可以调整), 则认为出现问题, 于是主动进行服务熔断, 断路器收到的请求自动返回错误,不再去调用远程服务, 这样可避免请求线程各种阻塞,能及时返回报错。中间会保持有间隔的重试直到恢复后,关闭断路。

2.舱壁隔离模式

如果一个服务中,可能要同时调用A\B\C三个服务,但是却共用一个线程池。如果调用C服务超时,而调用C的请求源源不断打来,会造成C服务的请求线程全在阻塞,直接把整体线程池给占满了,影响了对A\B服务的调用。

一种隔离措施是对每个调用服务分别维护一个线程池。缺点是额外增加了排队、调度、上下文切换的开销,据说Hystrix线程池如果开启了服务隔离,会增加3~10ms的延迟。

另一种隔离措施是直接自己定义三个服务的计数器,当服务线程数量到达阈值,自动对这个服务调用做限流。

3.重试模式

故障转移和故障恢复这2个策略一般都是借助重试模式来处理的,进行重复调用。

重试模式应该满足以下条件才能使用:

  • 仅在主路核心逻辑的关键服务上进行同步的重试, 而非关键的服务
  • 只对瞬时故障进行重试,对于业务故障不进行重试
  • 只对幂等型的服务进行重试

重试模式应该有明确的终止条件,例如:

  • 超时终止
  • 次数终止

重试一定要谨慎开启, 有时候在网关、负载均衡器里也会配置一些默认的重试, 一旦链路很长且都有重试,那么系统中重试的次数将会大大增加。

2 流量控制

流量控制需要解决以下3个问题

  • 依据什么指标来限流
  • 如何限流
  • 超额流量如何处理

2.1 流量统计指标(依据什么指标来限流)

  • 每秒事务数TPS: 事务是业务逻辑上具有原子操作的业务操作,对于对买书接口而言, 买书就是一个事务, 背后的其他请求是不感知的。
  • 每秒请求数HPS: 就是系统每秒处理的请求数, 如果1事务中只有1个请求, 那么TPS=HPS, 否则HPS>TPS
  • 每秒查询书QPS: 是一台服务器能够响应的查询次数。 对于单节点系统而言,QPS=HPS,对于一个分布式系统而言HPS>TPS

通过限制最大TPS来限流的话,不能够准确反映出系统的压力, 因此主流系统倾向使用HPS作为首选的限流指标。

2.2 限流设计模式(如何限流)

流量计数器模式

统计每秒内的请求数是否大于阈值缺点:

  1. 每秒是基于1.0s-2.0这样的区间统计, 但如果是0.5-1.5 和1.5-2.5分别超出阈值,但是1.0-2.0没有超过阈值,则会出现问题。
  2. 每秒的请求超过阈值,也不代表系统就真的承受不住,导致五杀

滑动时间窗模式

滑动时间窗专门解决了流量计数器模式的缺点。准备一个长度为10的数组,每秒触发1次的定时器。

  1. 将数组最后一位的元素丢弃,并把所有元素都后移一位,然后在数组的第一位插入一个新的空元素;
  2. 将计数器中所有的统计信息写入第一位的空元素;
  3. 对数组中所有元素做统计,清空计数器数据。可以保证在任意时间片段内,只通过简单的调用计数比较, 控制请求次数不超过阈值

缺点在于只能用于否决式限流, 必须强制失败或者降级,无法进行阻塞等待的处理。

漏桶模式

漏桶和令牌桶可以适用于阻塞等待的限流。漏桶就是一个以请求对象作为元素的先入先出队, 队列程度等于漏桶大小,当队列已满拒绝信的请求进入。比较困难的原因在于很难确定通的大小和水的流出速度,调参难度很大。

令牌桶模式

每隔一定时间,往桶里放入令牌,最多可以放X个,每次请求消耗掉一个。

可以不依赖定时器实现令牌的放入,而是根据时间戳,在取令牌的时候当发现时间戳满足条件则在那个时候放入令牌即可

2.3 分布式限流

前面的4个限流模式都只是单机限流,经常放在网关入口处,不适用于整个服务集群的复杂情况,例如有的服务消耗多有的服务消耗少,都放在入口处限流情况其实很多。

可以基于令牌桶的基础上,在入口网关处给不同服务加不同的消耗令牌权重,达到分布式集群限流的目的

总结

流量治理技术对云原生场景的重要性

以上主要介绍了服务容错和容错设计模式,涉及到不同的容错策略和容错设计模式,如故障转移、快速失败、安全失败、沉默失败、故障恢复、并行调用和广播调用。

这2个设计可以保证系统的稳定性和健壮性。这篇文章涉及的话题与云原生服务息息相关,因为云原生应用程序之间会频繁通过进行请求和交互,需要通过容错和弹性来保证高可用性。

因此,对于那些希望使用华为云的云原生服务的人来说,这篇文章提供了很好的指导,让他们了解如何通过容错来保证他们的服务的可用性和稳定性。

华为云如何在流量治理中体现作用

如果能通过将服务API注册到华为云提供的APIG网关上,似乎能够很方便地达成上述2个设计。

比如APIG支持断路器策略,是API网关在后端服务出现性能问题时保护系统的内置机制。当API的后端服务出现连续N次超时或者时延较高的情况下,会触发断路器的降级机制,向API调用方返回固定错误或者将请求转发到指定的降级后端。当后端服务恢复正常后,断路器关闭,请求恢复正常。APIG-断路器策略

同时APIG还提供了流量控制策略,支持从用户、凭据和时间段等不同的维度限制对API的调用次数,保护后端服务。支持按分/按秒粒度级别的流量控制,阅读了上文中提到的几个流量策略,再去看APIG里配置的流量策略值,则会很容易理解。APIG-流量控制策略

可以看到对于这些常见的经典服务设计策略,无需再重复造轮子,使用已有云服务,可以很快地实现相关功能,提升产品的上线速度和迭代效率。

点击关注,第一时间了解华为云新鲜技术~

关键词:

资讯
业界
企业
骑闻
产品
每日快报!构建高可用云原生应用,如何有效进行流量管理?
摘要:对于那些希望使用华为云的云原生服务的人来说,这篇文章提供了很好的指导,让他们了解如何通过容错来
2023-05-25
四川宜宾市高县发生3.9级地震
速报参数:据中国地震台网正式测定,5月25日12时57分在四川宜宾市高县发生3 9级地震,震源深度9公里,震中
2023-05-25
探索科学从“星”出发|全球球精选
天津北方网讯:5月24日,北辰区宜兴埠镇在未来星球公园举行探索科学从星出发科普主题活动。科普志愿者带领
2023-05-25
曹操是个什么样的人六百字(曹操是个什么样的人)|最资讯
1、曹操这个人是个很复杂的人。2、他既狡诈又老实,既温情又狠毒,既宽容又报复。3、如果你只看曹操的一个
2023-05-25
环球即时看!气体润滑剂_关于气体润滑剂简述
1、气体润滑剂可以像油一样地成为润滑剂。2、适用于流体动力润滑的物理定律。3、也可应用于气体。文章到此
2023-05-25
拜仁输球后参加嘻哈音乐节肆意玩耍,阿方索引球迷不满
在上周末进行的德甲第33轮比赛中,拜仁1-3不敌莱比锡,赛后,社交媒体上流传着阿方索-戴维斯在比赛后一天前
2023-05-25
  中新网海口1月23日电(符宇群)海南省第六届人民代表大会第五次会议23日在海口举行第二次全体会议。海南省人民检察院检察长张毅在作报告
2022-01-24
  中新网太原1月23日电 (高雨晴 冉涌 张鹏宇)记者23日从国网山西省电力公司获悉,该公司冬奥保电应急发电队伍已到达河北张家口赛区,
2022-01-24
  中新网西宁1月23日电 (记者 李江宁)据青海省地震局23日消息,中国地震台网正式测定,北京时间2022年1月23日10时21分,在青海海西州德
2022-01-24
  中新网贵阳1月23日电 (周燕玲)对外开放,是内陆开放型经济试验区贵州正在召开的两会热点词汇,如何拓展海内外“朋友圈”助力贵州经济
2022-01-24
温馨生活好young 厦门推广文旅产品火爆全网
  中新网厦门1月23日电 (记者 杨伏山)“冬日暖阳厦门好young”福建省内宣传推广线下活动22日精彩收官。主办方称,本次活动火爆全网及福
2022-01-24
宁夏非遗传承人:刻刀里的守正创新更有“年味”
  (新春见闻)宁夏非遗传承人:刻刀里的守正创新更有“年味”  中新网银川1月23日电 题:宁夏非遗传承人:刻刀里的守正创新更有“年味
2022-01-24
  中新网海口1月23日电(王子谦 符宇群)海南省高级人民法院院长陈凤超23日说,2021年海南法院为自贸港建设提供坚强司法保障,全年有效管
2022-01-24
  新华社武汉1月23日电(记者王贤)随着春节假期临近,从广州、深圳等地返回湖北的旅客较多。为此,23日,武汉站、汉口站、襄阳东站、十堰
2022-01-24
  1月22日0—24时,广东省新增本土确诊病例3例和本土无症状感染者1例,均为珠海报告。23日,珠海市疫情防控新闻发布会上,珠海市政府副秘
2022-01-24
青海海西州德令哈市发生3.7级地震
  据中国地震台网正式测定,1月23日11时58分在青海海西州德令哈市发生3 7级地震,震源深度9千米,震中位于北纬38 40度,东经97 35度。
2022-01-24
  北京2022年冬奥会和冬残奥会颁奖花束已于近期完成交付。与传统的鲜切花不同,这些花束全部采用上海市非物质文化遗产“海派绒线编结技艺
2022-01-24
  疫情就是命令,防控就是责任。在抗击疫情的关键时刻,西安全员上下一盘棋,同舟共济、共克时艰。不论是党员干部或是社区志愿者,他们都
2022-01-24
  中新网宿迁1月23日电 (刘林 张华东)核酸检测是当下及时发现潜在感染者、阻断疫情传播的有效方法。23日,记者从宿迁市宿豫区警方获悉
2022-01-24
  记者从天津市人社局获悉,从明天(24日)起,天津2022年度第一期积分落户申报工作正式开始,这是新修订的《天津市居住证管理办法》《天津
2022-01-24
  中新社北京1月23日电 (记者 刘亮)记者23日从中国海关总署获悉,2021年,中国海关组织开展“国门绿盾”专项行动,在寄递、旅客携带物
2022-01-24
  记者从天津市疫情防控指挥部获悉,天津疫情第341—360例阳性感染者基本信息公布。  目前,这20例阳性感染者已转运至市定点医院做进一
2022-01-24
“最美基层民警”武文斌:案子破了最管用
  中新网吕梁1月23日电 题:“最美基层民警”武文斌:案子破了最管用  作者 高瑞峰  同事称他为“拼命三郎”。从警14年,武文斌破
2022-01-24
  据“西安发布”消息,截至2022年1月23日,雁塔区长延堡街道近14天内无新增本地病例和聚集性疫情。根据国务院联防联控机制关于分区分级
2022-01-24
  中新网西宁1月23日电 (记者 孙睿)据青海省地震台网测定,2022年1月23日10点21分(北京时间)在青海省海西州德令哈市(北纬38 44度,东经
2022-01-24
江西南昌:市民赏年画迎新年 书法家挥毫送春联
  (新春见闻)江西南昌:市民赏年画迎新年 书法家挥毫送春联  1月23日,“赏年画过大年”新年画作品联展江西南昌站活动在江西省文化馆
2022-01-24
  中新网成都1月23日电 (祝欢)成都市第十七届人民代表大会第六次会议23日在成都举行,成都市中级人民法院院长郭彦与成都市人民检察院检
2022-01-24
列车临时停车3分钟救旅客
  (新春见闻)列车临时停车3分钟救旅客  中新网广州1月23日电 (郭军 黄伟伟)“车长,车长,4号车厢有位旅客腹涨难忍,身体不舒服”…
2022-01-24
女子背负命案潜逃24年 因涉疫人员核查落网
  中新网湖州1月23日电(施紫楠 徐盛煜 赵学良)1998年7月,犯罪嫌疑人杜某因家庭琐事,用菜刀将自己的弟媳砍伤致死。案发后,她从老家河
2022-01-24
广东“00后”雄狮少年锤炼功夫迎新春
  (新春见闻)广东“00后”雄狮少年锤炼功夫迎新春  中新社广州1月23日电 题:广东“00后”雄狮少年锤炼功夫迎新春  作者 孙秋霞 
2022-01-24
01-24 西安浐灞回应“社区领导怒怼咨询群众”:涉事社区主任已停职
西安浐灞回应“社区领导怒怼咨询群众”:涉事社区主任已停职
  西安浐灞回应“一社区领导在市民咨询离市政策时发生争执”事件 涉事社区主任已停职  西部网讯(记者 刘望)日前,网络上流传一条视频 [详细]
01-24 陕西:截至23日12时 西安56.5万大中专学生已离校返家
陕西:截至23日12时 西安56.5万大中专学生已离校返家
  1月23日,陕西省举行第45场疫情防控工作发布会,发布会上陕西省教育厅相关负责人通报,陕西全省疫情有效控制后,大中专学校能不能放假 [详细]
01-24 河北魏县发布北京一阳性人员在魏县的主要轨迹
河北魏县发布北京一阳性人员在魏县的主要轨迹
  魏县疾病预防控制中心关于紧急寻找丰台区新冠肺炎阳性检测者同时间同空间人员的公告  2022年01月22日,接到邯郸市疾控中心转北京市疾 [详细]
01-24 陕西:滞留西安的外省研考生已于1月15日安全返乡
陕西:滞留西安的外省研考生已于1月15日安全返乡
  总台记者从陕西省第45场疫情防控工作新闻发布会上获悉,2022年全国研究生考试陕西全省报名16 8万人,其中应在西安市参考11 85万人,实 [详细]
01-24 宁夏:“草根主播”把货卖 “线上赶集”年味浓
宁夏:“草根主播”把货卖 “线上赶集”年味浓
  (新春走基层)宁夏:“草根主播”把货卖 “线上赶集”年味浓  中新网宁夏红寺堡1月23日电 题:宁夏:“草根主播”把货卖 “线上赶 [详细]
01-24 中国红基会:“安心校园”项目已为学校配送1469台“应急救护一体机”
中国红基会:“安心校园”项目已为学校配送1469台“应急救护一体机”
  中新网北京1月23日电 (侯力新)去年9月至今,中国红十字基金会联合北京市教委、北京市红十字会等,为北京市多所学校分期分批捐赠安装“ [详细]
01-24 西安:整区解封前24小时内进行不漏一人的全员核酸检测
西安:整区解封前24小时内进行不漏一人的全员核酸检测
  1月23日15时,陕西省政府新闻办公室举行陕西省新冠肺炎疫情防控工作第四十五场新闻发布会。陕西省卫生健康委员会党组成员、省中医药管 [详细]