在 v1.8.0-rc2
更新中, gws
实现了上下文接管和可配置的滑动窗口大小, 至此 WebSocket RFC 7692 全部特性都得到了实现.
连续发送相似内容的场景, 上下文接管可以带来非常高的压缩率, 以斗破苍穹电子书为例, 原文 14.93MB, 每次写入 4KB 直到 EOF:
context_take_over, window_bits=12, size=4.69MB
context_take_over, window_bits=15, size=0.27MB
no_context_take_over, window_bits=15, size=7.17MB
gws
和 gorilla
的差异对比:
Features | gorilla/websocket | lxzan/gws |
---|---|---|
RFC 6455 | 支持 | 支持 |
RFC 7692 | 部分支持, 不支持上下文接管和可配置的滑动窗口大小 | 全部支持 |
并发写 | 不支持 | 支持 |
异步写 | 不支持 | 支持 |
并行消息处理 | 不支持 | 支持 |
预备帧 | 支持 | 支持 |
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.