当前位置: 首页 > article >正文

微服务限流实战:Nginx 漏桶与网关令牌桶

限流不是为了让系统“变慢”而是为了让系统在突发流量、恶意请求或超过承载能力时仍然能保住核心服务。一句话概括限流是在入口处控制请求速度或并发数量Nginx 常用漏桶算法控制请求流出速率Spring Cloud Gateway 常用令牌桶算法决定请求是否允许通过。外部请求入口限流Tomcat最大连接数Nginx漏桶限速Nginx连接数限制Gateway令牌桶限流自定义拦截器请求按固定速率进入后端拿到令牌才允许通过为什么要限流项目中做限流一般有两个原因业务确实有突发流量比如优惠券抢购平时 QPS 只有 10 到 50活动时瞬间到 2000。防止恶意刷接口比如登录、短信、下单、支付等接口被频繁请求。面试回答时最好带具体业务场景不要只说“为了保护系统”。Nginx 漏桶限流漏桶算法可以想成一个桶请求像水一样进入桶。桶按固定速率漏水。后端按固定速率处理请求。桶满后多余请求等待或被丢弃。未满已满突发请求进入漏桶缓存请求桶是否已满请求进入桶中等待请求被拒绝或延迟按固定速率漏出后端服务稳定处理Nginx 常见配置思路limit_req_zone $binary_remote_addr zoneperip:10m rate10r/s; location /api/ { limit_req zoneperip burst20 nodelay; }几个参数要能说清楚参数含义key限流对象比如客户端 IPzone共享存储区用来保存访问状态rate最大访问速率比如10r/sburst突发请求容量相当于桶大小nodelay不排队等待尽快处理或拒绝rate、burst、nodelay怎么直观理解假设配置是limit_req_zone $binary_remote_addr zoneperip:10m rate10r/s; location /api/ { limit_req zoneperip burst20 nodelay; }可以这样理解rate10r/s稳定情况下每秒最多按 10 个请求的速度处理。burst20允许额外暂存 20 个突发请求。没有nodelay突发请求会排队按 10r/s 慢慢放行。有nodelay突发请求不排队等待会尽快处理超过burst的请求直接被限流。否是瞬间进来 35 个请求10 个按速率正常处理20 个进入 burst 突发容量是否配置 nodelay排队等待按固定速率放行尽快处理突发请求超过容量的 5 个请求被拒绝或返回限流响应这个例子比单纯背参数更好用。面试时只要说出“稳定速率 突发容量 是否排队”就基本讲清楚了。Nginx 并发连接数限制除了控制请求速率Nginx 也能限制连接数limit_conn perip 20; limit_conn perserver 100;含义perip 20单个 IP 最多同时保持 20 个连接。perserver 100当前虚拟主机最多处理 100 个并发连接。速率限制解决“请求来得太快”连接数限制解决“连接占用太多”。Gateway 令牌桶限流令牌桶算法的逻辑和漏桶不一样系统按固定速率生成令牌。令牌放入令牌桶。桶满后暂停生成。请求必须先拿到令牌。没有令牌的请求会被阻塞或拒绝。是否令牌生成器按固定速率生成令牌令牌桶请求进入网关是否拿到令牌请求放行请求被限流Spring Cloud Gateway 可以通过RequestRateLimiter做局部过滤器限流参数含义key-resolver定义限流对象比如 IP、路径、用户 IDreplenishRate每秒填充令牌的平均速率burstCapacity令牌桶总容量漏桶和令牌桶怎么选对比点漏桶算法令牌桶算法核心思想请求按固定速率流出拿到令牌才放行突发流量更平滑削峰明显支持一定突发能力常见位置NginxGateway适合场景控制后端稳定处理速率允许短时间突发但限制总体速率面试回答模板可以这样答我们项目在活动接口上做过限流。平时 QPS 大概几十活动高峰可能到 2000为了防止突发流量打垮系统在入口层做了限流。Nginx 侧用漏桶算法控制请求速率让请求以固定速率进入后端也可以限制单 IP 连接数。网关侧可以使用 Spring Cloud Gateway 的RequestRateLimiter底层是令牌桶算法通过key-resolver指定限流对象比如 IP 或路径通过replenishRate和burstCapacity控制令牌生成速率和桶容量。小结限流要讲业务背景也要讲算法差异漏桶更强调平滑流出令牌桶更强调拿令牌放行并允许一定突发。项目回答里带上 QPS、限流位置和参数比只背算法更像真实经验。

