云主机性能评测:腾讯云、阿里云、百度云、天翼云

11 1月

公司系统目前在天翼云主机中,因近期使用者增加,系统复杂度的增加,导致系统出现了一些性能上的不足,考虑到天翼云只有单纯的云主机且性能不咋地,升级还贼贵,所以对BAT三家云主机以及现有云主机进行了一次性能的评测。

一、测试主机清单

主机商 天翼云 腾讯云 阿里云 百度云
配置 2

4G RAM

100G

2

4G RAM

100G(云硬盘)

2

4G RAM

100G(高效云盘)

2

4G RAM

100G

价格 3672 27842310.72 30362580.6 2560(高性能云硬盘)

* 因目前可暂停使用天翼云主机配置为24G RAM,100G硬盘,为公平起见,主机配置标准采用相同配置

* 不同硬盘类型性能差距很大,因除天翼外云主机均提供数据库服务,此处均未选择SSD硬盘

* 腾讯云和阿里云目前有优惠活动,括号内为当前优惠价

* 此价格不包含带宽价格

二、综合测试

使用工具:UnixBench 5.1.3

主机商 天翼云 腾讯云 阿里云 百度云
得分

(越高越好)

1541.2 2668.7 2439 1520.1

三、单项测试

主机商 天翼云 腾讯云 阿里云 阿里云 百度云
CPU Cyclictest

(越低越好)

30 9 12 39
Mbw

(越高越好)

2867.299 MiB/s 7483.310 MiB/s 5544.381 MiB/s 5704.145 MiB/s
Fio read

(越高越好)

133 IOPS 741 IOPS 1238 IOPS 1133 IOPS
Fio write

(越高越好)

176 IOPS 507 IOPS 1222 IOPS 1235 IOPS
Dd write

(越高越好)

152 MB/s 66.1 MB/s 56.0 MB/s 数据库二次测试,4000IOPS 119 MB/s
Sysbench R

(越高越好)

4435.48 /s

平均请求时间 18.93ms

15040.17 /s

平均请求时间

5.58ms

2432.39 /s

平均请求时间

34.52ms

3878.03 /s

平均请求时间

21.65ms

5675.02 /s

平均请求时间

14.79ms

Sysbench RW

(越高越好)

4343.39 /s

平均请求时间

26.23ms

17166.90 /s

平均请求时间

6.62ms

2198.19 /s

平均请求时间

51.84ms

3491.89 /s

平均请求时间

32.64ms

5971.11 /s

平均请求时间

19.08ms

实际业务复杂SQL一条

(越低越好)

14.731s

13.888s

13.950s

4.48s

4.31s

4.28s

7.11s

6.87s

6.86s

4.72s

4.51s

4.57s

5.78s

5.43s

5.42s

网络测试

103个节点

测试文件大小:528.98KB

1.428MB

总时间:4.855s

平均速度556.187KB/s

总时间:2.482s

平均速度

1.133MB/s

总时间:2.352s

平均速度1.325MB/s

总时间:

1.82s

平均速度 1.524MB/s

数据库测试,BAT三家均为独立数据库服务,天翼因没有提供数据库服务,采用自己装mysql测试,均采用4G ram版本。

* 阿里云有两次测试是因为我把测试结果给力神看了,他说,阿里和腾讯IOPS都不一样,没有可比性,所以重新开了个8G的rds来测试。

四、结论

根据上述测试结果,可以看出,腾讯云和阿里云较之天翼云与百度云有着很大的优势,两者均达到了官方所标识的参数,对于超出官方性能的部分,腾讯云直接提供给用户(Sysbench测试结果爆表原因),阿里云选择限制,仅给出标识性能。

附录一、测试花絮

天翼云只支持CentOS 6.x,在测试Geekbench 的时候,提示glibc版本过低,首先跑去扑哧扑哧的编译了一个glibc-2.16,发现ls都不可用了,又跑去编译了一个glibc-2.15,接着提示libstdc++版本过低,好吧,我放弃Geekbench这个工具了。

附录二、工具下载地址

UnixBench https://github.com/kdlucas/byte-unixbench/archive/v5.1.3.tar.gz

Cyclictest git://git.kernel.org/pub/scm/utils/rt-tests/rt-tests.git

mbw https://github.com/raas/mbw/archive/v1.4.tar.gz

fio https://github.com/axboe/fio/archive/fio-2.16.tar.gz

附录三、各工具测试命令

UnixBench ./Run

Cyclictest ./cyclictest -D 10s -q

mbw ./mbw -n 250 -t 0 200

./fio –name=randread –direct=1 –bs=4k –iodepth=64 –size=4G –rw=randread –gtod_reduce=1

./fio –name=randwrite –direct=1 –bs=4k –iodepth=64 –size=4G –rw=randwrite –gtod_reduce=1

dd if=/dev/zero of=test.dbf bs=8k count=200000 conv=fdatasync

sysbench –test=oltp –oltp-table-size=1000000 –mysql-db=dbtest –mysql-host=10.66.104.109 –mysql-user=root –mysql-password=Ruvrj9CdkL9Qsn3Y –db-driver=mysql prepare

sysbench –test=oltp –oltp-table-size=1000000 –oltp-test-mode=complex –oltp-read-only=off –num-threads=6 –max-time=60 –max-requests=0 –mysql-db=dbtest –mysql-host=10.66.104.109 –mysql-user=root –db-driver=mysql –mysql-password=Ruvrj9CdkL9Qsn3Y run

sysbench –test=oltp –oltp-table-size=1000000 –oltp-test-mode=complex –oltp-read-only=on –num-threads=6 –max-time=60 –max-requests=0 –mysql-db=dbtest –mysql-host=10.66.104.109 –mysql-user=root –db-driver=mysql –mysql-password=Ruvrj9CdkL9Qsn3Y run

复杂SQLselect * from (select a.pid, b.pbid, a.gid, gczbid, projectstatus, companyname, projectname, bailmoney, backbailbank, backbailprovince, backbailcity, bailtype, b.comment, bailcomment, paycompanyname, backbailaccount, backbailname, bailreachtime, backbailinterestrate, backbailinterest, backbailtime, backbailtotal, bailhasreturned, returnbailtime, returnbailmoney, locktime, financereturnbaildate, CASE WHEN SUM(c.iswinner)=0 THEN 0 ELSE 1 END AS iswinner from gczb_projects as a, gczb_projects_bidders as b, gczb_packages_bidders as c where a.pid = b.pid and b.pbid = c.pbid group by a.pid, b.pbid) a left join (select pid, winningtime from gczb_packages group by pid) as b on b.pid= a.pid where 1 order by gczbid asc, projectname asc limit 10

发表评论

电子邮件地址不会被公开。 必填项已用*标注