1.概述
1.1 版本
報表伺服器版本 | 功能變更 |
---|---|
11.0.2 | - |
11.0.6 | 「另存備份」邏輯變更 |
11.0.24 | 遠端設計範本鎖定邏輯優化 |
1.2 應用場景
遠端設計時,使用者需要對範本進行編輯,但提示範本已鎖定:
1)無法定位到是哪個使用者或者IP正在編輯範本,影響範本開發進度。
2)無法解除鎖定,只能透過重啟伺服器解決
1.3 功能簡介
11.0.2 之前版本,僅提示使用者「範本已鎖定」。11.0.2 及之後版本,優化遠端設計範本鎖定功能。
注:報表伺服器、遠端使用者設計器版本均需在 11.0.2 及以上版本,否則僅提示鎖定,無法實現以下功能。
1)支援查看被鎖定範本的編輯者和IP地址。
2)支援備份被鎖定範本,以防影響範本開發速度。
3)支援超管解鎖範本,正在編輯的使用者可另行備份範本。
2.範本鎖定的原因
遠端設計時,範本鎖定的原因有以下幾種:
1)多人編輯:
使用者A和使用者B同時遠端連結了該工程,使用者A開啟了X範本。使用者B開啟X範本時,提示範本已鎖定。
2)開發者除錯:
使用者A和使用者B同時遠端連結了該工程,使用者A在開發者除錯狀態下編輯X範本。使用者B開啟X範本時,提示範本已鎖定。
3.範本鎖定的提示
當範本鎖定時,範本名稱後出現(已鎖定)字樣。對範本進行重新命名和刪除操作時,提示被鎖定範本無法刪除。/被鎖定範本無法重新命名。。如下圖所示:
其他使用者雙擊嘗試開啟編輯該範本時,跳出提示框。
1)顯示該範本的鎖定者、IP地址、狀態獲取時間。方便使用者和鎖定者進行溝通。
2)提示該範本已被鎖定,是否另存複本並開啟?。
點選另存複本,則可自訂位置另存該範本,範本名稱為(複本)+範本原名稱。
點選儲存後,自動開啟所建立複本檔案。使用者擁有該複本範本檔案的編輯權限。如下圖所示:
4.解除範本鎖定
4.1 超管解除鎖定
若範本被鎖定,超級管理者遠端連結該工程,選中被鎖定範本,檔案區右上角出現解鎖按鈕。
點選解除鎖定按鈕,跳出提示框是否確認解除鎖定?可能會造成範本資料丟失等嚴重後果,點選我已知曉,確認解除,範本則解除鎖定。如下圖所示:
4.2 設計器端備份範本
解除鎖定時,鎖定者若正在設計器端編輯該範本.當儲存該範本時,跳出提示框當前範本已被超級管理者強制解除鎖定,是否生成備份檔案。
點選另存備份,則可自訂位置另存該範本,範本名稱為(備份)+範本原名稱。使用者擁有該複本範本檔案的編輯權限。如下圖所示:
注:若備份時跳出提示框「磁碟空間不足,備份檔案失敗」,這是由於報表工程伺服器磁碟空間不足,無法生成備份檔案。
4.3 開發者除錯提示
解除鎖定時,鎖定者若正在瀏覽器端開發者除錯該範本。
1)當鎖定者在開發者除錯介面儲存該範本時,跳出提示框當前範本已被超級管理者強制解除鎖定,更改無法儲存。
2)解除鎖定30S後,開發者除錯介面跳出提示框當前範本已被超級管理者強制解除鎖定,更改無法儲存。
3)原本在開發者除錯狀態下,設計器端無法對範本進行任何操作。範本被超管解除鎖定後。
若此時範本沒有被其他人開啟,點選設計器的重新整理按鈕,即可解除開發者除錯時的鎖定狀態,允許編輯範本。
若此時範本被其他人開啟了,點選設計器的重新整理按鈕,仍然處於鎖定狀態,只可關閉該範本。
5.注意事項
5.1 網路中斷導致範本鎖定
當使用者 A 遠端設計開啟一張範本 A,此時故意斷開使用者 A 的網路,設計器介面保持不動。在另一裝置的使用者 B 遠端設計開啟該範本 A(使用者 B查看範本 A 時範本可能是鎖定狀態,等待 2min 左右,重新整理目錄樹,鎖定狀態會解除),當使用者 A 重新連結網路,回到設計器介面,修改範本A 內容後觸發儲存操作,將會出現提示彈窗如下圖所示:
1)選擇另存備份,將彈出備份儲存資料夾地址,確定後備份範本並關閉。
2)選擇取消,將不儲存範本。
5.2 未配置ip_hash導致範本鎖定失效
問題描述:
叢集環境下,多個使用者開啟範本不鎖定。
原因分析:
叢集負載均衡,websocket未配置ip_hash
解決方案:
正確配置負載均衡。參考文檔:Nginx.conf 配置手冊
nginx轉發websocket埠時,需要配置ip_hash,如下圖所示: