Hi!
For a recent project, I needed to gzip a big amount of data. Since the gzip in the standard library only operates in a single goroutine I saw a possibility to make it faster.
This is a modification of the standard library that encodes independent blocks, and where the reader decodes ahead in a separate goroutine.
Major features:
* Fully multithreaded gzip compression.
* Asynchronous gzip decompression.
* Fully gzip compatible, both read and write.
* Size overhead < 1%
* Fully compatible drop-in "replacement" for compress/gzip.
TL;DR: Use this if you are (de)compressing more than 1MB gzip data at the time.
Feedback, comments and experiences are very welcome.
/Klaus