相关文章:

微服务限流实战:Nginx 漏桶与网关令牌桶

限流不是为了让系统“变慢”,而是为了让系统在突发流量、恶意请求或超过承载能力时,仍然能保住核心服务。 一句话概括:限流是在入口处控制请求速度或并发数量,Nginx 常用漏桶算法控制请求流出速率,Spring Cloud Gatewa…...

5分钟搞定TikTok数据采集:DouK-Downloader终极批量下载神器

5分钟搞定TikTok数据采集:DouK-Downloader终极批量下载神器 【免费下载链接】TikTokDownloader TikTok 发布/喜欢/合辑/直播/视频/图集/音乐;抖音发布/喜欢/收藏/收藏夹/视频/图集/实况/直播/音乐/合集/评论/账号/搜索/热榜数据采集工具/下载工具 项目…...

充电桩行业转型:从规模竞争到质量竞争,CCC认证锚定新赛道

过去五年,中国充电桩行业的核心叙事只有一个字:铺。谁能更快拿点位,谁能更快建站,谁能更快完成城市、县域、高速、社区的覆盖,谁就有资格坐上牌桌。功率数字不断攀升,铺设数量不断刷新,市场份额…...

Honey Select 2终极增强补丁:5分钟解锁完整汉化与去码功能

Honey Select 2终极增强补丁:5分钟解锁完整汉化与去码功能 【免费下载链接】HS2-HF_Patch Automatically translate, uncensor and update HoneySelect2! 项目地址: https://gitcode.com/gh_mirrors/hs/HS2-HF_Patch HS2-HF_Patch是《Honey Select 2》游戏的…...

Dark Reader动态主题修复终极指南:自动化解决网站适配难题

Dark Reader动态主题修复终极指南:自动化解决网站适配难题 【免费下载链接】darkreader Dark Reader Chrome and Firefox extension 项目地址: https://gitcode.com/gh_mirrors/da/darkreader Dark Reader是一款广受欢迎的浏览器扩展,能帮助你将任…...

3步实现聊天记录永久保存:WeChatExporter全平台导出指南

3步实现聊天记录永久保存:WeChatExporter全平台导出指南 【免费下载链接】WeChatExporter 一个可以快速导出、查看你的微信聊天记录的工具 项目地址: https://gitcode.com/gh_mirrors/wec/WeChatExporter 你是否曾因误删重要微信聊天记录而懊悔不已&#xff…...

跨越平台壁垒:gibMacOS如何让非Mac设备直接获取官方macOS安装文件

跨越平台壁垒:gibMacOS如何让非Mac设备直接获取官方macOS安装文件 【免费下载链接】gibMacOS Py2/py3 script that can download macOS components direct from Apple 项目地址: https://gitcode.com/gh_mirrors/gi/gibMacOS 在当今多平台开发与测试的复杂环…...

从零打造高效社区:BBS-Go现代化开源论坛完整解决方案

从零打造高效社区:BBS-Go现代化开源论坛完整解决方案 【免费下载链接】bbs-go A lightweight community and Q&A platform for forums, knowledge bases, and discussions. 项目地址: https://gitcode.com/gh_mirrors/bb/bbs-go 你是否曾为团队内部沟通不…...

农业Agent不是“加个模型”,而是重写作业流程:3张架构图讲透农机调度、病虫害预警、供应链匹配的Agent协同范式

更多请点击: https://intelliparadigm.com 第一章:农业Agent不是“加个模型”,而是重写作业流程:3张架构图讲透农机调度、病虫害预警、供应链匹配的Agent协同范式 农业智能化的真正瓶颈,从来不在单点AI能力的强弱&…...

Google I/O 2026 全解析:从 Gemini 3.5 到 AI 智能体,一文看懂谷歌的 AI 全景布局

