用pigz代替gzip

By yejr on 03 十二月 2012

pig是个啥东东?
官网:http://zlib.net/pigz
一句话简介:

A parallel implementation of gzip for modernmulti-processor, multi-core machines。

简单的说,就是支持并行的gzip。废话不多说,开始测试。

pig默认用当前逻辑cpu个数来并发压缩,无法检测个数的话,则并发8个线程。

一、测试压缩包文件1
压缩前
-rw-r--r-- 1 root root 2474772480 Dec 3 19:54 dbs.tar 1、gzip测试
压缩耗时,CPU最高:101.6%
real 2m18.042s
user 2m10.204s
sys 0m6.876s 解压缩耗时,CPU最高:101.6%
real 0m26.756s
user 0m20.175s
sys 0m6.580s 压缩后
-rw-r--r-- 1 root root 2349563863 Dec 3 19:54 dbs.tar.gz 2、pigz测试
并发8线程(默认):
压缩耗时,CPU最高:832%
real 0m21.710s
user 2m31.229s
sys 0m9.101s 解压缩耗时,CPU最高:199%
real 0m13.239s
user 0m11.791s
sys 0m12.426s 并发4线程:
压缩耗时,CPU最高:427.6%
real 0m38.299s
user 2m30.701s
sys 0m8.369s 解压缩耗时,CPU最高:202%
real 0m13.294s
user 0m12.154s
sys 0m11.862s 压缩后
-rw-r--r-- 1 root root 2350161547 Dec 3 19:54 dbs.tar.gz 二、测试压缩包文件2
压缩前
-rw-r--r-- 1 root root 5248890880 Dec 3 20:26 mysql-5.5.28-linux2.6-x86_64.tar 1、gzip测试
压缩耗时,CPU最高:101%
real 6m20.524s
user 6m2.466s
sys 0m7.410s 解压缩耗时,CPU最高: 101%
real 0m58.893s
user 0m46.258s
sys 0m11.944s 压缩后
-rw-r--r-- 1 root root 1410045513 Dec 3 20:26 mysql-5.5.28-linux2.6-x86_64.tar.gz 2、pigz测试
并发8线程(默认):
压缩耗时,CPU最高: 799%
real 1m11.908s
user 6m36.717s
sys 0m9.860s 解压缩耗时,CPU最高:179%
real 0m33.188s
user 0m38.069s
sys 0m16.728s 并发4线程:
压缩耗时,CPU最高: 418%
real 1m41.547s
user 6m36.782s
sys 0m9.806s 解压缩耗时,CPU最高: 179%
real 0m33.120s
user 0m37.500s
sys 0m16.956s 压缩后
-rw-r--r-- 1 root root 1406061442 Dec 3 20:26 mysql-5.5.28-linux2.6-x86_64.tar.gz

结论:

1、pigz默认用法(默认并发线程是逻辑cpu个数)可比gzip快5.3倍,CPU消耗则是gzip的8倍,压缩比则相当;
2、并发8线程对比4线程提升:41.2%,16线程对比8线程提升:27.9%,32线程对比16线程提升:3%;
3、在对压缩效率要求较高、但对短时间内CPU消耗较高不受影响的场景,使用pigz非常合适。 转自:http://imysql.cn/2012/12/03/using-pigz-instead-of-gzip.html 经个人测试,gzip和pigz命令可以互通,即用gzip压缩的文件可以用pigz来解压,pigz压缩的文件也可以用gzip来解压·~~~~放心使用,哈哈····

