1. 概述
1.1 版本
FineDataLink 版本 | 功能变更 |
---|---|
4.0 | - |
1.2 功能简介
本文将从以下几点为大家介绍 websocket。
1)为什么要设置 websocket
2)不设置 websocket 会怎么样
3)怎么设置 websocket
4)websocket 设置不生效怎么排查
2. WebSocket的作用
WebSocket 可以让服务器端主动向客户端推送数据。
在 WebSocket API 中,客户端和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。
WebSocket 主要用于刷新 token、用户被踢出、平台消息、内存和 CPU 显示、定时任务运行日志推送、数据连接编辑状态的确定。
3. WebSocket 端口配置
3.1 默认端口
FineDataLink 默认配置了 WebSocket 端口和 WebSocket 转发端口。
根据不同的工程环境,两个端口的生效顺序不完全相同。按照生效顺序,会依次尝试监听,如果有一个端口监听成功,则不再尝试其他端口。
注:从 4.0.6 之前的版本升级到 4.0.6 及之后的版本,WebSocket端口/转发端口不会改变,以之前的版本为准。
端口 | ID | 4.0.6及之后版本的默认值 | 4.0.6之前版本的默认值 | 是否支持设置多个值 |
---|---|---|---|---|
Websocket 端口 | WebSocketConfig.port | ["58888", "59888"] | ["38888", "39888"] | 支持 |
Websocket 转发端口 | WebSocketConfig.requestPorts | 58889 | 38889 | 支持 |
3.2 配置方法
用户可根据自己的工程情况选择合适的 WebSocket 端口配置方法,详情请参见下表:
方案 | 场景 | 配置方法 |
---|---|---|
容器Websocket方案 | FineDataLink 内置了一个容器Websocket方案 无需任何用户操作,系统可自动使用 Web 容器自带的 WebSocket 进行连接,端口复用 http 端口
| 容器Websocket方案 |
socket.io方案 | 单机环境配置 WebSocket 端口 | 单机配置WebSocket端口 |
HTTPS 环境配置 Websocket 端口 | HTTPS环境配置WebSocket | |
仅对外开放一个端口 | 不额外给WebSocket对外开放端口 |
4. Websocket 连接失败
如果按照 3.2 节的 WebSocket 端口配置方法配置后,websocket仍然连接失败,请参考文档排查:WebSocket连接失败