技术文章 - CS344485
在打开 WebSocket 压缩的情况下使用 ThingWorx Java SDK 时,设备会卡在与 ThingWorx Platform 的永久连接-断开循环中
已修改: 27-Dec-2022
适用于
- ThingWorx Platform 8.1 F000 to 8.5 SP14
说明
- 观察 ThingWorx Platform 中与 Apache Tomcat WebSocket连接相关的大量内存泄漏
- WS连接似乎导致内存泄漏
- Apache Tomcat 连接机制保持WS连接打开并导致内存泄漏
- Tomcat http-nio-<Port>-AsyncTimeout持有大量连接
- JVM Heap被缓慢消耗,直到实例用完堆空间
- 垃圾收集操作不会减少堆的大小
- 当使用 ThingWorx Java SDK 并启用WebSocket压缩且消息大小 = BlockSize 时,连接失败:
ClientConfigurator config = new ClientConfigurator(); config.compressionEnabled(true); config.setBlockSize(8192);
- ThingWorx Java SDK 设备陷入永久的连接-断开循环:
(CONNECTION) Server WebSocket OPEN [session id: 33] (CONNECTION) Server WebSocket CLOSED [session id: 33, reason: CloseReason: code [1009], reason [No async message support and buffer too small. Buffer size: [8,192], Message size: [1,202]]]
这是文章 344485 的 PDF 版本,可能已过期。最新版本 CS344485