1. 概述
1.1 版本
BI 伺服器版本 |
---|
5.1 |
1.2 應用場景
本文將介紹在單機環境下,如何配置 WebSocket 埠。
注:5.1.20 及之後版本的BI工程,新增了一個容器Websocket方案。推薦優先查看是否可使用該方案:容器Websocket方案
無需任何使用者操作,無需任何手動配置,無需額外開啟埠,系統可自動使用Web容器自帶的WebSocket進行連結,埠複用http埠。
2. 範例
2.1 修改欄位值
超級管理者可透過「fine_conf_entity視覺化配置插件」修改 WebSocket 埠。重啟伺服器後設定生效。
注:修改 FineDB 資料庫表欄位值的方法請參考 FineDB 常用表欄位修改 。
埠 | JAR 包 | ID | 預設值 | 設定範圍 | 是否支援 設定多個值 |
---|---|---|---|---|---|
Websocket 埠 | - | WebSocketConfig.port | ["48888", "49888"] | 參數值為埠陣列["port1","port2"] port均屬於區間(1024,65535] | 支援 |
Websocket 轉發埠 | 2019-11-08 之前 | WebSocketConfig.requestPort | 48889 | 支援 | |
2019-11-08 及之後 | WebSocketConfig.requestPorts | 48889 | 支援 |
設定埠號時有一些注意事項:
1)埠號可設定範圍:1024~65535,若為多個值,設定格式為:[埠號1,埠號2,埠號3]。
2)建議「WebSocket埠」設定多個值,作為備用,防止一臺伺服器部署了多個工程,埠被佔用。
3)不要設定埠號為伺服器遠端連結埠 3389。
4)不要重複設定某個埠號既是 WebSocket 埠,又是 WebSocket 轉發埠。
5)若 WebSocketConfig.port、WebSocketConfig.requestPort、WebSocketConfig.requestPorts 欄位後面有空格,配置不生效。
6)若 WebSocketConfig.port、WebSocketConfig.requestPort、WebSocketConfig.requestPorts 大小寫錯誤,配置不生效。
7)WebSocketConfig.requestPort 和 WebSocketConfig.requestPorts 不能同時存在於 fine_conf_entity 表中,否則會出錯。
2.2 開放埠
若防火牆開啟,可關閉防火牆,或者單獨開放埠。
若雲伺服器有安全組或者類似的內容,需要設定埠對外開放。
2.3 重啟工程
重啟 FineBI 工程。
重啟工程時,需要殺死工程下運作的進程,等待 2 分鐘埠釋放後,再重啟工程,否則有可能重啟失敗。
2.4 效果預覽
按照WebSocket埠>>WebSocket轉發埠的順序,即如果使用預設值埠,按照「48888,49888,48889」的順序依次嘗試監聽。
如果有一個埠建立監聽成功,則不再嘗試其他埠。
如果所有埠都無法與系統伺服器建立監聽,會進入部署精靈頁面,引導修改監聽埠列表,相關功能會受到影響。
此時請重新配置WebSocket埠和WebSocket轉發埠,直到有可用埠。