Req #77281 [Opn->Sus]: zstandard compression support
| From: | cmb@php.net | Date: | Tue, 11 Dec 2018 14:39:09 +0000 |
| Subject: | Req #77281 [Opn->Sus]: zstandard compression support | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-218389@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=77281&edit=1
ID: 77281
Updated by: cmb@php.net
Reported by: rh_whatwg at skuldwyrm dot no
Summary: zstandard compression support
-Status: Open
+Status: Suspended
Type: Feature/Change Request
Package: *Compression related
PHP Version: Next Major Version
Block user comment: N
Private report: N
New Comment:
For reference:
<https://tools.ietf.org/html/rfc8478>
<https://github.com/kjdev/php-ext-zstd>
Anyhow, this topic certainly requires discussion on internals@,
and likely the RFC process[1]. Feel free to start it! For the
time being, I'm suspending this ticket.
[1] <http://wiki.php.net/rfc/howto>
Previous Comments:
------------------------------------------------------------------------
[2018-12-11 05:57:50] rh_whatwg at skuldwyrm dot no
Description:
------------
zstandard provides better compression at it's lowest level than deflate (zlib / gzip) on
it's highest level.
zstandard is also faster that deflate on both compression and decompression.
https://facebook.github.io/zstd/
By the looks of it zstandard can become the longterm replacement/successor for both gzip and bzip.
The webserver ngninx has a feature request for zstandard and support should be added soon (I believe
nginx master has it by now).
Weget2 supports it as well.
IANA and RFCs exists that define it properly so it should only be a matte of time before it joins
brotli and gzip as part of the compression methods browsers support.
PHP can help speed up adoption by adding support for it in the next major (8.0) or if possible minor
(7.4) release.
zstandard license is the 3 clause BSD, the previous controversy that facebook initially added added
a "+PATENTS" clause has been removed, so the license is now the normal 3 clause BSD.
Speeds varies and there are a lot of benchmarks available now if you search the net (so you
don't have to take my word for it). Speed can be on par with lz4 while compression can be on
par with bzip and lzma. There are levels of compression from 1 to 19 with extra ultra levels from 20
to 22.
The reference implementation includes multithread support which roughly doubles the compression
speed with no major impact on compression ratio, this "should" work fine on non-threadsafe
PHP builds as well.
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=77281&edit=1