You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
How to use the serializer/parser with compression algorithm support.
How widely these algorithms are used in real-world applications.
What types of content are typically compressed in server applications.
The memory and processing resource efficiency of each algorithm.
Tables like the following could provide a useful at-a-glance overview of compression support across common clients and servers:
+---------------------+------+--------+------+
| CLIENTS | gzip | brotli | zstd |
+---------------------+------+--------+------+
| Chrome / Edge | Y | Y | Y |
| Firefox | Y | Y | Y |
| Safari | Y | Y | Y |
| curl / libcurl | Y | Y | Y |
| reqwest (Rust) | Y | Y | Y |
| requests / urllib3 | Y | Y | Y |
| httpx | Y | Y | Y |
| aiohttp | Y | Y | Y |
| Node fetch / undici | Y | Y | Y |
| OkHttp | Y | Y | Y |
| java.net.http (JDK) | N | N | N |
| HttpClient (.NET) | Y | Y | N |
| Go net/http | Y | N | N |
| cpp-httplib | Y | Y | Y |
| Boost.Beast | N | N | N |
+---------------------+------+--------+------+
| SERVERS | gzip | brotli | zstd |
+---------------------+------+--------+------+
| nginx | Y | 3p | 3p |
| Apache httpd | Y | Y | 3p |
| Caddy | Y | 3p | Y |
| Envoy | Y | Y | Y |
| Traefik v3 | Y | Y | Y |
| HAProxy | Y | N | N |
| Jetty 12.1+ | Y | Y | Y |
| IIS | Y | Y | N |
+---------------------+------+--------+------+
Y = supported (built-in or first-party optional/feature/module)
3p = third-party module/plugin only
N = not supported
Activity