【51CTO.com原创稿件】就在上周,由51CTO主办的WOTA全球架构与运维技术峰会在北京富力万丽酒店隆重召开。本次WOTA设置了15大前沿热点技术论坛,60+来自Google、LinkedIn、Airbnb、百度、阿里巴巴、腾讯、金山等海内外一线互联网公司的技术大咖带来超过50个历经沉淀的架构实战心得与成功经验分享案例,携手打造历时2天的行业顶级技术盛会。
在第一天下午高可用架构的A会场,新浪微博主站研发负责人侯青龙发表了一场《新时代下的微博LNMP架构》的演讲。演讲结束后,记者采访了侯青龙,他与记者分享了他和新浪微博的技术团队关于新时代下的LNMP架构的一些部署经验,以及在新时代中遇到的一些挑战。此外他还从弹性角度介绍了新浪微博LNMP平台在开发时的思路和收获。
用新的思路规避传统架构弊端
新浪微博作为一个重要的社交平台,经常会遇到一些突发事件,海量转发给服务架构带来极大的考验。传统做法存在一些不足之处,例如传统设备采购申请周期长、扩缩容繁琐、设备运营成本高。当面临流量压力时,常规做法是IT设备会做一部分冗余,但不能无限冗余,毕竟还需要考虑到成本问题。侯青龙以CPU为例,一般情况下,CPU利用率可能在20%~ 30%这个区间,是一种常态,新浪内部有要求,每台服务器CPU要运行到40%左右才不会被认为是闲置。但如果CPU运行到了60%,那技术团队可能就需要考虑扩容。
面对流量压力,还有一个常规做法是服务降级,将那些不是很重要的功能模块依次关闭,保证最主要功能运行无虞。但是这样做的弊端是,在最严重情况下,微博很多模块不再显示,用户体验非常不好。
在这样的情况下,新浪微博的技术团队开始思索如何既降低设备运营成本,又能增强业务的弹性扩容部署。侯青龙告诉记者,最终新浪微博选择了基于混合云平台的PHP弹性扩容部署方案,搭建了DCP平台,既可以实现业务的弹性调度,基础设施又可以跨云操作,非常好地解决了突发流量的问题。