之所以只选其了这四家云商,那是有原因的,因为在老刘眼里,未来中国云服务的天下是这四位的!有人问你把百度智能云,金山云,天翼云等等置于何地?百度智能云在AI这块确实优势,不过这块市场不大,金山云想着美国IPO,最近披露的报表真是难看,公有云占比太低,基本靠几个大客户活着,亏损越来越严重,天翼云体制内的云老刘不看好,三四线城市可能用的多。
云服务商评价
再说到阿里云,腾讯云,华为云和UCloud这四家公司,阿里云自不必说,稳重国内云服务商第一把交椅,市场份额近半;腾讯云是睡醒的狮子,增长势头很猛,测评性能也是可圈可点的(虽然不及阿里云);华为云,硬件出身,这两年砸了很多钱在抢占市场,略有成效,不过前些天宕机事件也显露了技术有待加强啊,要知道硬件转型做云服务还是挺难的;说起UCloud优刻得,可能很多人不知道,有人甚至以为这是海外公司,事实上这是一家地地道道的国内资本企业,作为2012创立的云服务公司,一路走来艰辛,不过这家公司几乎抓住了所有风口,并且顺利科创板上市,成为中国云计算(公有云)第一股,虽然没有前三家强大的集团后盾,但上市后凭借资本和自身技术的能力,相信可以和华为云在第三名上争夺一番!
对于所有的公有云服务商来说,云主机是非常基础且重要的业务。那么在高性能云计算方面,作为互联网巨头的阿里云、腾讯云以及新兴云计算企业的代表华为云、UCloud 又有怎样的表现呢?通过如下的主机测评流程就可以选择满意的云服务器vps啦!
主机选取
虽然任意一家云服务商都无法保证同一系列所有的机器性能都一致,为了较为公平的比较各家云服务商的主机性能,我们尽量要选取各家配置近似的机型,如4核16G,CPU 均为 Intel Xeon Skylake 系列。
测评工具一览
UnixBench
SuperPI
CpuBurn
FIO
Iperf3
Memtester
整机跑分
UnixBench是国外著名的linux跑分软件,被广泛用与测试linux系统主机的性能。
Unixbench的主要测试项目有:系统调用、读写、进程、图形化测试、2D、3D、管道、运算、C库等系统基准性能提供测试数据。通过它跑出的分数,你可以大概知道购买的云主机处于一个怎么的性能。
下面的脚本使用了UnixBench5.1.3来测试,注释了关于graphic的测试项(如果你需要测试graphic,则需要修改Makefile,不要注释掉“GRAPHIC_TESTS = defined”,同时需要系统提供x11perf命令gl_glibs库。)
测试命令
wget –no-check-certificate https://github.com/teddysun/across/raw/master/unixbench.sh
chmod +x unixbench.sh
./unixbench.sh
测试说明
各项测试都有得分,性能的基线源于1995 年,名为“George”的系统,一个工作站:SPARCstation 20‐61,128MB RAM,Solaris2.3,此系统的指数值被设定为10,所以,如果一个系统的最后结果分数为520,意思是指此系统比基线系统运行快52 倍。
CPU测试
1、通过bc命令计算圆周率
用Linux自带的bc计算器计算pi值
测试命令
time echo “scale=5000; 4a(1)” | bc -l -q
time是计时程序。scale是精度,4a(1)调用了反正切函数。
2、Super PI
Super PI是利用CPU的浮点运算能力来计算出π(圆周率),所以目前普遍被超频玩家用做测试系统稳定性和测试CPU计算完后特定位数圆周率所需的时间。
测试命令
wget http://www.linuxfly.org/attachment/superpi_linux.tar.gz
tar xzvf superpi_linux.tar.gz
cd superpi
./super_pi 25
3、CpuBurn
程序会加热CPU到它所能承受最大工作温度,它可以使用户在实际应用中加速cpu,测试cpu在高强度运算时的稳定性。
测试命令
wget https://cdn.pmylund.com/files/tools/cpuburn/linux/cpuburn-1.0-amd64.tar.gz
tar -zxvf cpuburn-1.0-amd64.tar.gz
cd cpuburn
nohup ./cpuburn > ~/cputest.log &(压力测试耗时长,设置后台运行)
IO性能测试
FIO
性能测试建议直接通过读写裸盘的方式进行测试,会得到较为真实的数据。但直接测试裸盘会破坏文件系统结构,导致数据丢失,请在测试前确认磁盘中数据已备份。
测试命令
1、测试顺序读性能
fio -filename=/tmp/testfile -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=16k -size=2G -numjobs=1 -runtime=60 -group_reporting -name=mytest
2、测试顺序写性能
fio -filename=/tmp/testfile -direct=1 -iodepth 1 -thread -rw=write -ioengine=psync -bs=16k -size=2G -numjobs=1 -runtime=60 -group_reporting -name=mytest
3、测试随机读性能
fio -filename=/tmp/testfile -direct=1 -iodepth 1 -thread -rw=randread -ioengine=psync -bs=16k -size=2G -numjobs=1 -runtime=60 -group_reporting -name=mytest
4、测试随机写性能
fio -filename=/tmp/testfile -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=psync -bs=16k -size=2G -numjobs=1 -runtime=60 -group_reporting -name=mytest
网络测试
Iperf3
iperf命令是一个网络性能测试工具。iperf可以测试TCP和UDP带宽质量
我们在这里测试udp带宽质量应为udp通信开销小,测试的带宽更准确。要获得带宽数据,需要不断在client端增加带宽值,直到server端出现轻微的丢包为止,此时server端显示的带宽就是被测系统的吞吐量。
测试命令
yum install iperf3
服务端 iperf3 -s -u
UDP客户端 iperf3 -c [ip地址] -u -b [带宽]
(需要配置安全组,否则可能会连接失败)
内存测试
Memtester
测试命令
wget http://pyropus.ca/software/memtester/old-versions/memtester-4.2.2.tar.gz
tar zxvf memtester-4.2.2.tar.gz
cd memtester-4.2.2
make && make install
./mentester 16G 3
Memtester主要是捕获内存错误和一直处于很高或者很低的坏位, 其测试的主要项目有随机值,异或比较,减法,乘法,除法,与或运算等等。通过给定测试内存的大小和次数,可以对系统现有的内存进行上面项目的测试。
对内存进行压力测试
测试命令
nohup ./memtester 16G > /tmp/memtest.log &
老刘最后附上腾讯云和UCloud近期的云主机VPS促销活动,供大家买来测评做参考。
《 腾讯云秒杀云主机vps,1核2G爆款服务器99元》,活动持续到5月31日
《UCloud海外云主机促销1核1G一年150元,3年450元(可按流量计费) 》,活动持续到12月31日。