# 《Seckill秒杀系统》第81章:秒杀系统整合Sentinel实现流控
作者:冰河
星球:http://m6z.cn/6aeFbs (opens new window)
博客:https://binghe.gitcode.host (opens new window)
文章汇总:https://binghe.gitcode.host/md/all/all.html (opens new window)
源码获取地址:https://t.zsxq.com/0dhvFs5oR (opens new window)
沉淀,成长,突破,帮助他人,成就自我。
- 本章难度:★★☆☆☆
- 本章重点:掌握在秒杀系统中基于Nacos整合Sentinel的方法,重点理解Sentinel实现流控的核心原理,并能够将Sentinel灵活应用到自身实际项目中。
大家好,我是冰河~~
虽然秒杀系统是专门为应对瞬时高并发、大流量场景而涉及的系统,但是秒杀系统承载的流量也不是无限的,也会存在上限,所以,需要对进入秒杀系统的流量进行管控,不能让所有流量不加刷选和鉴别的流入秒杀系统。否则,可能会给秒杀系统带来灾难性的后果。
# 一、前言
Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。Sentinel成功经受住了互联网大厂高并发场景的考验,所以,我们研发的秒杀系统中,采用了Sentinel进行流控。
# 二、本章诉求
整合Nacos与Sentinel,使秒杀系统启动时能够自动读取Nacos中的配置,在秒杀系统中引入Sentinel相关的依赖,并且整合Sentinel后,实现对接口流量的管控。
# 三、配置Nacos
本章,旨在通过Sentinel读取Nacos中的配置来实现流控规则,在秒杀系统中整合Sentinel之前,先在Nacos中添加一些Sentinel的配置。
# 3.1 添加命名空间
在Nacos中,添加命名空间的步骤如下所示。
(1)在浏览器打开Nacos界面,登录后,在找到命名空间,如图81-1所示。
(2)按照图81-2所示添加命名空间后,点击确定按钮即可。
# 3.2 添加Sentinel配置
在Nacos中添加Sentinel的步骤如下所示。
(1)在Nacos中打开配置列表页面,如图81-3所示。
这里注意的是,在配置列表中要切换到sentinel-config命名空间。点击右上角的 + 添加Sentinel配置。
(2)按照图81-4所示添加Sentinel流控配置。
# 查看完整文章
加入冰河技术 (opens new window)知识星球,解锁完整技术文章与完整代码