用pigz代替gzip -- 并行压缩软件的更多相关文章

  1. 关于压缩软件gzip和xz的简单对照

    晚上因为处理磁盘报警的须要.进行了日志压缩,在此次压缩中分别使用了gzip和xz软件对文本进行了压缩.压缩的结果很令人诧异. 出于对xz好奇的原因是因为在下载内核源码时常常能够看到.xz格式的文件包. ...

  2. linux服务器的Gzip文件压缩方法[转]

    一.gzip介绍 gzip是GNU zip的缩写,它是一个GNU自由软件的文件压缩程序,也经常用来表示gzip这种文件格式.软件的作者是Jean-loup Gailly和Mark Adler.1992 ...

  3. bzip2 一种块排序文件压缩软件

    总览 bzip2 [ -cdfkqstvzVL123456789 ] [ filenames ... ] bunzip2 [ -fkvsVL ] [ filenames ... ] bzcat [ - ...

  4. Android总结之Gzip/Zip压缩

    前言: 做过Android网络开发的都知道,在网络传输中我们一般都会开启GZIP压缩,但是出于刨根问底的天性仅仅知道如何开启就不能满足俺的好奇心的,所以想着写个demo测试一下比较常用的两个数据压缩方 ...

  5. CentOS下Apache开启Gzip网页压缩功能

    1.进入/etc/httpd/conf下打开httpd.conf文件 开启Gzip压缩功能,即去掉LoadModule deflate_module modules/mod_deflate.so这行前 ...

  6. Nginx开启GZIP来压缩网页

    HTTP协议上的GZIP编码是一种用来改进web应 用程序性能的技术.大流量的WEB站点常常使用GZIP压缩技术来让用户感受更快的速度.这一般是指WWW服务器中安装的一个功能,当有人来访问这个服务器中 ...

  7. 解决winrar压缩软件弹出广告

    最近winrar每次打开压缩包就会弹出一个广告,那是因为winrar是收费软件,注册了就没有广告了.下面我教大家怎么注册来屏蔽广告. 解决方法 1.新建一个txt文件并命名为"rarreg. ...

  8. Filter之——GZIP全站压缩

    GZIP压缩:将压缩后的文本文件,发送给浏览器,减少流量. 一.进行gzip压缩条件: 1.请求头:Accept-Encoding : gzip  告诉服务器,该浏览器支持gzip压缩. 2.响应头: ...

  9. gzip [选项] 压缩(解压缩)

    减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间.gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用. 语法:gzip ...

随机推荐

  1. hdu 3065 病毒侵袭持续中【AC自动机】

    <题目链接> 题目大意: 小t非常感谢大家帮忙解决了他的上一个问题.然而病毒侵袭持续中.在小t的不懈努力下,他发现了网路中的“万恶之源”.这是一个庞大的病毒网站,他有着好多好多的病毒,但是 ...

  2. poj 1160 Post Office 【区间dp】

    <题目链接> 转载于:>>> 题目大意: 一条高速公路,有N个村庄,每个村庄均有一个唯一的坐标,选择P个村庄建邮局,问怎么选择,才能使每个村庄到其最近邮局的距离和最小?最 ...

  3. 洛谷 P1162 填涂颜色【DFS】

    题目链接:https://www.luogu.org/problemnew/show/P1162 题目描述 由数字 0 组成的方阵中,有一任意形状闭合圈,闭合圈由数字 1 构成,围圈时只走上下左右 4 ...

  4. java 同步 synchronized

    http://www.cnblogs.com/Qian123/p/5691705.html http://www.cnblogs.com/GnagWang/archive/2011/02/27/196 ...

  5. MyBatis学习笔记2--配置环境详解

    1.MyBatis-config.xml详解 一个完整的配置文件如下所示 <configuration> <!-- <properties resource="jdb ...

  6. 自己开发能在asp.net项目正常使用的定时器WebTimer,让定时器听话起来

    简述: iis是一个很不错的服务器,有很多很好用的特性来支持网站运行,但有时候这些特性却会影响到我们开发者的一些操作.比如我们需要定时运行做一些操作,但由于iis的利用应用程序池来管理这种方式会让网站 ...

  7. request.environ.get('wsgi.websocket')

    前言 websocket 是一种html5新的接口,以前服务器推送需要进行ajax等方式进行轮训,对服务器压力较高,随着新标准的推进,使用websocket在推送等方面已经是比较成熟了,并且各个浏览器 ...

  8. Python图形编程探索系列-02-框架设计

    跳转到我的博客 设计任务 在主窗口root中放置三个容器用于容纳组件,容器采用框架设计. 代码初步设计 import tkinter as tk root = tk.Tk() root.geometr ...

  9. php parse_url 解析URL并返回其组成部分

    [导读] php parse_url 函数教程parse_url ( PHP 4中, PHP 5中) parse_url -解析URL并返回其组成部分 描述 混合parse_url (字符串$网址[摘 ...

  10. Java程序员面试中的多线程问题1

    转自:http://blog.jobbole.com/18571/ 很多核心Java面试题来源于多线程(Multi-Threading)和集合框架(Collections Framework), 理解 ...