Micky
2013-01-19 10:18:50 +08:00
我还以为是因为这个:
全球最大的社交编程及代码托管网站GitHub在1月15日晚间疑似遭遇DDOS攻击,访问大幅减慢。管理员通过日志查询,发现导致网站速度减慢是由于访问数量一时激增。而这些访问竟来自于中国的“12306抢票插件”。春运购票的难题已经不单单是中国一国之问题,其影响已经波及海外。因抢票插件带来的“洪水般的访问请求”已经让全球最大的代码托管站GitHub不堪重负。
“12306订票助手”的开发者iccfish(木鱼)在GitHub上解释:他引用了托管在Github(美国代码托管站)上的Javascript代码,不同浏览器又使用了该插件,导致大量请求涌向Github,最终拖慢了服务器。
GitHub有个未知安全检测,当访问比较频繁的时候,会直接返回403错误。开发者就加了一条规则:如果返回的是403,就每5秒重试一次,并且是永久重试。结果GitHub认为用户访问更频繁了,于是一直返回403,最后成了死循环。但开发者显然低估了抢票插件的用户数,于是这两项条件结合就正好构成了DDOS(Distributed Denial of Service,分布式拒绝服务)的定义。
“12306订票助手”开发者最终决定,15日晚间将服务迁移到某新平台上,目前GitHub也已经恢复。SAE工作人员已与开发者取得联系,并给出了优化建议,截至目前运行正常。
这个故事提醒我们:永远不要低估“春运”这款产品的用户数,不仅国产的“12306”网站无法负荷重担,就连海外的GitHub也能被拖垮。有人调侃,这只是中国网民帮GitHub做的一次压力测试。