看了雷布斯的小米机房,我看到了手机机房的“新基建”方向

2020-12-01 10:40:20 浏览数 (1)

导语

  近日雷总在视频号放出的小米手机机房,高端大气上档次,其中谈到了这些关键词:“有1800台手机”,“不间断的运行一个月”“都是自动控制的”。

简单总结下来就是:

手机多    时间长    自动控制

超大的手机机房俨然已经渐渐成为了手机厂商、应用厂商离不开的基础设施。早在2016年,facebook就开始在数据中心搭建Mobile Device Lab,检测应用在新旧手机上的运行情况。

  2016年美国互联网在做的事情,国内厂商一直在持续建设,从近年国内厂商的情况来看,一方面但凡提到适配测试,覆盖市场主流机型TOP100,300,600乃至1000都已经成为“基本操作”,另一方面随着DevOps成为一种趋势,自动化测试则是整个过程不可或缺的存在,而自动化测试需要高质量基础设施来支撑,不然就是空中楼阁,而对于移动APP来说,这个基础设施就是云测试手机机房与平台。

  提到手机机房,很多人可能觉得只要买一堆手机,再买些PC机插上就行了,其实远远不是这样的,就好比数据中心,不是买一堆PC和几个交换机就能达到数据中心效果一样。云测试平台作为移动端”新基建”,需要满足两点要求:手机机房高稳定,平台灵活可扩展。

手机机房高稳定性:一切为了稳定

  作为重要的基础设施,高稳定性是重点指标之一,手机作为消费级产品,各厂家质量不一,规格不一,要保障上万部手机长时间提供稳定测试服务是一个非常有挑战的课题,先上图瞧瞧WeTest机房,单机房节点支持2万部手机,蔚为壮观。

  如此量级的手机机房是如何做到高效稳定运行的呢?下面逐一介绍WeTest的七大实践。

第一:稳定的机房供电,恒定的温度与湿度

  供电与温度听上去好像很简单,其实投入很大,供电要稳定,需要手机机房双路供电,一路是市电,一路是HVDC(高压直流),需要数据中心级别的供电方案。温度和湿度上,电子产品长时间稳定运行对温度要求很高,一般需要在23度左右,普通空调难以胜任,需要数据中心级别的精密空调方案才可以。

第二:稳定的手机供电,解决电池供电不足

  众所周知,手机使用电池供电,而电池随着手机长时间工作,频繁的充电和放电,老化很快,一方面会出现手机充电赶不上放电直接关机停止工作,另一方面可能会出现电池鼓胀甚至爆炸风险,三星Note7的案例还历历在目,所以要让手机稳定工作,保证手机稳定供电是道必须解决的问题,WeTest自行设计专门的硬件用于手机供电,大大降低手机因为供电造成的不稳定因素。

第三:专用电磁屏蔽机柜,降低WIFI信号互相干扰

  手机上运行应用需要WIFI上网,一般家用WIFI设备同时支持10多个终端同时上网可能就会挂掉,WeTest手机机房使用业界最顶级的高密度WIFI设备商,但即使这样还不行,为什么呢?因为手机密度太高,狭小空间内要部署成百上千乃至万台手机,如此多的手机需要很多无线AP设备来支持,而AP设备密集部署再加上周边”别人家的”的WIFI信号,会形成严重的同频干扰,手机WIFI上网会很不稳定,大大影响测试结果,所以部署手机的机柜需要有很好的电磁屏蔽能力,把一定数量的手机和无线AP置于同一个屏蔽机柜内,并与其他屏蔽机柜隔离,并且科学调整柜内AP摆放位置达到最好效果,从而能让WIFI可靠性达到99.9%以上水平。

第四:高带宽高质量的互联网专线

  有了可靠的网络设备,还需要可靠的网络,普通ADSL网络的带宽和稳定性在高并发情况下是没法保证的,另外很多应用对带宽要求都很高,比如视频,直播,语音等多媒体应用,假设600个应用并行测试,每个需要1M/s带宽,总体便需要约5Gbps带宽,还有很多走海外路线的业务需要有国际站点访问能力,WeTest手机机房建设在腾讯数据中心,借助数据中心网络优势,手机机房拥有40Gbps国内互联网专线和15Gbps国际互联网专线支撑,基本可以支持各种业务场景的网络诉求。

