服务的高可用 —— 智能流控设计

本文介绍了智能流控的设计,特别是在广告业务中的应用。通过动态阈值和流量控制策略,应对上游DSP服务的不确定性和性能问题。利用Prometheus监控失败率和超时率,动态调整阈值,结合Memcache和Redis实现流量控制,确保服务高可用。然而,这种架构依赖外部组件,存在故障风险,需要实时监控和告警。
摘要由CSDN通过智能技术生成

目录

智能流控

背景

动态阈值及流量控制

动态阈值

流量控制

优势及不足

附录


智能流控

智能流控,听起来是流量的拆分控制。不错,就这回事,下面以广告业务为例来讲解,如何设计搭建一智能流控机制。

背景

当 A 模块从上游模块拿到倒排、召回后的广告投放计划后,会以并发的方式请求 各家 dsp 获取各自广告的出价、尺寸,等广告信息。在并发请求时,响应时间由最后返回的 dsp 决定。最坏情况是 dsp 超时无反馈,响应时间由默认配置的最大超时时间决定,此时会拖慢整个 A 服务,同时广告链路各微服务之间产生连级反应,整条链路被影响。由于 上游对 dsp 服务的承载能力及容灾等情况不可控,故需要对其做流控策略。

动态阈值及流量控制

在智能流控策略中,依赖的组件有  memcache\redis\prometheus。架构模型是挂载式,通过挂载核心动态阈值脚本,阈值数据的共享,触发流量控制策略。下面依次讲解,动态阈值脚本 及 流量控制策略。

动态阈值

在动态阈值脚本中,我们达到智能、动态的前提是,有个阈值的基准。这个一般是由 dsp 接入时,有双方技术判定的服务承载健康值。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

魏小言

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值