首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >nginx实例 - 如何防止大图片占满带宽?

nginx实例 - 如何防止大图片占满带宽?

作者头像
dys
发布2018-04-03 15:34:22
2.1K0
发布2018-04-03 15:34:22
举报
文章被收录于专栏:性能与架构性能与架构

场景

前几天网站出现了访问缓慢的情况,查看系统资源状况后,发现出网带宽一直是占满的状态 查看服务器日志,发现了很多10M左右的超大图片的请求,这些图片占满了带宽,严重影响了其他的访问请求 正常情况下是应该访问缩放过的小图,一般在100K以内,查找问题和修改程序来不及,需要紧急处理

想到的方法就是对大图的加载进行限速

配置

修改nginx配置文件中图片访问的配置部分 思路:

对于正常小图的访问不限制,把正常图的大小限定为 100K 以内,超出时就进行限速,速度限定为最大 100k/s location ~ .*\.(gif|jpg|jpeg|png|bmp)$ { expires 30d; limit_rate_after 100k; limit_rate 100k; } limit_rate_after 100k; limit_rate 100k; 这两句的意思就是当图片加载了100k以后进行限速,最高 100k

测试

测试服务器带宽为1M,准备了一张3.3M的图片 分别测试限速前后的网络情况,使用网络监控命令进行查看 限速前 访问图片,查看网络流量状态,速度一直保持在 130k/s 左右,正好为1M带宽的满载状态 限速后 访问图片,查看网络流量状态,速度一直保持在 100k/s 左右,说明限速成功

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-02-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 JAVA高性能架构 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
测试服务
测试服务 WeTest 包括标准兼容测试、专家兼容测试、手游安全测试、远程调试等多款产品,服务于海量腾讯精品游戏,涵盖兼容测试、压力测试、性能测试、安全测试、远程调试等多个方向,立体化安全防护体系,保卫您的信息安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档