為什麼要使用集群?主要有兩方面原因:一是對於一些核心系統要求長期不能中斷服務,為了提供高可用性我們需要由多台機器組成的集群;另外一方面,隨著訪問量越來越大且業務邏輯越來越複雜,單台機器的處理能力已經不足以處理如此多且複雜的邏輯,於是需要增加若干臺機器使整個服務處理能力得到提公升。
如果說乙個web
應用不涉及會話的話,那麼做集群是相當簡單的,因為節點都是無狀態的,集群內各個節點無需互相通訊,只需要將各個請求均勻分配到集群節點即可。但基本所有
web應用都會使用會話機制,所以做
web應用集群時整個難點在於會話資料的同步。
當然你可以通過一些策略規避複雜的額資料同步操作,例如前面說到的把會話資訊儲存在分布式快取或資料庫中統一集中管理,如下圖,每個tomcat
例項只需去寫入或讀取資料庫即可,避免了
tomcat
集群之間的通訊。但這種方式也有不足,要額外引入資料庫或快取服務,同時也要保證它們的高可用性,增加了機器和維護成本。
tomcat集群機制剖析及其生產部署選型
為什麼要使用集群?為什麼要使用集群?主要有兩方面原因 一是對於一些核心系統要求長期不能中斷服務,為了提供高可用性我們需要由多台機器組成的集群 另外一方面,隨著訪問量越來越大且業務邏輯越來越複雜,單台機器的處理能力已經不足以處理如此多且複雜的邏輯,於是需要增加若干臺機器使整個服務處理能力得到提公升。集...
tomcat集群機制剖析及其生產部署選型
為什麼要使用集群?主要有兩方面原因 一是對於一些核心系統要求長期不能中斷服務,為了提供高可用性我們需要由多台機器組成的集群 另外一方面,隨著訪問量越來越大且業務邏輯越來越複雜,單台機器的處理能力已經不足以處理如此多且複雜的邏輯,於是需要增加若干臺機器使整個服務處理能力得到提公升。如果說乙個web 應...
tomcat集群機制剖析及其生產部署選型
為什麼要使用集群?主要有兩方面原因 一是對於一些核心系統要求長期不能中斷服務,為了提供高可用性我們需要由多台機器組成的集群 另外一方面,隨著訪問量越來越大且業務邏輯越來越複雜,單台機器的處理能力已經不足以處理如此多且複雜的邏輯,於是需要增加若干臺機器使整個服務處理能力得到提公升。如果說乙個web應用...