鹿晗和关晓彤是如何联手搞垮新浪微博服务器的?(4)
如何快速提高系统性能?回顾一下,究竟是多大的流量使得曾豪言“微博服务器稳定,能同时应付三对劈腿的”壮志秒破功,具体数据如下图所示: 按照微博明星势力榜各个榜单计分方式:满分 100 分,由阅读数、互动数、社会影响力、爱慕值四项组成,所占比例分别为30%、30%、20%、20%。 由上可以看出,鹿晗所发微博的每一项都达到了峰值,那么在如此高流量的情况之下,作为开发者是否有好的方法来快速提高系统性能呢?就鹿晗宣布恋情导致微博宕机事件浅谈大型网站高可用性架构。 作为一名程序员,我更感兴趣的是微博如何应对瞬时涌来的高并发大流量。从很久很久以前文章马伊琍的 “周一见”,到后来 “出轨队”、“吸毒队” 的争相夺分,再到前段时间的郭敬明事件、薛之谦事件,再到今天的鹿晗宣布恋情...... 微博看似每次都在挂,一直都没有进步,大家每次遇到热点事件刷不出内容的时候都会吐槽微博的应用平台很辣鸡。但是呢,微博的后台系统肯定一直在重构升级优化,我觉得能够做到今天这种水平已经很不错了。 01 从用户的角度(主要是我的角度 hhhhh)来看 遇到热点事件的时候微博大概率在短时间内(大约 10~15)可能会完全刷不出内容,过了一段时间之后(大约半小时)进行间隔刷新(间隔 10 秒左右),有可能某些时候会看到 5xx 的 error,5 开头的 http 状态码代表服务器或者是网关存在问题。 比如说服务器拒绝连接、网关超时或者是应用代码存在 Bug 等都会导致 5xx 的错误。在热点事件发生 1 小时内,系统应该可以恢复正常的服务。 02 从网站开发、运维人员的角度来看 运维:卧槽?怎么访问流量这么高?是出啥 Bug 了吗?卧槽!不会是又有人出轨吸毒了吧?emmmm.... 我的国庆假期可还没结束啊! 运维:兄弟们,快醒醒!快加机器啊!系统要崩了! 开发:别催!再催自杀! leader:测试在扩容之后赶紧拉出来测测! 测试:人在家中躺,锅从天上来! (编辑:ASP站长网) |