摘要: Google I/O 2026 盛大开幕,官方正式发布了 Gemini 3.5 Flash、Antigravity 2.0、Gemini Spark 个人智能体、全新 AI 搜索范式以及智能音频眼镜等一系列颠覆性技术。本文将为你全面梳理本次大会的核心干货,透视谷歌在智能体时代的全新战…...

3分钟搞定3D视频转2D:终极免费工具让普通设备也能体验VR沉浸感

3分钟搞定3D视频转2D:终极免费工具让普通设备也能体验VR沉浸感 【免费下载链接】VR-reversal VR-Reversal - Player for conversion of 3D video to 2D with optional saving of head tracking data and rendering out of 2D copies. 项目地址: https://gitcode.c…...

【健身SaaS厂商紧急预警】:AI Agent接入后用户留存率提升41%的关键3个埋点逻辑

更多请点击: https://kaifayun.com 第一章:AI Agent健身行业应用的范式迁移与价值重定义 传统健身服务长期受限于人力密度、响应延迟与个性化瓶颈,而AI Agent的深度介入正推动行业从“标准化课程交付”跃迁至“持续演化的健康共生体”。这一…...

告别抢票焦虑:大麦网双端自动抢票系统深度解析与实战指南

告别抢票焦虑:大麦网双端自动抢票系统深度解析与实战指南 【免费下载链接】ticket-purchase 大麦自动抢票,支持人员、城市、日期场次、价格选择 项目地址: https://gitcode.com/GitHub_Trending/ti/ticket-purchase 你是否曾在心仪演出的开票瞬间…...

Source Han Serif CN:7款开源字体打造完美中文排版体验

Source Han Serif CN:7款开源字体打造完美中文排版体验 【免费下载链接】source-han-serif-ttf Source Han Serif TTF 项目地址: https://gitcode.com/gh_mirrors/so/source-han-serif-ttf 在数字内容创作日益普及的今天,你是否曾为寻找一款既美观…...

AI Agent客服已过概念期——2024Q2行业渗透率突增至41.6%,但仅7.3%企业实现L3级自主决策闭环(附自评诊断表)

更多请点击: https://kaifayun.com 第一章:AI Agent客服已过概念期——2024Q2行业渗透率突增至41.6%,但仅7.3%企业实现L3级自主决策闭环(附自评诊断表) AI Agent客服正经历从技术验证到规模化落地的关键跃迁。据IDC联…...

基于随机森林的加州房价二分类实验

一、加州房价数据集介绍 本实验使用模拟加州房价数据集完成随机森林二分类任务,通过构建房屋特征与房价等级的映射关系,实现房价高低二分类预测,掌握随机森林集成学习算法、模型评估、特征重要性分析与参数调优方法。 数据集简介 数据集名称&…...

Excel MCP Server终极指南:无Excel环境下的数据操作革命

Excel MCP Server终极指南:无Excel环境下的数据操作革命 【免费下载链接】excel-mcp-server A Model Context Protocol server for Excel file manipulation 项目地址: https://gitcode.com/gh_mirrors/ex/excel-mcp-server 还在为Excel授权费用和安装繁琐而…...

戴森球计划蓝图库:5000+工厂设计方案助你快速建造星际帝国

戴森球计划蓝图库:5000工厂设计方案助你快速建造星际帝国 【免费下载链接】FactoryBluePrints 游戏戴森球计划的**工厂**蓝图仓库 项目地址: https://gitcode.com/GitHub_Trending/fa/FactoryBluePrints 在《戴森球计划》这款复杂的工厂建造游戏中&#xff0…...

CharacterAI Python API终极指南:如何快速构建AI对话机器人

CharacterAI Python API终极指南:如何快速构建AI对话机器人 【免费下载链接】CharacterAI Unofficial Python API for character.ai 项目地址: https://gitcode.com/gh_mirrors/ch/CharacterAI 你是否想在自己的Python应用中集成CharacterAI的强大对话功能&a…...

Python字节码反编译技术深度解析:pycdc项目的架构实现与实战应用

