触控科技萧田国:国内云计算平台性能评测及选型建议云和虚拟化
2015年1月7-9日,第九届中国IDC产业年度大典(IDCC2014)在北京国家会议中心隆重举行。本次大会由工信部通信发展司、中国信息通信研究院(工信部电信研究院)、云计算发展与政策论坛、数据中心联盟指导,中国IDC产业年度大典组委会主办,中国IDC圈承办,作为国内IDC行业规模最大、最具权威性和影响力的盛会,此次大会再创辉煌,三天的会议参会人数超过8000人次。
从1月7日到9日连续三天,工信部相关领导、IDC企业、电信运营商、互联网企业、设备厂商等各行业精英齐聚一堂,以"大变革 新生态"为主题煮酒论道。其中触控科技运维总监萧田国应邀出席本次大会并发表了"国内云计算平台性能评测及选型建议"的演讲。
触控科技运维总监萧田国
以下为萧田国演讲部分实录:
萧田国:各位好,我们触控是属于游戏行业的,有很多做云计算的公司都想谈合作。我在想国内云这么多到底该如何选择呢?,于是我们做了一个自动化测试工具,对国内八大云做了一个全面的长时间的测试,在此有机会为大家做一个分享。
可能对于我们公司触控,有很多人都还是不太熟悉,但是游戏捕鱼达人有很多人有了解过,目前捕鱼达人已经是3D捕鱼了,其实触控不仅仅是一家游戏公司,我们目前有游戏开发引擎Cocos2d-x,在全球和中国的市场占有率都是第一。
那么在我去思考要做这样一个比较全面的云的测试的时候,我所要想的事情,第一个我怎么测?我的测试方法是什么?第二个我要去测哪些指标?我们最后选择的对象有两个,第一个是虚拟机,第二个是RDS,就是数据库的PaaS产品。所有的测试都基于这两个,当然其实我对各大云厂商网络的性能,功能方面我做了很多调研,但是这里面在今天演讲过程当中我先不讲。
八大云中排序是按字母序,包括阿里云、AWS,金山云、青云,还有SpeedyCloud(讯达云)、腾讯云、Ucloud、还有Windows Azure.我们将这些做测试,到时候给大家做一些测试的结果分享。
我们当时的考量是这样的,首先要测哪些指标?第一个要测单项指标CPU,然后跟这个CPU相关的包括线程、互斥锁,另外内存也做了测试。但是我们发现决定整机性能,一定是三类资源的整合,所以说我最后我用一个叫TPM的指标,以测试云主机的整体性能。TPM是指每分钟完成的事务数,事务在一个完成的过程中一定会需要CPU、内存、磁盘。我们用工具TPCC-MySQL,用它去把TPM值测出来。
我们这里面测试一个是虚机,一个是RDS.我在选择测试工具的时候是有考量的,因为我们知道在所有的业务应用中最复杂,最耗资源的一定是数据库应用。我们测试分为两种,一种是对虚机的测试,它的测试方法是这样的,这个工具在使用之前,我们需要在这个虚机上头先搭建一个MySQL,这是一个压力测试工具,它再去发起很多并发请求。刚好TPCC-MySQL这个机制,也可以用来测试RDS.
我们来看一下这边,这是一个整体的测试结果,这个图叫做堆积图,每一个云能够看到的长度是它的得分。我们来举个例子,首先我们看最底下棕黄色的云,它的虚拟机整机性能是非常好的,为什么?它提供了很高很好的磁盘IO,这样撑起了虚拟机的整机性能。上面这个云也很有特点,虚机性能一般,但是它的RDS性能很好,为什么?一定是这个云针对RDS产品做了很多单独的优化。因为我们知道单纯的,如果说你只是一个虚机,然后用它做RDS,那么它一会损耗,对不对?但是它是要偏高的。我们看到黄颜色的云什么特点?它用一个很小的磁盘IO,获得了一个比较好的虚机的整机性能。意味着什么?意味着磁盘IO并不是决定云主机整机性能的唯一指标?对吧。
刚刚我们这边看到的只是一个整机性能,底下还有一个,我们对各大云做了多轮测试,这是测试的稳定性,每轮两百次,每次测十分钟,休十分钟这样的。我们第一个指标是它的IOPS,在IOPS表现上头,这里面看得出来很多云提供的IOPS实际上是偏低的。而且还有的云IOPS可能会波动,它随着测试次数的增加,可能有一个变化,但是这个云,我跟他们的老大有过一个交流,他们的策略是这样的,他们并不会真正限制你最高的IOPS值,实际上它不给你做限制,这个时候基本上,宿主机越空闲,你能够使用到的IOPS越多。而且这里面我们看到,它的值实际上比很多云还是要高很多,只不过图有些不好看而已,这是不同云厂商策略的问题。
CPU线程处理能力,我们看这有一家很低。另外就是这里面的内存性能差不多的。我们看看这里面还有云主机整机性能的稳定性,TpmC的性能,有些云是一个心跳图,这样你会很难受。而且我们看到有一些云随着测试的深入,它的性能会急剧下降,或者说它的斜率很抖,当然也有一个云始终如一。
还有这张图是说RDS的整机性能,我们对RDS这个测试非常多,我们这里面拿一个总图给大家看,因为没有时间。有一些云的性能时好时不好的,然后我们看到还有一些云一开始的时候很好,慢慢的晚节不保了。
那么问题来了,哪家强?应该说各有特色:具体而言阿里云是对RDS的理解最深刻,AWS CN性能很稳定,金山云云主机整机性能很好,青云综合性能不错,功能和UI做的很好。讯达云整机性能也是比较好的,IOPS不错而且稳定,腾讯云RDS算是性能很好的了。Ucloud综合性能不错,特点是经受了大型游戏的验证,还有Azure,如果是Windows的重度用户,那Azure是首选。所有内容仅代表个人观点,和不代表所属公司立场。谢谢。
但是我看到的是,当我跟很多厂商去对接,去发他们单独的详细的更加全面的测试报告的时候,每个人的心态都很开放,大家是锐意进取心。大家基本都告诉,我们新产品准备上线了,可以邀请你成为我们第一批用户,所以第二轮测试正在进行中。
但是路还非常长,根据我的理解,目前国内云计算平台是属于初级阶段,离终点差很远,可能有时候遇到闪电、乌云密布,也不是平坦的。我的测试还会持续的做。
国内的云这么多,我们有没有给大家一个选型建议?还是有的。首先看想自己做私有云还是去买公有云,或者混合云?这个事情要想好。另外它有多大规模和多少成功案例?这个需要考虑,还有IDC机房。我们知道国内做云的这些,大多不是IDC厂商起家的。另外网络,你要做测试,性能怎么样?稳定性怎么样?要去测。还有功能全不全?服务怎么样?需求能不能快速响应?我们都需要考虑。
具体而言在云主机选择上头一个问题,IOPS是否是唯一的考量?不是。而且要知道买多贵的IOPS跟价格有关,要选择适合你的。另外你侧重性能还是稳定性?有一些云不会把IOPS限死,我们自己需要做一个测试。我们到底用不用RDS?目前各大云厂商RDS的实现各有千秋,这里头的重要所在,就是要选择合适的IOPS,IOPS越高成本越贵,最后也得选择合适的数据库模板。两个意思,一个是数据库版本号,另外,是选择原生的数据库,还是分支?在我们测试过程当中发现不同版本测出来Tpmc整机性能比较大。建议选高一些稳定的版本。
我的演讲结束,谢谢大家。