tomcat - 对用 Java 编写的 Websocket 服务器和客户端端点之间交换的消息实现 gzip 压缩

标签 tomcat websocket gzip jetty-9 jsr356

我没有看到关于 javax.websocket.Session 的 getBasicRemote() 和 getAsyncRemote() 的 sendText() 和 sendBinary() 方法的具体文档,说明如何使用 gzip 压缩来传输消息。我正在编写一个高性能的消息传递应用程序,它每秒可以在对等点之间发送数百条 1000 条消息。这些消息中有些很小,有些很大,可以使用 gzip 压缩(减少 90% 的数据传输)。是否有任何特殊的扩展可用于在 Jetty 9 或任何其他容器中使这种按消息压缩工作?

注意:我不是在开发基于浏览器的 websocket 解决方案。客户端和服务器是严格的 Java 客户端,可以与任何 JSR-356 Websocket 容器实现一起工作。

最佳答案

RFC 7692 (WebSocket 的压缩扩展) 是每条消息压缩的官方规范。 Jetty 9 支持该规范。

关于tomcat - 对用 Java 编写的 Websocket 服务器和客户端端点之间交换的消息实现 gzip 压缩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38682159/

相关文章:

java - STS Tomcat Deploy 导致 IllegalArgumentException

performance - Netty 数据流性能 + websocket 性能

python - Flask/Tornado 中的 Gzip 响应

php - Gzip 不适用于本地开发

java - 从 Tomcat servlet 运行 sudo 命令

java - 运行 gradle "war"不包括依赖的 intellij 项目

java - 如何在 Junit 中使用嵌入式 Tomcat 7 测试基于 servlet 3.0 注释的 servlet

node.js - socket.io 重新连接示例

javascript - nodejs 不发送 websocket 到浏览器

gzip - 为什么 gzip 文件大小每次都不同?