一、测评目的

通过分析webp图片在不同条件下的性能表现,来确定webp图片的适用场景。

二、测评方式

使用控制变量法,分别从以下3点对webp与jpg图片做对比,得出结论。

1.页面图片总体积。

2.单张图片体积。

3.网速

三、采样数据

测试机器:2015年MacBook Pro

处理器:2.7GHz Intel Core i5

显卡:Intel Iris Graphics 6100

浏览器:Chrome Mac版 52.0.2743.116

1.变化参数:页面图片总体积(通过图片数量变化)

固定参数:每张图片质量为70,尺寸为原图尺寸,网速为Wifi

图片总体积(KB) 18.1(37.2) 38.6(63.4) 52.1(93.8) 99.9(167.6) 126.3(223.2) 192.8(325.2) 222.7(386.7) 233.6(420.5) 252.1(458.6) 283.2(514.9)
webp 207 278 443 718 799 1073 1406 1469 1662 1893
jpg 116 143 220 270 336 384 452 493 547 617

2.变化参数:单张图片体积(通过图片尺寸以及质量变化)

固定参数:网速为Wifi

单张图片体积(KB) 1.0(1.6) 2.3(3.5) 3.3(4.9) 5.0(8.0) 7.7(13.0) 9.3(17.0) 11.3(21.8) 12.8(26.3) 14.8(31.4) 20.2(38.7)
webp 118 131 136 164 166 240 265 302 314 324
jpg 132 133 146 149 150 183 190 217 233 240

3.变化参数:网速(使用Chrome工具模拟网速)

固定参数:图片质量70,尺寸为原图尺寸,webp格式体积18.1KB,jpg格式体积37.2KB

网速 Regular 2G(250k/s) Good 2G(450k/s) Regular 3G(750k/s) Good 3G(1.5m/s) Regular 4G(4m/s) Wifi(30m/s)
webp 914 522 406 294 235 214
jpg 1519 844 528 293 189 110

四、数据分析

根据以上分析可得出结论:

1.webp图片体积比jpg体积要小40%左右,因此webp图片下载速度比jpg图片更快,耗流量更少。

2.渲染webp比渲染jpg明显要慢。

3.页面图片总体积越大,webp比jpg额外耗时更多。

4.单张图片在5KB以下时,webp加载较快;单张图片在5KB以上时,jpg加载更快。

5.网速在1.5mb/s以上时,jpg更快;网速在1.5mb/s以下时,webp更快。

五、结论

通过以上分析,得出webp的适用场景:

1.网速较差时(由于webp图片体积更小,耗流量更少,网速不好时,性能表现更好)

2.单张图片在5KB以下时

3.页面webp图片总体积在50KB以内时(此时webp与jpg相差在0.2s以内,可以接受)

webp性能测评的更多相关文章

  1. Apache JMeter--网站自动测试与性能测评

    Apache JMeter--网站自动测试与性能测评 2013-02-28 15:48:05 标签:Jmeter From:http://bdql.iteye.com/blog/291987 出于学习 ...

  2. 谷歌性能测评工具lighthouse使用

    1.谷歌插件lighthouse的基本介绍 Lighthouse 是一个网站性能测评工具, 它是 Google Chrome 推出的一个开源自动化工具,能够对 PWA 和网页多方面的效果指标进行评测, ...

  3. 【性能测评】DSP库,MDK5的AC5,AC6,IAR和Embedded Studio的三角函数性能

    测试条件: 1.IAR8.30开最高等级速度优化. 2.MDK5.27正式版使用AC5开最高等级优化3,开启时间优化,测试C标准库和微库MicroLib两种. 3.MDK5.27正式版使用AC6开最高 ...

  4. 第三方IDC性能测评主要指标

    弹性计算性能弹性计费模式就是 "即用即付 ",最小单位可以按小时来计算.随着云计算负载的增长,企业购买服务器带宽时的资源.   1.弹性计算性能   弹性计费模式就是"即 ...

  5. 《Android应用性能优化》2——内存、CPU、性能测评

    4.高效使用内存 4.1 说说内存 Android设备的性能主要取决于以下三因素: CPU如何操纵特定的数据类型: 数据和指令需占用多少存储空间: 数据在内存中的布局 4.2 数据类型 int和lon ...

  6. C++Singleton的DCLP(双重锁)实现以及性能测评

      本文系原创,转载请注明:http://www.cnblogs.com/inevermore/p/4014577.html   根据维基百科,对单例模式的描述是: 确保一个类只有一个实例,并提供对该 ...

  7. node省市区三级数据性能测评

    闲来无事,测试下node和egg 首先是数据库,大概长这样 然后是代码 'use strict'; const Controller = require('egg').Controller; clas ...

  8. 移动App性能测评与优化1.4.4 多进程应用

    1.4.4 多进程应用 根据上一节中的描述,当一个进程结束后,它所占用的共享库内存将会被其他仍然使用该共享库的进程所分担,共享库消耗的物理内存并不会减少.实际上,对于所有共享使用了这个库的应用,Pss ...

  9. 从range和xrange的性能对比到yield关键字(上)

    使用xrange   当我们获取某个数量的循环时,我们惯用的手法是for循环和range函数,例如: for i in range(10): print i 这里range(10)生成了一个长度为10 ...

随机推荐

  1. 在XP上安装WinPython最新版本

    2015年3月30日星期一 16:01:47     晴 WinPython 新版本不再支持Windows XP平台,会出现错误提示WindowsError 127. 按照官网论坛上的解决方案(htt ...

  2. 查找树ADT

    通过二叉查找树实现排序的例程 /** * 无论排序的对象是什么,都要实现Comparable接口 * * @param <T> */ public class BinaryNode< ...

  3. CSS3 笔记四(Transforms/Transition/Animations)

    CSS3 2D Transforms Methods translate() rotate() scale() skewX() skewY() matrix() 1> translate() T ...

  4. 利用反射+AOP,封装Basehandler

    AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术.AOP是OOP的延续,是软件开发中的一个热点, ...

  5. mysql基本语句

    mysql -u root -p; 登录数据库 show databases; 展示数据库 show tables; 展示表 desc messages; 查看messages表的结构 drop da ...

  6. EF之ExecuteSqlCommand更新出现无效的解决方案

    本篇文章将会剖析为什么会出现这一现象.以及解决的办法 先来看一下代码 public static TResult AddTest() { TestDAL testdal = DALFactory.Cr ...

  7. 利用wangEditor获取文章格式和内容

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs& ...

  8. table表格在设置文字垂直居中后,在表格显示相同排列的数据(比如:testtesttesttsttesttesstestse很多的test)时此表格不能换行

    table设置了垂直居中后在表格显示相同排列的数据(比如:testtesttesttsttesttesstestse很多的test)时此表格不能换行, 此时会导致table会把页面撑的很宽,导致表格后 ...

  9. highcharts php请求mysql返回json数据作为数据源进行制图

    直接上代码 [官方文档请参见http://www.highcharts.com/docs/working-with-data/getting-data-across-domains-jsonp] [实 ...

  10. 微信h5页面禁止下拉露出网页来源

    1.可以给document的touchmove事件禁止掉就行了 document.querySelector('body').addEventListener('touchmove', functio ...