weblogic集羣介紹

 在介紹weblogic集羣之前,先看看傳統的雙機架構,如下圖所示:

 

 這種架構存在以下幾點不足之處:
 
 1)採用主機備機的方式,一般主機使用比較頻繁,導致另外比較空閒,資源利用不均衡。
 
 2)當一個Server發生故障的時候,必須通知用戶使用另外一臺的Server,管理和維護比較麻煩。
 
 3) 用戶切換應用的時候,需重新登錄,有些延誤時間。
 
  weblogic集羣簡介
 什麼是 WebLogic Server 羣集
 
   WebLogic Server 羣集由多個 WebLogic Server 服務器實例組成,這些服務器實例同時運行並一起工作以提高可縮放性和可靠性。對於客戶端而言,羣集是一個 WebLogic Server 實例。構成羣集的服務器實例可以在同一臺計算機上運行,也可以位於不同的計算機上。可以通過向現有計算機上的羣集中添加更多的服務器實例來增加羣集的容量,也可以向羣集中添加計算機以承載遞增的服務器實例。羣集中的每個服務器實例必須運行同一版本的 WebLogic Server
 
 羣集與域是如何相關的
 
   羣集是特定 WebLogic Server 域的一部分。
 
   域是作爲單元進行管理的一組相關的 WebLogic Server 資源。一個域包含一個或多個 WebLogic Server 實例,這些實例可以是羣集實例、非羣集實例,或者是羣集與非羣集實例的組合。一個域可以包含多個羣集。域還包含部署在域中的應用程序組件、此域中的這些應用程序組件和服務器實例所需的資源和服務。應用程序和服務器實例使用的資源和服務示例包括計算機定義、可選網絡通道、連接器和啓動類。
 
   可以使用各種條件將 WebLogic Server 實例組織到域中。例如,可以選擇根據承載的應用程序的邏輯分區、地理方面的考慮或管理的資源的數目或複雜性將資源分配到多個域中。
 
   在每個域中,一個 WebLogic Server 實例可充當管理服務器 - 此服務器實例可配置、管理和監視域中所有其他服務器實例和資源。每個管理服務器只管理一個域。如果一個域中包含多個羣集,則域中的每個羣集都具有相同的管理服務器。
 
   羣集中的所有的服務器實例必須駐留在同一域中;不能將羣集“拆分”到多個域中。同樣,不能在域之間共享配置的資源或子系統。例如,如果在一個域中創建了 JDBC 連接緩衝池,則不能將其用於另一個域中的服務器實例或羣集。(而是必須在另一個域中創建類似的連接緩衝池。)
 
   羣集的 WebLogic Server 實例除提供故障轉移和負載平衡外,其他行爲與非羣集的實例相似。配置羣集的 WebLogic Server 實例所使用的過程和工具與配置非羣集的 WebLogic Server 實例所使用的過程和工具相同。但是,爲了獲得羣集啓用的負載平衡和故障轉移優點,必須符合羣集配置的某些準則。 下圖描述了集羣和域的關係:
 

 
 
 羣集的優點是什麼
 
 可伸縮性
 
 可以動態增加部署在 WebLogic Server 羣集中的應用程序的容量以滿足需要。可以將服務器實例添加到羣集中而不會中斷服務,應用程序將繼續運行而不會影響客戶端和最終用戶。
 
  高可用性
 
   在WebLogic Server 羣集中,當服務器實例失敗時應用程序可繼續進行處理。可通過將應用程序組件部署到羣集中的多個服務器實例,“羣集”這些組件,這樣,如果在其上運行某個組件的服務器實例失敗,則將此組件部署到的其他服務器實例可以繼續進行應用程序處理。
 
   羣集WebLogic Server 實例的選擇對於應用程序開發人員和客戶端是透明的。但是,瞭解啓用羣集的技術基礎結構將有助於編程人員和管理員最大化其應用程序的可伸縮性和可用性。
 
 羣集的關鍵功能是什麼
 
 應用程序故障轉移
 
   簡單的說,故障轉移是當應用程序組件(在下列部分中通常稱作“對象”)正在處理某個特定作業時 某些處理任務部分由於任何原因而變得不可用,已失敗對象的副本將結束此作業。 WebLogic Server 支持自動或手動將羣集服務器實例從一臺計算機遷移到另一臺計算機。可遷移的受管服務器被稱作“可遷移服務器”。本功能適用於要求高可用性的環境。
 
 負載平衡
 
   負載平衡是在環境中跨計算資源與網絡資源平均分發作業和關聯的通信。
 
 哪種類型的對象可以羣集
 
   羣集的應用程序或應用程序組件在羣集中的多個 WebLogic Server 實例上可用。如果已羣集某個對象,則此對象的故障轉移和負載平衡是可用的。將對象均勻部署到羣集中的每個服務器實例,可以簡化羣集管理、維護和故障排除。
 
   Web 應用程序可由不同類型的對象組成,包括企業 Java Bean (EJB),servlet 和 Java Server Pages (JSP)。每種對象類型都具有唯一的一組與控制、調用以及它如何在應用程序內起作用相關的行爲。由於此原因,WebLogic Server 用於支持羣集的方法,以及用於提供負載平衡和故障轉移的方法,會因不同的類型對象而異。可在 WebLogic Server 部署對下列類型的對象進行羣集:
 
 1)Servlet
 
 2)JSP
 
 3)EJB
 
 4)遠程方法調用(Remote Method Invocation,簡稱 RMI)對象
 
 5)Java 消息服務 (JMS) 目標
 
 6)Java 數據庫連接 (JDBC) 連接
 
 什麼類型的對象不可羣集
 
 以下 API 和外部服務不可在 WebLogic Server 內羣集:
 
 1)包含文件共享的文件服務
 
 2)時間服務
 
   在羣集的各個 WebLogic Server 實例中仍可使用這些服務。但是,這些服務不能使用負載平衡或故障轉移功能。
 
 集羣有哪些限制
 
 1)集羣中的WebLogic主機必須使用永久的靜態IP地址。動態IP地址分配不能用於集羣環境。如果服務器位於防火牆後面,而客戶機位於防火牆外面,那麼服務器必須有公共的靜態IP地址,只有這樣,客戶端才能訪問服務器。
 
 2)集羣中的所有WebLogic服務器必須位於同一個局域網,並且必須是IP廣播可到達的。
 
 3)集羣中的所有WebLogic服務器必須使用相同的版本。配置集羣中的服務器,使它們支持所提供的服務。對於使用了JDBC連接的EJB,所有部署了某EJB的服務器必須具有相同的部署與持久化配置。也就是說所有服務器都應該有相同的JDBC配置。所有部署了servlet的主機必須維護一組具有相同ACL的servlet
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章