开源公告|微服务负载保护系统ModernFlux正式开源!

 导语

ModernFlux为异构环境下微服务提供分布式多维负载保护。由腾讯互娱增值服务部IEG-AMS团队自研,并于2018年正式上线运营。应用于腾讯IEG 80%的营销活动以及多个内部平台。经历各种秒杀活动、游戏周年庆以及节假日,取得很好实践效果,保障了系统安全运营。现将ModernFlux对外开源,为微服务开源社区贡献力量。

主要设计目标

  1. 方便业务接入,易运营,支持业务系统异构部署, 对现有业务运营风险影响小。

  2. 支持全局流控和服务上下游联动,支持业务/资源等多维度流控,根据业务负载对外提供弹性服务。

  3. 数据传输具有容错机制,流控服务具有健壮性并有容灾机制。 

ModernFlux功能介绍以及适用场景

ModernFlux为异构环境下微服务提供分布式多维负载保护,具体通过对微服务南北流量统一控制,东西流量弹性熔断,以及根据业务计算资源自适应最大负载。

主要设计特点:

1.低消耗,对业务计算/存储/网络等资源消耗小。

2.业务扩缩容对负载保护系统无感知,即系统对业务扩缩容透明。

3.在保证流控精度前提下,对业务流量(剧烈)变化不敏感,无需频繁扩缩容。

应用场景有营销活动(如秒杀/周年庆),电商大促,多业务混布虚拟隔离。

大型游戏秒杀营销活动入口流量难以预估,由于流量瞬间暴增和营销资源有限,单纯堆砌资源成本高,也无必要,自动扩容往往也来不及。ModernFlux对业务入口流量进行控制,对超过系统负载或者营销资源流量进行限制,保障系统安全对外服务。

为提高资源使用率和降低运营成本,往往会把多业务部署在一组资源。为避免业务之间互相影响,需对各业务流量进行保护和限制。通过对各业务最大流量进行限制,保障各业务能错峰充分使用资源,避免流量高峰时互相影响。

微服务通常Topo结构复杂,技术选型广泛,各服务性能和健壮性参次不齐,关键节点异常有可能造成整个系统瘫痪。ModernFlux提供弹性熔断机制,可对关键或脆弱服务模块提供保护,保障系统运营安全。

ModernFlux应用效果

下图是部分ModernFlux应用于营销活动效果图,黄色线表示实际通过流量,黑色线表示被拒绝的流量,蓝色线表示上游的真实流量绿色表示整个Set流量控制(未触发):

ModernFlux项目规划

1.增加精细小流量控制支持,以及立体多层流控支持。

2.完善容灾支持

3.与微服务框架(如Istio)融合

4.与业务自动扩容融合

5.结合业务历史数据,使系统更智能化,减少阈值使用或其它用户介入

ModernFlux开源地址

https://github.com/Tencent/ModernFlux

https://github.com/Tencent 

(点击文末阅读原文直接访问)

请给项目 一个 Star !

欢迎提出你的 issue 和 PR!

 国内镜像地址:

https://git.code.tencent.com/Tencent_Open_Source

(登录后才能访问公开项目)

腾讯工蜂源码系统为开源开发者提供完整、最新的腾讯开源项目国内镜像

关注腾讯开源公众号

获取更多最新腾讯官方开源信息!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值