【猎云网(微信:ilieyun)北京】1月21日报道(文/王艺多)
“建设一家大型的直播平台充满了技术挑战。毫不夸张的说,直播平台囊括了几乎所有的主流互联网技术:Web站点、App客户端、音视频编解码、即时聊天、充值付费、送礼消费、社交互动、直播点播、卫星接收、实时互动……相比传统网站应用,直播平台还具有极高的实时性和突发性的特点,对技术故障的敏感度极高。种种问题无疑对平台建设的研发团队提出了更高的技术要求。『要盖多高的大厦,就要有多坚实的基石』。全民直播选择在阿里云上建设全新的3.0业务系统,正印证了这句话的价值。”
——全民直播CTO张云龙
在视频直播竞争如火如荼的2015年,作为后起之秀的全民直播,尽管其在2015年底才正式上线,但发展速度却并不慢。2016年9月,全民直播斥3亿并购手印直播,完成生态升级后,获A轮5亿元人民币融资。
公司CTO张云龙告诉猎云网(微信:ilieyun)编辑,除游戏直播外,全民直播还包括全民星秀、全民户外等板块。例如马布里直播自己的日常训练;去年5月,宋丹丹与巴图在全民直播亮相,观看人数突破百万。可以说,借助多元化内容,全民直播实现了用户量的几何级增长。
但激增的访问量也给产品服务器的响应速度、存储容量等提出了更高的要求。直播作为新兴行业,其背后所承载的技术支持是产品功能实现的前提。事实上,全民直播为了给用户“看不卡、聊不挂”的极致体验,从稳定性、安全性、拓展能力等多个维度进行考量,最终牵手阿里云,联合打造横竖屏双生态融合全民直播3.0版本。
用户体验优先,毅然进行架构迁移
“直播产品最可怕的问题就是平台瘫痪,表现为用户无法正常观看甚至无法登陆。这很大原因来自数据库。如果数据库链接异常(例如链接数过多导致)必然影响业务。有时一些恶意攻击、接口性能差、没做限流,都会导致数据库问题。而这些问题都和直播产品的基础架构有关。”张云龙直言。
为了支撑更多用户访问量,保证用户的观看体验,今年1月,全民直播的Web与App都上线了3.0版本。与旧版本相比,新版本的服务端从之前的腾讯云平台迁移到了阿里云平台,采用阿里云整套的服务体系和产品架构,系统架构模型也从MVC升级为微服务架构。
参与该项目的阿里云架构师张强介绍,目前,全民直播采用阿里云负载均衡+专有网络VPC+云服务器ECS+弹性伸缩的弹性架构,能够快速线性扩展系统处理能力(通过动态增加负载均衡、云服务器ECS等节点服务器实现)。
张强表示,这种架构提升了全民直播现有的运维能力,为快速提高全站用户量提供了技术支持。升级完成后,全民直播系统的访问性能得到了明显的提升,系统峰值处理能力从同时在线人数几十万人提升到百万量级。
另外,阿里云的弹性伸缩服务也给全民直播提供了较高的系统性价比。据了解,在以前的云平台,全民直播在重要赛事节点要提前一周左右预估峰值用户量,并自行联系云厂商预留带宽和服务器资源。但现在,阿里云弹性伸缩能根据流量自动进行资源扩容和释放,并且节点服务器采用按量付费模式,节省直播平台的长期支出费用。
稳定性与深度服务是云计算的重心
猎云网注意到,实际上全民直播此前就已经选择了其他云平台的服务,但此后进行了迁移。对于为何最终选择阿里云的服务这个问题,张云龙表示,云计算作为直播平台的基础服务,需要选择成熟度更高的产品。
比如阿里云提供大数据服务的数加平台,省去了业务方很多开发维护的成本,从数据接收和清洗,再到查询和计算进行链接存储,以及最终的数据展现,整个服务链条都是打通的,提供了完整的解决方案,让业务方省时省事省心。
除了产品本身的成熟稳定之外,在数据迁移过程中,阿里云的服务也给张云龙留下了深刻印象。阿里云和全民的同事一起通宵奋战,干劲十足,为全民平台量身打造了基础运维体系,还在发布前的关键时刻帮忙解决负载均衡方面的重大性能问题。
“在评估和提升全系统并发处理能力的工作中,阿里云团队和全民直播一起做了多次模块压测和系统级全链路压测。在压测期间,我们发现经过负载均衡四层转发到NGINX ECS服务器集群时,集群中每台ECS服务器编号为CPU0的CPU占用率很高。经过和全民直播一起评估后,确定向该NGINX服务器集群中新增一组ECS服务器实现集群处理能力的横向扩展提升,快速解决了这个性能瓶颈。”阿里云架构师张强补充道。
“云服务的稳定程度,云产品的完善程度,云生态的丰富程度,是我们考量云平台的重要依据。对于高速发展的直播业务来说,需要面对诸多挑战,前方业务冲锋陷阵,后方基础服务绝对不能起火拖后腿。选择阿里云,感受到其背后强大的技术实力和真诚的服务态度,无疑让我们多了一份踏实。”张云龙说。