据说已经不止一家APM服务商“学习雷锋好榜样”来评测公有云平台的体验了,友商们如此高风亮节争做活雷锋为建设社会主义新中国鞠躬尽瘁,极客君自然也不能落下~
极客君的命题是:北上广(深),谁才是“用户觉得”最快的那朵云? (对,我们侧重用户感知速度!)
评测目的
针对不用云平台上的测试,旨在收集部署在各主流云平台的网站对于来自不同地域的页面请求的“感知”响应时间以及性能比较。
评测综合排名
(不想看我们评测过程和方法的,直接看这里,你们这些心急的人呐!)
下图表示从北京、上海、深圳去访问搭建在不同云平台上的网站,测出的网站性能排名。(各平台上的网站均采用相同的源码、相同的软件环境、相同的云主机配置。)
评测方法:
1>:拓扑结构
性能极客位于北京、上海和深圳的测试代理机(相同配置windows Server 2008 R2, 双核4G内存,5M宽带)分别对被测云平台进行测试。
2>:被测云主机申请与部署
1. 分别从阿里云、腾讯云、Azure、UCloud、盛大云、华为云上根据地区申请1-2台主机。这些主机的配置相同,为:
a) Windows Server 2008 R2
b) 双核4G
c) 5M 宽带,及公网IP
2. 在各被测云主机上安装IIS和SQL Server,部署相同网站。(可登陆此链接访问其中一个云主机上的网站http://120.25.79.12/Test )
3. 被测网站效果图:
3>测试步骤
1. 使用性能极客(www.perfgeek.com) 提交33个测试用例(3个地区:北京、上海、深圳* 11 个被测试云平台),且设置每个用例重复执行30次。
2. 提交所有测试用例后,性能极客位于北京、上海和深圳的测试机依次执行测试用例。收集页面的所有请求的响应时间,获取页面首字节的时间(TTFB);同时连续截屏使用性能极客独创算法算得页面加载时的关键帧时间。
4>计算方法
1. 针对同一个地区和同一个被测云平台,每个测试用例的30次迭代,得到30组测试结果,取“首字节时间”和“关键帧时间”的中位数,存于Excel表格中。
2. 计算所有地区数据时,同样对同一被测云平台的“首字节时间”和“关键帧时间”数据取中位数,存于Excel表格中
3. 使用测评分数,更直观的比较不同云平台性能。其计算方式为当前云平台的性能指标(“首字节时间”或“关键帧时间”)和表中最大值的差,与当前指标的跨度的比值,再乘以权值20。把两个指标算得的结果求和在加60,将得到一个接近于100的数值。
测评分数=
(MAX([首字节时间(s)])-[@[首字节时间(s)]]) / (MAX([首字节时间(s)])- MIN([首字节时间(s)]))*20
+(MAX([关键帧时间(s)])-[@[关键帧时间(s)]]) / (MAX([关键帧时间(s)])-MIN([关键帧时间(s)]))*20
+60
数值越大,表示通过此测试得到的该云平台响应速度越快,性能越好。
5>详细数据
北上深表
被测云平台 | 首字节时间(s) | 关键帧时间(s) | 测评分数 |
Ucloud-北京 | 0.15 | 4.02 | 88.24 |
Ucloud-广州 | 0.15 | 4.10 | 71.62 |
盛大云-华北 | 0.14 | 4.06 | 80.78 |
盛大云-华东 | 0.19 | 4.02 | 77.56 |
腾讯云-上海 | 0.13 | 4.05 | 86.52 |
腾讯云-广州 | 0.13 | 4.07 | 83.23 |
阿里云-北京 | 0.11 | 4.03 | 95.56 |
阿里云-深圳 | 0.12 | 4.04 | 91.76 |
Azure-中国北部 | 0.13 | 4.04 | 89.04 |
Azure-中国东部 | 0.14 | 4.01 | 92.16 |
华为云-华北 | 0.14 | 4.03 | 87.91 |
北京表
被测云平台 | 首字节时间(s) | 关键帧时间(s) | 测评分数 |
Ucloud-北京 | 0.15 | 4.01 | 97.68 |
Ucloud-广州 | 0.17 | 4.39 | 76.57 |
盛大云-华北 | 0.15 | 4.10 | 92.94 |
盛大云-华东 | 0.44 | 4.28 | 65.79 |
腾讯云-上海 | 0.15 | 4.34 | 80.43 |
腾讯云-广州 | 0.15 | 4.10 | 93.21 |
阿里云-北京 | 0.11 | 4.02 | 99.47 |
阿里云-深圳 | 0.14 | 4.08 | 94.73 |
Azure-中国北部 | 0.17 | 4.27 | 83.07 |
Azure-中国东部 | 0.16 | 4.09 | 92.97 |
华为云-华北 | 0.15 | 4.27 | 84.27 |
上海表
被测云平台 | 首字节时间(s) | 关键帧时间(s) | 测评分数 |
Ucloud-北京 | 0.14 | 4.05 | 79.67 |
Ucloud-广州 | 0.14 | 4.02 | 80.42 |
盛大云-华北 | 0.14 | 4.06 | 80.01 |
盛大云-华东 | 0.13 | 4.30 | 80.37 |
腾讯云-上海 | 0.10 | 4.03 | 99.81 |
腾讯云-广州 | 0.10 | 6.14 | 78.46 |
阿里云-北京 | 0.11 | 4.05 | 92.45 |
阿里云-深圳 | 0.12 | 4.07 | 89.15 |
Azure-中国北部 | 0.13 | 4.01 | 84.62 |
Azure-中国东部 | 0.10 | 4.98 | 90.93 |
华为云-华北 | 0.13 | 4.14 | 86.00 |
深圳表
被测云平台 | 首字节时间(s) | 关键帧时间(s) | 测评分数 |
Ucloud-北京 | 0.15 | 6.05 | 80.88 |
Ucloud-广州 | 0.17 | 5.94 | 77.79 |
盛大云-华北 | 0.15 | 9.05 | 69.07 |
盛大云-华东 | 0.20 | 4.86 | 76.51 |
腾讯云-上海 | 0.19 | 4.39 | 79.80 |
腾讯云-广州 | 0.14 | 3.98 | 91.72 |
阿里云-北京 | 0.13 | 4.01 | 93.66 |
阿里云-深圳 | 0.10 | 3.98 | 99.98 |
Azure-中国北部 | 0.14 | 4.00 | 91.64 |
Azure-中国东部 | 0.15 | 3.97 | 90.31 |
华为云-华北 | 0.15 | 4.01 | 88.71 |
测试结果
下面三幅图,分别展示北京、上海和深圳地区测得数据,并统计测评的云平台排名。
云平台综合评测排名(知道大家懒得翻回去看,小编再贴一遍)
名词解释
中位数 代表一个样本、种群或概率分布中的一个数值,其可将数值集合划分为相等的上下两部分。对于有限的数集,可以通过把所有观察值高低排序后找出正中间的一个作为中位数。若为数集为偶数,则取最中间位置偏大的数。
首字节时间 最初的网络请求被发起到从服务器接收到第一个字节这段时间,它包含了 TCP连接时间,发送HTTP请求时间和获得响应消息第一个字节的时间
关键帧时间 是性能极客独创的一种分析网站加载性能的方法——通过模拟真实用户的视觉感知来精确衡量网站或应用的前端性能,即智能的感知页面加载,而非通过浏览器时间计算。
后记:
1:我们知道云场景复杂多变无法一概而论,各大云平台更是推陈出新,大而全的评测报告可能不如小而精的来的实在,因此我们只从一个很小的点切入进去:速度。
2: 性能极客从速度切入的另一原因是其技术优势。性能极客独创的“感知性能算法”真正做到了从真实用户感知的角度精准衡量网页/APP的加载速度。
感知性能算法运用两套专有的图像分析技术实现了人脑思维中对于网页或App“加载完成”的定义。“每个页面完整的加载过程其实都会有一些明显的阶段,这些阶段之间会有明显的元素渲染差异。我们的核心算法结合了图像分析、人脑视觉习惯、统计学,把页面加载过程中的不同阶段以阶段帧的形式呈现,再从若干阶段帧中自动计算出其中的关键帧,该关键帧时间便是最符合人脑视觉感知的页面加载渲染时间,是页面前端性能最直观的指标。”
去试试性能极客的感知性能算法:www.perfgeek.com
3:报告一经发布又是几家欢喜几家愁,请大家想点赞的点赞,想拍砖的拍砖,极客君保证来者不拒~