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
Github issue #5
For my work-load (somewhat redundant JSON) it reduces the transmitted
message sizes to nearly 1/10th their uncompressed sizes so it will be
a huge bandwidth saver.
It basically does the bare minimum to be RFC 7692 compatible. I have
tested the compression with chromium and websocketpp 0.7.0 and seasocks
seems to compress/decompress messages properly in both directions.
Current limitations:
- Can't configure the *_no_context_takeover or *_max_window_bits
extensions. It will only negotiate the default (context takeover
and max window bits in both directions)
- All transmitted messages will be compressed. Ideally you should
be able to opt-out of compressing particular messages (but it
does support clients that compress particular messages)
- Only ever issues one DEFLATE block per message since the
seasocks API doesn't support incremental message construction
(but I believe it does support receiving multiple blocks from
clients that do)
- Various tuning parameters such as buffer size and memLevel
are hard-coded. Some apps might like to customise them
- Requires linking to zlib even if no compression will be used
- No tests :(
0 commit comments