Tomcat

如何通過負載平衡告訴 mod_jk 停止使用特定的 tomcat 實例?

  • February 9, 2019

我已經使用帶有負載平衡的 mod_jk 設置了 apache/tomcat8。假設我想更新其中一個 tomcat8 實例,也許更新 tomcat 本身,那麼我如何告訴 mod_jk 停止向該 tomcat 實例發送任何新請求,同時讓現有使用者完成他們正在做的任何事情(粘性會話)。

您可以使用“啟動”屬性控制工作人員的狀態/行為。

https://tomcat.apache.org/connectors-doc/common_howto/loadbalancers.html#Advanced_Load_Balancer_Worker_Properties

出於維護目的,您可以告訴負載均衡器不允許某些成員上的任何新會話,甚至根本不使用它們。這是由成員屬性啟動控制的。值Active允許正常使用成員,disabled不會在其上創建新會話,但仍允許粘性請求,stopped將不再向成員發送任何請求。在維護之前的某個時間將啟動從“活動”切換到“禁用”將耗盡工作人員的會話並最大限度地減少中斷。根據應用程序的使用模式,排空需要幾分鐘到幾小時。在維護之前立即將工作人員切換到停止狀態將減少 mod_jk 記錄錯誤錯誤。

引用自:https://serverfault.com/questions/953092