Python字节码反编译技术深度解析:pycdc项目的架构实现与实战应用 【免费下载链接】pycdc C python bytecode disassembler and decompiler 项目地址: https://gitcode.com/GitHub_Trending/py/pycdc 在Python生态系统中,字节码反编译技术一直是系…...

从分钟到秒级:我们用 Fluss + Paimon 替换掉 Kafka + Iceberg,实时宽表终于不用 Flink 死扛了

从分钟到秒级:我们用 Fluss Paimon 替换掉 Kafka Iceberg,实时宽表终于不用 Flink 死扛了 📅 更新于 2026-05-21 | 🏷️ Fluss Paimon 湖流一体 实时数仓 架构升级 摘要:上一代湖仓一体架构中,Kafka …...

3步快速上手:Windows安卓应用安装器的终极指南

3步快速上手:Windows安卓应用安装器的终极指南 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否曾想在Windows电脑上直接运行安卓应用?告别…...

显卡怎么越来越贵?聊聊GPU算力背后那些事

老实说,我也难以确切记起,究竟是自哪一日起始,电脑显卡的价格便如同乘坐了火箭那般。 可能就连楼下从事修电脑工作的陈师傅都未曾想到,在过去几年的时候,还能够运用“甜品卡”这个词汇去夸赞一张显卡在性价比方面较高&…...

工业AI数字孪生技术:工业制造的虚拟革命 数字孪生(Digital Twin)通过实时数据采集、三维建模和AI仿真,为物理设备创建动态虚拟副本,实现工业全生命周期的监控与优化的方案

CSDN标签: 数字孪生 Digital Twin 工业AI 虚拟仿真 Unity3D BIM 引言:当工厂有了自己的"虚拟分身" 想象一下,如果你有一个和你一模一样的"克隆体"——它知道你的心跳、呼吸、每一个动作,甚至能预测你下一秒会…...

好用只是入场券,敢用才是护城河:企业级Agent如何进入真实业务

好用只是入场券 2026 年,小龙虾、OpenClaw、Hermes 等 Agent 产品接连出圈之后,很多企业开始重新审视一件事:AI 不再只是一个回答问题的工具,它正在变成可以接任务、调系统、走流程的数字执行单元。 这件事在演示里通常很顺。 一句…...

戴森球计划工厂蓝图仓库技术架构深度探索

戴森球计划工厂蓝图仓库技术架构深度探索 【免费下载链接】FactoryBluePrints 游戏戴森球计划的**工厂**蓝图仓库 项目地址: https://gitcode.com/GitHub_Trending/fa/FactoryBluePrints 在《戴森球计划》这款深受玩家喜爱的自动化工厂建造游戏中,工厂蓝图的…...

Lamini:5分钟快速搭建专属AI模型的高效Python客户端

Lamini:5分钟快速搭建专属AI模型的高效Python客户端 【免费下载链接】lamini The Official Python Client for Laminis API 项目地址: https://gitcode.com/gh_mirrors/la/lamini Lamini作为一款革命性的AI开发平台,为技术开发者和AI爱好者提供了…...

基于qstock的北向资金量化分析框架构建与策略应用

基于qstock的北向资金量化分析框架构建与策略应用 【免费下载链接】qstock qstock由“Python金融量化”公众号开发,试图打造成个人量化投研分析包,目前包括数据获取(data)、可视化(plot)、选股(stock)和量化回测(策略b…...

MatterGen完整指南:如何用AI在5分钟内生成高性能无机材料

MatterGen完整指南:如何用AI在5分钟内生成高性能无机材料 【免费下载链接】mattergen Official implementation of MatterGen -- a generative model for inorganic materials design across the periodic table that can be fine-tuned to steer the generation to…...

【能力进阶】测试工程师必须了解的 Tokenization(分词器)避坑指南

写作日期:2026年5月 适用读者:后端/算法测试工程师、AI产品测试、LLM应用QA 1 为什么测试工程师必须关注分词器? 2 竞品对比:同一句话,不同模型差出一个量级 2.1 「中文税」到底有多重 2.2 各模型中文分词效...