2010-10-07 205 views
17

我是weblogic的新手。weblogic集羣如何工作?

我讀過http://download.oracle.com/docs/cd/E11035_01/wls100/cluster/overview.html並在互聯網上搜索這個主題,但仍然很難理解一些weblogic的聚類概念。

任何人都可以在下面確認/更正我的理解嗎?

  • 一個簇包含部署J2EE應用集羣時,可以駐留在一個或多個物理服務器
  • 一個或多個邏輯服務器,它被連接到一個服務器在該集羣
  • 外部用戶的已部署的應用程序都沒有感知的集羣
  • 該應用程序的日誌文件位於它的部署
  • 如果服務器託管的應用程序出現故障的服務器上的,也沒關係,因爲應用程序是在集羣和另一臺服務器將選擇工作?
  • 如果託管應用程序的服務器失敗,那麼記錄會發生什麼?

也許我弄錯了整個概念。任何人都可以將我指向正確的方向嗎?

非常感謝。

回答

42

我想你應該首先理解域的概念。

該域是羣集的父項。它通常包含一個管理員和一個或多個託管服務器。 現在,羣集是域中某些或全部受管服務器的分組。

希望diagram here helps understanding

一旦你在開發環境中自己配置了一個Domain和一個Cluster,你就會更加了解它。

現在,這裏是回答您的具體問題

•一個羣,可以駐留在 一個或多個物理服務器

真正的一個或多個 邏輯服務器。但讓我們澄清你的'邏輯'服務器的含義。 在羣集中,通常有兩臺或多臺託管服務器。這些服務器運行在自己的JVM中,可以獨立啓動並獨立服務請求。每臺服務器都有唯一的IP:端口地址,並且可以直接從瀏覽器訪問。但是這些服務器實例可以駐留在多個物理服務器上。

•部署J2EE應用程序的 集羣時,它被捆綁在一臺服務器中 羣集

不,它不依賴於一臺服務器。 When you deploy a J2EE app to the Cluster,它將依次部署到該羣集中的每個服務器。 JNDI是集羣範圍的,每個服務器都維護JNDI的本地副本。

您可以通過羣集上或單個服務器上的JNDI查找對象(比如EJB)。另見what types of Objects can be clustered

•部署的應用程序 的外部用戶不知曉的羣集的

真。

但在這種情況下,您應該有一個Apache Web服務器或負載均衡器或DNS服務器,它從瀏覽器接收請求,並在內部將其映射到羣集中的一臺服務器。如果您沒有其中任何一項,則必須將羣集地址定義爲客戶端的DNS名稱或IP地址。請參見「避免監聽地址問題」。http://download.oracle.com/docs/cd/E13222_01/wls/docs103/cluster/setup.html#wp682940

•該應用程序的日誌文件位於 它的部署

真正的服務器,每臺服務器一個weblogic的日誌上。

•如果託管應用程序的服務器出現故障, 也沒關係,因爲應用程序是在 集羣,另一臺服務器將選取 了工作?

不是默認情況下,您必須將其配置爲故障轉移和複製。這是a huge topic which needs separate閱讀

•如果託管應用程序的服務器失敗, 記錄會發生什麼?

記錄停止。您會在日誌中看到一些關機或心跳錯誤,或內存不足或失敗的原因。你將不得不重新啓動服務器 - 並且繼續記錄新文件(取決於你的日誌記錄設置)

+0

非常徹底。非常感謝答案和鏈接。 – Russell 2010-10-08 14:41:34

+0

我會盡快讓某人:) – Russell 2010-10-12 20:30:04

+0

@JoseK,我很期待這麼多天的優秀解釋。你能否解釋你的陳述「但是這些服務器實例可以駐留在多個物理服務器上。」據我所知,我們創建了一個將在一臺物理服務器上的域。那麼受管理的服務器如何能夠脫離域並且坐在不同的物理服務器上? – javafan 2015-03-17 03:22:06