ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

大促场景下,如何做好网关高可用防护

2022-07-15 11:04:41  阅读:178  来源: 互联网

标签:网关 场景 流量 防护 限流 大促 MSE


简介: 618 大促正在如火如荼进行中。《618大促来袭,浅谈如何做好大促备战》一文介绍了全方位保障大促高可用的方法论和技术手段,本文继续围绕网关,深入探讨大促场景下,如何做好网关高可用防护,将从以下几点逐一展开介绍:网关做高可用防护的重要性、MSE 云原生网关的“下一代网关架构”,在高可用防护上的巨大优势、使用 MSE 云原生网关的高可用防护实战(视频演示)

618 大促正在如火如荼进行中。《618大促来袭,浅谈如何做好大促备战》一文介绍了全方位保障大促高可用的方法论和技术手段,本文继续围绕网关,深入探讨大促场景下,如何做好网关高可用防护,将从以下几点逐一展开介绍:

 

  1. 网关做高可用防护的重要性
  2. MSE 云原生网关的“下一代网关架构”,在高可用防护上的巨大优势
  3. 使用 MSE 云原生网关的高可用防护实战(视频演示)

 

网关做高可用防护的重要性

 

大促场景下,使用网关做高可用防护为什么重要?一言以蔽之,网关具备将大促的各种不确定性因素转化为确定性因素的能力,并且这种能力是不可替代的。分别从三个方面来看:

 

第一点是应对流量峰值的不确定性,必须通过限流规则将不确定的流量变为确定。业务服务模块自己做限流很难实现这一点。因为实现限流防护有个前提,承载这突发流量的服务仍能保持正常的 CPU 负载。业务服务模块即使实现了应用层的 QPS 限流,在瞬时高并发场景下,仍可能因为网络层大量的新建连接导致 CPU 猛涨,限流规则也就形同虚设了。业务模块应该专注在应用层业务逻辑上,若要通过扩容去应对其不擅长的网络层开销,所需的资源成本是相当高的。而网关作为业务流量入口的地位,决定了其必须擅长应对高并发的网络流量,并且这块性能也是衡量网关能力的一个重要指标,应对高并发的性能越强,所需的资源成本就越低,将大促流量从不确定变为确定的能力就越强。

 

第二点是应对用户行为的不确定性,需要根据不同的大促场景,模拟用户行为进行多轮压测演练,提前发现系统的瓶颈和优化点。网关既是用户访问的流量入口,也是后端业务应答的最终出口。这决定了网关是模拟用户行为进行流量压测的必经一站,也决定了是观测压测指标评估用户体验的必须环节。在网关上边压测,边观察,边调整限流配置,对大促高可用体系的建设,可以起到事半功倍的效果。

 

第三点是应对安全攻击的不确定性。大促期间也通常是黑灰产活跃的时间,异常的刷单流量很可能触发限流规则,从而影响正常用户的访问。基于网关的流量安全防护能力,例如 WAF 等功能,通过识别出异常流量提前拦截,以及将异常 IP、cookie 自动加入黑名单等手段,既可以使这部分流量排除在限流阈值之外,也可以保障后端业务逻辑安全。这也是大促高可用防护必不可少的一环。

 

MSE 云原生网关的优势

 

架构优势

 

MSE 云原生网关实现了流量网关、微服务网关、安全网关三合一的“下一代网关架构”,和常见的多层网关架构对比如下所示:

 

  • 常见多层网关架构

1.jpeg

 

在这个架构中,用 WAF 网关实现安全能力,SLB 实现负载均衡能力,Ingress 网关实现集群入口网关能力(非 K8s 场景也会部署一层 Nginx),Zuul 实现微服务网关能力。面对大促的突发流量,这样的架构下,需要对每一层网关都进行容量评估,每一层网关都是潜在的瓶颈点,都可能需要进行扩容。这样造成的资源成本和运维人力成本都是巨大的。并且每多一层网关,就多一层可用性风险。

 

  • MSE 云原生网关架构

 

2.jpeg

image.gif

使用 MSE 云原生网关,在保留 SLB 作负载均衡的基础上,只通过一层网关就实现了集群入口网关、WAF 网关、微服务网关的全部能力。应对大促场景,运维人员只需专注在 MSE 网关这一层上,就能做好所有入口流量的管理,实现高可用防护。这就是“下一代网关架构”,让一切回归简单,唯有简单方可依赖。

 

性能优势

 

如下图所示,MSE 云原生网关的吞吐性能是 Nginx Ingress Controller 的一倍,具体的性能对比分析可以参考《K8s 网关选型初判:Nginx 还是 Envoy?》一文。在大促的洪峰流量面前,网关的性能如果不够好,意味着企业要支付更多的 ECS 资源成本,同时还要为网关本身能否扛住流量操心,一旦“门神”失守,对业务造成的损失是不可估量的。

 

3.png

image.gif

网关规格:16 核 32 G * 4 节点

ECS 型号:ecs.c7.8xlarge

 

高可用能力方面,MSE 云原生网关内置了 Alibaba Sentinel 高可用模块,历经多年双十一流量考验,提供了丰富的限流防护能力,包括流控规则、并发规则、熔断规则,可以全面保障后端业务高可用;此外,MSE 云原生网关还具备流量预热能力,通过小流量预热方法,可以有效解决大促场景下,资源初始化慢所导致的大量请求响应慢、请求阻塞问题,避免刚扩容的节点无法提供正常服务,影响用户体验。

 

4.png

image.gif

压测便捷性方面,使用阿里云 PTS 的 MSE 网关压测场景,可以轻松发起对指定网关实例的压测。结合 MSE 云原生网关的限流和可观测能力使用,可以边压测,边观察,边调整限流配置,实现一站式的高可用防护体系建设。

 

5.png

 

安全能力方面,MSE 云原生网关除了集成了 WAF 的功能外,还在插件市场中提供了多种认证和安全防护插件。用户还可以使用多种语言(Golang/JS/Rust/C++等)编写自己的 Wasm 插件,实现自己业务场景下特殊的流量认证和防护逻辑,将异常流量在匹配限流规则之前就提前拦截,避免对正常流量访问产生影响。

 

6.png

 

MSE 云原生网关高可用防护实战

 

点击观看直播回放:

https://yqh.aliyun.com/live/detail/28697

原文链接:http://click.aliyun.com/m/1000349065/ 本文为阿里云原创内容,未经允许不得转载。

标签:网关,场景,流量,防护,限流,大促,MSE
来源: https://www.cnblogs.com/yunqishequ/p/16480520.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有