在2020年初之际,国内专业的云资源选型服务平台CloudBest旗下监测实验室,针对业界4家主流的云服务提供商,包括阿里云、腾讯云、UCloud与华为云进行了横向评测。本次测试在尽量保证测试环境相同的情况下,提供客观公正的测试数据,从技术层面对云服务提供商提供的云主机产品进行性能(CPU、磁盘、网络等)与性价比评测。以下为CloudBest监测实验室详细测试报告:
一、测试方法
1)云主机性能共进行3次测试,其中所有的云主机均为新购主机,每完成一次测试空跑8小时以上再进行下一次测试,最终取3次测试的平均值。
2)内网网络测试共进行3次测试,通过使用UDP协议+小包,使用6台辅助机和1台测试机,总计发包数3000万,统计测试机每秒收包数量,最终取3次测试的平均值。
3)CPU、磁盘的测试方式类似,详细方法见具体章节(四、测试报告摘要),此外还做了场景测试如Nginx等。
图1:云主机测试明细
二、选型说明
本次选型选取的是云主机主流配置中的8核16G,所有云主机计费方式均选取按月计费原则,且所有云主机均含1M带宽和存储费用。
图2:云主机配置及价格概况
三、综合测试结果
综合此次测试结果,四家云厂商在8核16G云主机配置下,在性价比排行上,UCloud占据此次评测第一位。华为云和阿里云紧随其后,位列第二、第三位。
指标说明:
性价比=性能得分/单价,得出数据越大,性价比越高
图3:云主机性价比排行(由高到低排列)
四、测试报告摘要
1. 性价比测试:性能得分
图4:云主机平均性能得分(由高到低排列)
由上图,在8核16G的配置下,通过Unixbench工具测试得出,UCloud云主机性能得分最高为6529,具有明显优势。华为云紧随其后,得分为6131.7。阿里云和腾讯云相对优势不明显。
2. 价格
图5:云主机单价对比(价格由低到高排列)
由上图我们可以看出,UCloud在8核16G配置的云主机下,价格最低,这也与其突出的性价比表现相呼应;华为云的价格高于UCloud,但是对比阿里云和腾讯云,优势还是比较明显。腾讯云的价格略高,这也极大的影响了其性价比得分。
3. CPU性能
图6:CPU运算平均耗时(由长到短排列)
由上图我们可以看出,在相同测试场景下,阿里云,华为云,腾讯云,UCloud的CPU运算耗时均在18秒左右,相差不大。UCloud相比于第二位的腾讯云,减少了0.17秒的运算时间。阿里云耗时较长,比第一位的UCloud多了0.8秒的耗时。
指标说明:
使用bc命令进行浮点运算,小数点后的位数为5000,测试耗时越短,表现越好。
6. 磁盘性能
图7:队列深度1*1的随机读写
图8:队列深度1*1的平均时延
图9:磁盘随机读写于队列深度1*1详细数据表、
图10:队列深度7*16的随机读写
图11:队列深度7*16的平均时延
图12:磁盘随机读写于队列深度7*16详细数据表
由队列深度分别为1*1和7*16的两组数据图表,我们可以看出,UCloud在磁盘的随机读写测试中,表现都非常好,数据远超其他3家云厂商。
在队列深度为1*1时,在随机读上,华为云和阿里云的iops和时延差距较小,位列二、三位。在随机写上,华为云和腾讯云的iops和时延数据表现都不理想,都有很大的提升空间。
在队列深度为7*16时,在随机读写上,阿里云和腾讯云的iops和时延都处于劣势,华为云和腾讯云的平均时延相差不大,但总体来说,三家厂商在磁盘随机读写的性能上都有提升空间。
指标说明:
在硬盘上随机位置读写数据,数据记录大小为4KB,在队列深度分别为1*1和7*16的条件下,进行IO基准性能测试得出的数据。IOPS越高,性能越好;时延越低,性能越好。
5. 内网质量
图13:内网每秒平均每秒收包数(由多到少排列)
在内网的质量测试上,四家厂商差距较大。UCloud每秒接收到小包的数量为接近400万个,位列第一位。阿里云每秒接收到小包的数量仅为80万左右,测试结果相对不理想,与UCloud、腾讯云、华为云对比差距比较大。
指标说明:
使用UDP协议+小包,使用6台辅助机和1台测试机,总计发1000万个包,小包大小为1bytes,同等情况下,统计测试机每秒收到包的数量。接收小包的数量越多,内网质量越好。
6. 特定场景测试(Nginx测试)
图14:Nginx测试每秒处理请求数(由多到少排列)
图15:Nginx测试详细数据表
Nginx是一个高性能的HTTP和反向代理web服务器,是网站门户用户的首选。Nginx具有并发能力非常强的特点,因此对运营主机的网络能力要求非常高。
由上图我们可以看出,UCloud、华为云以及阿里云的云主机表现都很好,其中UCloud表现最佳。腾讯云在此方面需要加强一些。
指标说明:
在虚拟机上安装Nginx 1.16.1版本,使用ab压测工具进行测试。总请求数为200万,一次并发请求个数为500,得出测试结果。每秒请求数越大,表现越好。单请求耗时与测试耗时越少,表现越好。
7. 特定场景测试(MySQL测试)
图16:MySQL QPS对比(由多到少排列)
图17:MySQL TPS对比(由多到少排列)
图18:MySQL测试详细数据表
MySQL是一种开放源代码的关系型数据库,因为其速度、可靠性和适应性而被大众所应用于自身业务中。因而对MySQL的支持能力,也是目前云主机表现是否良好的一个重要体现。
由上图我们可以看出,UCloud和阿里云在每秒请求数和每秒事务数的指标上都表现不错,位居第一、第二位。而华为云和腾讯云在此项测试结果中,不占优势。
指标说明:
使用sysbench基准测试工具对数据库进行性能测试。在一个表中存放2000万条数据,同时开启500个线程,时间不限制,得出数据结果。每秒请求数与每秒事务数越大,表现越好。测试耗时与平均时延越小,表现越好。
8. 特定场景测试(ClickHouse测试)
图19:ClickHouse测试耗时(由长到短排列)
ClickHouse是一个用于联机分析处理(OLAP)的列式数据库管理系统,会使用服务器上一切可用的资源,从而以最自然的方式并行处理大型查询。因此ClickHouse目前已经被很多用户应用于大数据分析处理业务上。因而对ClickHouse的支持能力,同样是云主机表现是否良好的一个重要体现。
由上图我们可以看出,UCloud耗时最短,位居第一。腾讯云比UCloud耗时长,但是却优于华为云和阿里云,因此位居第二位。华为云和阿里云耗时相近,分别位居第三、第四位。
指标说明:
安装单机版本ClickHouse19,在ClickHouse上做数据分组查询,测试数据集:ontime,16G,183.95million rows,取前10条数据,耗时越短,表现越好。