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