Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I estimate the size of my gzipped script?

How can I estimate the size of my JavaScript file after it is gzipped? Are there online tools for this? Or is it similar to using winzip for example?

like image 638
Christophe Avatar asked Feb 27 '12 16:02

Christophe


People also ask

What is gzip size?

"gzip" is often also used to refer to the gzip file format, which is: a 10-byte header, containing a magic number ( 1f 8b ), the compression method ( 08 for DEFLATE), 1-byte of header flags, a 4-byte timestamp, compression flags and the operating system ID.

How much space does gzip save?

Gzip, the most popular compression method, is used by web servers and browsers to seamlessly compress and decompress content as it's transmitted over the Internet. Used mostly on code and text files, gzip can reduce the size of JavaScript, CSS, and HTML files by up to 90%.

How do I check my gzip compression level?

There is no way to directly determine gzip level . The only way to determine it in my opinion is to gunzip the file and compressing it at different levels and then comparing the results with your existing file size.

How much on average the gzip command can compress text files?

gzip uses the Lempel–Ziv algorithm used in zip and PKZIP . The amount of compression obtained depends on the size of the input and the distribution of common substrings. Typically, text such as source code or English is reduced by 60–70%.


2 Answers

If you're on unix - gzip -c filename.min.js | wc -c will give you a byte count of the gzipped file

like image 178
gnarf Avatar answered Oct 02 '22 19:10

gnarf


http://closure-compiler.appspot.com/home lets you paste in code, and it will give you compression ratios for a particular file before and after 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) 

You can use the pretty-print and white-space only options to estimate the compression of non-minified content.

If you need an estimate:

  • Start with 100 JS files that have gone through the same minification pipeline.
  • For each file, compute the ratio in sizes between gzip -c "$f" | wc -c and wc -c "$f"
  • The average of those ratios is an approximation of the compression you should expect for a similar JS file.

Cygwin contains command line implementations of gzip and wc for Windows.

like image 43
Mike Samuel Avatar answered Oct 02 '22 20:10

Mike Samuel