满园尽是503,记曾经的一次IIS 7性能考验
在一个漆黑的夜晚,伸手不见五指,一个黑衣人偷偷潜入博客园的图片库,放了一些图片,然后迅速消失在黑幕中...
在人山人海的淘宝网,也出现了一个黑衣人,在淘宝网的产品库中,将一些产品展示页面中的素材图片指向了博客园图片库中的图片...
史上最强的一次风暴席卷整个博客园,巨量的访问请求涌向博客园,访问速度越来越慢,然后就是“满园尽是503”。
IIS 7的同时连接达到了设置的上限20000,上限改为3万,同时连接立即达到3万,改为5万,同时连接立即会达到3万...
开始以为是拒绝服务攻击(DDOS),后来发现是“黑衣人”上传的图片,淘宝网上很多页面引用了这些图片...
找到了原因,原以为可以轻松地解决问题,将这些图片移走就会风平浪静,雨过天晴。哪知,图片不在,503依旧...
这样都不行,几乎让人崩溃了。图片请求是由IIS7的StaticFileModule(位于%windir%\System32\inetsrv\static.dll)处理的,虽然图片不存在,但对于这么大的请求,IIS 7仅仅是接受请求,检查文件是否存在,然后返回404这样的处理都顶不住。只要淘宝上的图片引用存在,503将一直继续,难道只有联系淘宝处理这些图片引用。即使淘宝处理了图片引用,但以后只要谁在访问量大的网站放一个不存在的指向博客园的链接,IIS还是处理不了。根本的解决办法还是要能应对这样的巨量请求。
这时,博客园团队中有一个人急中生智,说试试通过ISAPI_Rewrite对图片请求进行重定向。当时想连微软自己的IIS7都处理不了,难道由第三方写的ISAPI Filter能处理。不管怎么样,试试这个方法吧。不试不知道,试了吓一跳,在ISAPI_Rewrite的http.ini中写了重定向规则(重定向至淘宝网站)之后,奇迹出现了,问题解决了。
好了,这篇随笔目的就是把博客园实际遇到过的一个问题与大家分享,希望能给大家带来一点收获与思考。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· spring官宣接入deepseek,真的太香了~
2008-06-13 2008博客园T恤正式发布
2007-06-13 回到了扬州