第五:自研硬件让手机运维自动化

  数据中心服务器一般都有BMC模块支持服务器监控和自动运维,而手机作为一个消费产品,并没有此项能力,所以传统手机机房都依赖人工现场运维,效率低工作量大,不能很好响应好业务,一旦机房上一定规模后,运维会是个沉重负担,WeTest为了解决这个问题,自研了手机控制器硬件,通过该专门硬件可以自动完成大约95%以上的运维工作,效率提升数十倍以上,今年十一8天长假,在没有现场运维人员的情况,通过远程和自动运维,所有设备均正常工作服务。

第六:专用设备满足不同测试类型

  说到云测试,很多人会想到兼容适配测试,在业务测试中,还有非常大一部分是功能类测试,这类测试通常与具体硬件无关,为了简化测试人员的工作,进一步提升稳定性,WeTest定制了一种特殊的手机,这种手机相当于一块块安卓手机主板,使用直流电源供电,有线网络,而且对安卓系统进行了优化,去除了所有干扰测试的地方,比如各种系统弹窗,此种硬件有接近真机的兼容性保证,又有很好的稳定性和测试友好性,在腾讯内部各BG有非常广泛的应用。

第七:自研硬件扩展上层应用能力

  当前远程云真机业务基本上只可以看可以操作,但是并不能听到声音,也不能说话,对于很多手工测试来说,少了两个重要的测试体验维度,WeTest利用自研硬件设备不仅可以采集手机输出音频,而且当用户开启音频输入后,可以把说话内容通过网络及专用硬件传入到远程手机中,可以利用云端真机测试打视频电话的场景等需要音频交互的场景。

平台灵活可扩展性:快速集成,快速落地

  业务团队为了提升版本质量,缩短版本发布周期,自动化能力是个重要指标,云测试平台作为移动端自动化测试的重要平台,需要满足快速接入与快速执行的要求。

快速接入——支持多种接入机制,满足各种系统对接

  腾讯内部各个BG的业务差别较多,不同BG甚至不同业务团队都有贴合自己产品的测试工具及平台,在移动端自动化方面,会通过WeTest平台来补充自动化执行能力,为此平台提供了丰富的接入方式。

  通过上面4种接入方式,大部业务基本上可以非常快速方便的接入云测试平台。

快速执行——K8S镜像化测试框架部署

  业务为了快速开发自动化测试用例往往都会选择适合自己的测试框架,测试框架或是自研,或是选择开源的,或是基于开源框架做修改整合,还一些可能采购商业的测试工具框架。腾讯内部也是这样,不同业务部门使用的测试框架和环境也很不一样,如何快速支持这些业务呢?见下图:

  WeTest平台将业务的自动化脚本执行托管到K8S集群中,利用K8S的调度机制,为测试任务自动找到最优的任务节点执行测试任务,利用K8S镜像机制,不同测试框架环境,甚至测试逻辑,只需要构建不同的镜像即可快速支持,目前WeTest平台已经支持大部分常见标准测试框架,如腾讯UITrace,Appium,UIAutoamtor,AirTest,XCTest,WebDriverAgent等等,即使当前没有支持的,平台支持一个新的测试框架基本上一天即可以完成,非常快速。

  另外在可靠性上,K8S当某个任务节点故意时,会将任务重新调度到新的可用任务节点上,避免传统PC方案的单点故障。

  WeTest目前已经承载了腾讯内外上万测试项目的正常运行流转,整体测试效率可提升80%。

  国内移动互联网的巨大体量以及形色各异的业务需求造就了国内稳定,灵活的手机机房,腾讯内部手机机房日趋统一化,规模效应带来边际成本的显著降低,边际成本的降低则可以更好的实现云测试服务的向外输出与开放。这也正是手机机房作为“新基建”的意义所在。

关于腾讯WeTest

腾讯WeTest是由腾讯官方推出的一站式品质开放平台。十余年品质管理经验,致力于质量标准建设、产品质量提升。腾讯WeTest为移动开发者提供兼容性测试、云真机、性能测试、安全防护、企鹅风讯(舆情分析)等优秀研发工具,为百余行业提供解决方案,覆盖产品在研发、运营各阶段的测试需求,历经千款产品磨砺。金牌专家团队,通过5大维度,41项指标,360度保障您的产品质量。点击阅读原文了解更多内容。

0 人点赞