Làm cách nào để ước tính kích thước tệp JavaScript của tôi sau khi nó được giải nén? Có các công cụ trực tuyến cho việc này không? Hoặc nó tương tự như sử dụng winzip chẳng hạn?
Làm cách nào để ước tính kích thước tệp JavaScript của tôi sau khi nó được giải nén? Có các công cụ trực tuyến cho việc này không? Hoặc nó tương tự như sử dụng winzip chẳng hạn?
Câu trả lời:
http://closure-compiler.appspot.com/home cho phép bạn dán mã và nó sẽ cung cấp cho bạn tỷ lệ nén cho một tệp cụ thể trước và sau GZIP.
Original Size: 90 bytes (100 bytes gzipped)
Compiled Size: 55 bytes (68 bytes gzipped)
Saved 38.89% off the original size (32.00% off the gzipped size)
Bạn có thể sử dụng các tùy chọn chỉ in đẹp và khoảng trắng để ước tính độ nén của nội dung không được rút gọn.
Nếu bạn cần ước tính:
gzip -c "$f" | wc -c
vàwc -c "$f"
Cygwin chứa các triển khai dòng lệnh của gzip
và wc
cho Windows.
Nếu bạn đang sử dụng unix - gzip -c filename.min.js | wc -c
sẽ cung cấp cho bạn số byte của tệp đã nén
gunzip -c myfile | wc -c
hayzcat myfile | wc -c
cat filename.js | wc -c
.
Trực tiếp từ nhà ga,
gzip -9 -c path/to/file.js | wc -c | numfmt --to=iec-i --suffix=B --padding=10
Nếu bạn cần kích thước ban đầu để so sánh,
cat path/to/file.js | wc -c | numfmt --to=iec-i --suffix=B --padding=10
Để có được nó theo chương trình, có các tiện ích như gzip-size . Đó là một gói nút nhưng bạn có thể cài đặt nó trên toàn cầu như một công cụ chung.
Tôi thường sử dụng điều này để ước tính và so sánh kích thước tệp.
Khi tạo một kho lưu trữ, hãy tìm kiếm Archive Format
và gzip
là tùy chọn thứ 3.
Trong phần nhận xét, chúng tôi đã thảo luận rằng có thể có sự khác biệt giữa nén GZIP của 7-zip so với nén GZIP của máy chủ thực tế. Vì vậy, tôi đã so sánh việc chỉ sử dụng trang chủ của http://www.google.com.vn/ .
Tải trọng GZIP của Google là 36,678 byte. 7-zip, với cài đặt "gzip Normal", là 35,559 (nhỏ hơn 3%). Với cài đặt "gzip Fastest", nó là 37.673 (lớn hơn 3%).
Vì vậy, câu chuyện ngắn: 7-zip có kết quả chính xác khoảng 97% .
http://refresh-sf.com/ sẽ cung cấp cho bạn tỷ lệ và kích thước thu nhỏ và gzip.
Với lõi nút, bạn có thể sử dụng độ dài của bộ đệm zlib.gzip để xác định kích thước gzip:
const fs = require('fs');
const util = require('util');
const zlib = require('zlib');
const readFile = util.promisify(fs.readFile);
const gzip = util.promisify(zlib.gzip);
const getGzipSize = filePath => readFile(filePath)
.then(gzip)
.then(x => x.length);
Nếu bạn muốn so sánh các kích thước tệp không nén, được gzipped và brotli'ed cho toàn bộ thư mục: (giả sử bạn muốn lọc *.js
):
for file in *.js; do printf "$file\t$(cat $file | wc -c)\t$(gzip -kc7 $file | wc -c)\t$(brotli --in $file --out temp.br --force --quality 11 && cat temp.br | wc -c)\n"; done | tee filesizes.log
Đầu ra mẫu (được phân tách bằng tab để bạn có thể sao chép vào bảng tính):
foo.js 39035 10150 8982
bar.js 217000 68978 56337
filesizes.log
. Đã thêm dấu phẩy vào đầu ra để cải thiện khả năng đọc. Mức độ nén đụng gzip đến 9 để phù hợp với mức độ nén brotli đã maxed-out của 11.for file in *.js; do printf "$file\t$(cat $file | wc -c | xargs printf "%'d\n")\t$(gzip -9c $file | wc -c | xargs printf "%'d\n")\t$(brotli -cZ $file | wc -c | xargs printf "%'d\n")\n"; done | tee
Bạn có thể gzip
tự cài đặt trên Windows thông qua Gow (Gnu Trên Windows) .