本文中含有需要您注意的重要提示信息,忽略該信息可能對您的業務造成影響,請務必仔細閱讀。
線上應用在服務更新部署過程中,需要盡量保證客戶端無感知,即從應用停止到重啟恢復服務的階段不能影響正常的業務請求。由于微服務應用自身調用特點,在高并發下,服務提供端應用實例的直接下線,會導致服務消費端應用實例無法實時感知下游實例的實時狀態,因而出現繼續將請求轉發到已下線的實例,從而出現請求報錯,導致流量有損。因此,在應用執行部署、停止、回滾、縮容和重置時,需要通過無損下線配置來保證應用正常關閉。
前提條件
已創建微服務應用。具體操作,請參見創建應用。
根據應用類型判斷是否需要開通微服務引擎 MSE(Microservices Engine)微服務治理專業版。具體操作,請參見開通MSE微服務治理。
存量應用:2023年11月08日00:00前創建的應用,無需開通MSE服務治理專業版或企業版,后續部署應用也不會產生MSE計費。
新增應用:2023年11月08日00:00起新建的應用,使用無損上下線與灰度規則功能需要開通MSE微服務治理專業版,使用限流降級功能需要開通MSE微服務治理企業版。用戶升級MSE企業版后,未開啟限流降級功能的應用依然按照專業版進行計費,只有開啟限流降級功能的應用才會按照企業版計費。
關于MSE微服務治理計費的更多信息,請參見計費概述和【產品變更】SAE集成的MSE微服務治理功能商用通知。
設置無損下線
存量應用
重新部署應用后,該應用將會被重啟。為避免業務中斷等不可預知的錯誤,請在業務低峰期執行部署操作。
更新應用配置的路徑因實例數的不同而不同。本文以實例數大于等于1為例,介紹如何配置目標功能。當實例數等于0時的操作路徑,請參見更新應用。
登錄SAE控制臺。
在左側導航欄,選擇 ,在頂部菜單欄選擇地域,然后單擊具體應用名稱。
在基本信息頁面右上角,單擊部署應用。
在部署應用頁面,展開微服務無損上下線區域,在微服務無損下線頁簽,打開啟用微服務無損下線功能開關,然后單擊微服務無損下線配置向導。
在無損下線參數配置頁簽,設置相關信息,單擊預覽配置。
配置項
說明
是否開啟優雅下線服務治理能力
默認為true。取值說明如下:
true:開啟。
false:關閉。
SAE優雅下線功能占用端口
默認端口為54199。如果此默認端口和應用的端口產生沖突,請配置新的端口。
收到Spring的ContextClosedEvent事件后,進程動態等待關閉的時間
默認取值為5000,即進程收到關閉信號后,會等待5000 ms再關閉。
配置該參數后,需要設置是否開啟自動等待功能參數為false。
是否開啟自動等待功能
默認為true。取值說明如下:
true:開啟。進程可能會隨著流量停止而提前關閉。
false:關閉。進程直接等待收到Spring的ContextClosedEvent事件后,進程動態等待關閉的時間所配置的值的對應時長后再關閉。
在預覽配置頁簽,確認相關配置,單擊確認。
配置的參數會自動渲染到環境變量、生命周期管理的優雅下線超時設置。更多信息,請參見設置環境變量和設置應用生命周期管理。
配置完成后,單擊確認。
新增應用
接入MSE后,默認開啟無損下線功能。本文介紹如何打開無損下線功能中的主動通知功能。
登錄SAE控制臺。
在左側導航欄,選擇 ,在頂部菜單欄選擇地域,然后單擊具體應用名稱。
在左側導航欄,選擇
。(可選)在無損上下線頁面的無損下線區域,打開主動通知開關。
說明如果您是第一次使用該功能,需要在該頁面單擊開啟微服務治理并刷新頁面,才能配置無損上下線。
開啟后,應用在收到下線請求時,會主動通知消費方,避免下線過程中消費方繼續訪問即將下線的應用實例。
關閉無損下線
如果您的應用已設置無損下線功能,可以通過以下方式關閉:
存量應用
在應用基本信息頁面,單擊部署應用或修改應用配置,然后在微服務無損上下線區域,關閉啟用微服務無損下線功能,然后單擊確認。
新增應用
無損下線功能接入MSE后默認開啟,不支持單獨關閉。
如果您無需使用微服務治理功能,為避免產生不必要的MSE費用,可以在應用基本信息頁面右上角,選擇 ,根據頁面提示信息,關閉微服務治理功能。
警告關閉微服務治理功能后,除服務列表外,其他微服務治理功能(包括無損上下線、灰度規則和限流降級)將無法使用,且關閉過程中會觸發一次應用重啟,請自行判斷業務風險后再進行操作。