国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

文件壓縮與解壓性能對(duì)比 lzop, gzip

這篇具有很好參考價(jià)值的文章主要介紹了文件壓縮與解壓性能對(duì)比 lzop, gzip。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

關(guān)于 lzo

LZO is a portable lossless data compression library written in ANSI C.

LZO是一個(gè)超級(jí)強(qiáng)大的壓縮庫,最大的特點(diǎn)就是壓縮/解壓速度極快。LZO 除了極快的壓縮和解壓速度以外,最重要的特性就是就地解壓,即不使用臨時(shí)文件,這對(duì)于體積較大的文件來說,例如光盤映像,是非常合適的。另外,解壓無需內(nèi)存,解壓速度與壓縮率無關(guān),這兩個(gè)也是特別棒的特性,相比較小的壓縮率(現(xiàn)在隨著大硬盤的普及,壓縮率與壓縮時(shí)間相比,前者顯得不再那么重要了),速度上的提高帶來的優(yōu)勢無疑太巨大了!

關(guān)于 lzop

lzop is a file compressor which is very similar to [gzip](http://www.gzip.org/). lzop uses the [LZO data 
compression library](http://www.oberhumer.com/opensource/lzo/) for compression services, and its main 
advantages over gzip are much higher compression and decompression speed (at the cost of some compression 
ratio).

直接yum安裝

> yum install -y lzop

或者編譯安裝

先要安裝LZO庫

> cd /usr/local

> wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.10.tar.gz

> tar -xzf lzo-2.10.tar.gz

> cd /usr/local/lzo-2.10

> ./configure --enable-shared

> make && make install

從輸出的信息看,lzo庫被安裝在了 /usr/local/lib

將庫文件復(fù)制至/usr/lib,如果是64位系統(tǒng)則是 /usr/lib64
> cp /usr/local/lib/*lzo* /usr/lib64/

否則會(huì)在后續(xù)執(zhí)行l(wèi)zop命令時(shí)出現(xiàn)類似如下的提示 lzop: error while loading shared libraries: liblzo2.so.2: cannot open shared object file: No such file or directory

> ls /usr/lib64/*lzo*
/usr/lib64/liblzo2.a  /usr/lib64/liblzo2.la  /usr/lib64/liblzo2.so  /usr/lib64/liblzo2.so.2  /usr/lib64/liblzo2.so.2.0.0

編譯安裝 lzop工具

> cd /usr/local

> wget http://www.lzop.org/download/lzop-1.04.tar.gz

> tar -xzf lzop-1.04.tar.gz

> cd lzop-1.04

> ./configure

> make && make install

> lzop -V
                          Lempel-Ziv-Oberhumer Packer
                           Copyright (C) 1996 - 2017
lzop v1.04         Markus Franz Xaver Johannes Oberhumer         Aug 10th 2017

lzop version: v1.04, Aug 10th 2017
lzop build date: Feb 23 2023 11:18:26

使用

> lzop --help
                          Lempel-Ziv-Oberhumer Packer
                           Copyright (C) 1996 - 2010
lzop v1.03         Markus Franz Xaver Johannes Oberhumer          Nov 1st 2010

Usage: lzop [-dxlthIVL19] [-qvcfFnNPkUp] [-o file] [-S suffix] [file..]

Commands:
  -1     compress faster                   -9    compress better
  -d     decompress                        -x    extract (same as -dPp)
  -l     list compressed file              -I    display system information
  -t     test compressed file              -V    display version number
  -h     give this help                    -L    display software license
Options:
  -q     be quiet                          -v       be verbose
  -c     write on standard output          -oFILE   write output to 'FILE'
  -p     write output to current dir       -pDIR    write to path 'DIR'
  -f     force overwrite of output files
  -n     do not restore the original file name (default)
  -N     restore the original file name
  -P     restore or save the original path and file name
  -S.suf use suffix .suf on compressed files
  -U     delete input files after successful operation (like gzip and bzip2)
  file.. files to (de)compress. If none given, try standard input.
lzop -v test # 創(chuàng)建test.lzo壓縮文件,輸出詳細(xì)信息,保留test文件不變
lzop -Uv test # 創(chuàng)建test.lzo壓縮文件,輸出詳細(xì)信息,刪除test文件
lzop -t test.lzo # 測試test.lzo壓縮文件的完整性
lzop –info test.lzo # 列出test.lzo中各個(gè)文件的文件頭
lzop -l test.lzo # 列出test.lzo中各個(gè)文件的壓縮信息
lzop –ls test.lzo # 列出test.lzo文件的內(nèi)容,同ls -l功能
cat test | lzop > t.lzo # 壓縮標(biāo)準(zhǔn)輸入并定向到標(biāo)準(zhǔn)輸出
lzop -dv test.lzo # 解壓test.lzo得到test文件,輸出詳細(xì)信息,保留test.lzo不變
lzop -d test.lzo # 解壓,每個(gè)文件將與壓縮文件放在同一個(gè)目錄中
lzop -x test.lzo # 將壓縮文件解壓縮到當(dāng)前工作目錄。這和 -dPp 一樣。

壓縮級(jí)別:從 1 到 9,1表示壓縮的最快,9表示壓縮的最多,默認(rèn)是3,數(shù)值越大壓縮比例越大同時(shí)越慢。解壓縮速度不受壓縮級(jí)別的影響。

壓縮與解壓

生成一個(gè)文件 pg135.txt,大小3.16M

> time gzip -3 pg135.txt
real    0m0.097s
user    0m0.078s
sys     0m0.031s

> time lzop pg135.txt
real    0m0.030s
user    0m0.016s
sys     0m0.016s

> time gzip -d pg135.txt.gz
real    0m0.036s
user    0m0.031s
sys     0m0.000s

> time lzop -d pg135.txt.lzo
real    0m0.026s
user    0m0.000s
sys     0m0.031s
壓縮格式 文件 大小 壓縮時(shí)間 解壓時(shí)間
None pg135.txt 3.16M
GZIP pg135.txt.gz 1.32M 0.097s 0.036s
LZO pg135.txt.lzo 1.96M 0.030s 0.026s

總結(jié):gzip 的壓縮率高一些,但是壓縮和解壓時(shí)間比較長。

gzip 參數(shù)。

選項(xiàng) 含義
-c 將壓縮數(shù)據(jù)輸出到標(biāo)準(zhǔn)輸出中,并保留源文件。
-d 對(duì)壓縮文件進(jìn)行解壓縮。
-r 遞歸壓縮指定目錄下以及子目錄下的所有文件。
-v 對(duì)于每個(gè)壓縮和解壓縮的文件,顯示相應(yīng)的文件名和壓縮比。
-l 對(duì)每一個(gè)壓縮文件,顯示以下字段:壓縮文件的大小;未壓縮文件的大??;壓縮比;未壓縮文件的名稱。
-數(shù)字 用于指定壓縮等級(jí),-1 壓縮等級(jí)最低,壓縮比最差;-9 壓縮比最高。默認(rèn)壓縮比是 -6。

gzip壓縮默認(rèn)會(huì)刪掉源文件,不過也可以通過參數(shù)保留源文件。

gzip -c big_data.log > big_data.log.gz

無論是 gzip 還是 lzop 都是壓縮工具,目標(biāo)是文件,因此不會(huì)作用于目錄上,通常的做法是先使用 tar 命令將目錄打包為 .tar 文件,然后執(zhí)行壓縮,最終得到 .tar.gz文件。

分塊與并行處理

lzo 是基于block分塊的(約256K),這樣他就允許數(shù)據(jù)被分解成chunk,可以使用并行處理,流式處理。

gzip 壓縮方式不能被分塊,因此無法并行處理。

bzip2 壓縮非常的快,也可以被分塊,但是其解壓過程非常非常的緩慢。

所謂分塊并并行處理,就是先將大文件分塊,然后由多個(gè)下游程序并行來處理,也就是 mapreduce,那么并行處理的結(jié)果需要能夠按照正確的順序合并到一起。

綜合考慮

如果要求并行處理,壓縮和解押壓速度快,那么就選 lzo;如果單純的追求壓縮比,那么選 gzip。

其他

golang封裝lzo:https://github.com/cyberdelia/lzo

lzo 壓縮算法原理 https://blog.csdn.net/wo6694458/article/details/76099768

gzip 壓縮算法原理 https://www.jianshu.com/p/4033028e5570

參考

https://blog.thinkeridea.com/201906/go/compress_file_io_optimization1.html文章來源地址http://www.zghlxwxcb.cn/news/detail-435423.html

到了這里,關(guān)于文件壓縮與解壓性能對(duì)比 lzop, gzip的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • linux_文件壓縮、文件解壓(gzip命令、gunzip 命令、bzip2命令、bunzip2命令、tar命令、rar命令、zip命令)

    接上一篇:linux用戶管理(查看在線用戶who命令、創(chuàng)建用戶adduser命令、創(chuàng)建用戶組groupadd命令、查看用戶組groups命令、刪除用戶、設(shè)置用戶密碼passwd命令) 本次來分享怎樣在 linux中壓縮和解壓文件夾 ,在linux中壓縮解壓的方式有 5種 ,分別是 gz格式壓縮解壓、bz2格式壓縮解壓、

    2024年02月01日
    瀏覽(23)
  • Linux 打包壓縮解壓指令 gzip bzip2 tar

    總結(jié)自 鳥哥Linux私房菜 Linux壓縮文件的擴(kuò)展名大多是:“.tar, .tar.gz, .tgz, .gz, .Z, .bz2, *.xz”, 不同壓縮文件使用了不同的算法,不能通用壓縮或解壓 常見擴(kuò)展名: Linux上常見的壓縮指令就是 gzip, bzip2 以及最新的 xz ,至于 compress 已經(jīng)退流行了。為了支持 windows 常見的 zip,其實(shí)

    2024年02月05日
    瀏覽(18)
  • linux中的壓縮解壓命令:gzip,tar,zip,bzip2

    linux中的壓縮解壓命令:gzip,tar,zip,bzip2

    命令名稱:gzip 語法:gzip? 文件 功能:壓縮文件 壓縮后文件格式:.gz 例子1 ?如上圖所示,先用touch命令創(chuàng)建一個(gè)新文件file1,然后使用gzip壓縮該文件。 例子2 如上圖所示,先用cp命令將/etc/services文件復(fù)制到/root目錄下并改名為file2,通過ls -l 命令可見該文件的大小為670293B,

    2024年02月05日
    瀏覽(22)
  • 【微信小程序】引入第三方庫poke對(duì)GZIP壓縮數(shù)據(jù)進(jìn)行解壓

    使用 npm 包管理工具: 首先,在小程序的根目錄下執(zhí)行 npm init 初始化項(xiàng)目,生成 package.json 文件。 然后,通過 npm 安裝 pako: npm install pako 。 接下來,在小程序的根目錄下創(chuàng)建一個(gè)名為 miniprogram_npm 的文件夾。 將 node_modules/pako 文件夾復(fù)制到 miniprogram_npm 文件夾中。 在需要使用

    2024年02月08日
    瀏覽(22)
  • Ubuntu使用gzip與bzip2與rar和tar壓縮解壓

    目錄 1、gzip壓縮解壓 2、bzip2壓縮解壓 3、tar壓縮解壓 tar.gz 4、zip壓縮解壓 因?yàn)槎际窍到y(tǒng)自帶的我們不需要安裝; ls 看一下目錄當(dāng)前的文件,創(chuàng)建一個(gè) touch 123.txt 文件; 原文件消失,壓縮解壓 gzip 進(jìn)行壓縮,(“ gzip 123.txt ”),這樣就壓縮完畢了; gzip 進(jìn)行解壓,(“ gzip

    2024年02月05日
    瀏覽(19)
  • Linux下的打包(tar)、壓縮(gzip / bzip2)、解壓gz / bz2 / xz

    Linux中打包和壓縮是兩個(gè)過程,分別有對(duì)應(yīng)的指令來執(zhí)行這兩步操作。 打包 指的是將一堆文件裝到一個(gè)大袋子里, 壓縮 則是把這個(gè)袋子里的空氣給抽干。 目錄 1、打包命令 tar 2、打包壓縮一步到位的方式 (1) 方式一:tar 與 gzip 相結(jié)合 (2) 方式二:tar 與 bzip2 相結(jié)合 3、總結(jié)

    2024年02月13日
    瀏覽(28)
  • nginx開啟Gzip壓縮,Vue性能優(yōu)化之使用gzip壓縮打包

    nginx開啟Gzip壓縮,Vue性能優(yōu)化之使用gzip壓縮打包

    不管是vue項(xiàng)目還是react項(xiàng)目在使用webpack打包之后都會(huì)生成一個(gè)動(dòng)輒一兩兆甚至更大的js文件,在某些情況下嚴(yán)重影響項(xiàng)目性能,打開頁面的時(shí)候白屏?xí)r間會(huì)很長,本文將介紹如何使用gzip壓縮打包,主要是nginx部署的配置,非常重要,我查閱了很多文章基本都沒用說清楚甚至錯(cuò)

    2024年02月02日
    瀏覽(21)
  • Linux中_使用tar_gzip_zip_rar_命令_打包和解包_壓縮和解壓

    1.3.1、到當(dāng)前目錄下 1.3.2、到指定目錄下 3.1.1、壓縮當(dāng)前目錄: 3.1.2、壓縮指定目錄: 3.2.1、到當(dāng)前目錄 3.2.2、到指定目錄 4.2.1、壓縮文件本身: 4.2.2、遞歸壓縮,將指定目錄下所有文件和子目錄一并壓縮:

    2024年02月04日
    瀏覽(21)
  • vue前端性能優(yōu)化之分包策略、異步組件、Gzip壓縮

    vue前端性能優(yōu)化之分包策略、異步組件、Gzip壓縮

    目錄 一、Gzip壓縮 二、異步組件 三、分包策略 最后 ? ????????項(xiàng)目的性能優(yōu)化是有完整項(xiàng)目經(jīng)歷的開發(fā)者都會(huì)遇到得一個(gè)問題。這是整個(gè)項(xiàng)目開發(fā)最后的一步,也是最關(guān)鍵的一步,做一個(gè)項(xiàng)目并不是單單完成功能就算結(jié)束了,作為開發(fā)者,更要站在用戶角度去進(jìn)行項(xiàng)目體

    2024年02月09日
    瀏覽(23)
  • 【linux】解壓.gz文件 報(bào)錯(cuò) gzip:stdin:not in gzip format(已解決)

    【linux】解壓.gz文件 報(bào)錯(cuò) gzip:stdin:not in gzip format(已解決)

    目錄 1、問題: 2、分析原因 3、解決辦法 在解壓一個(gè)以【.gz】(注意不是.tar.gz)結(jié)尾的壓縮包時(shí),遇到報(bào)錯(cuò) 【gzip:stdin:不是gzip格式】 翻譯一下問題:【gzip:stdin:不是gzip格式】 解壓命令:sudo tar -zxvf + 包名 分析:這個(gè)問題導(dǎo)致的原因有兩個(gè): 1) 原因一、?壓縮包受損

    2024年02月13日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包