WebSphere Commerce 5.4 的分布式配置

發表于:2007-06-13來源:作者:點擊數: 標簽:
引言 WebSphere Commerce 5.4 是運行在 WebSphere Application Server 4.0 上的可擴展度很高并且很靈活的電子商務應用程序 服務器 。本文描述了 WebSphere Commerce 的分布式配置及其與各種操作系統、數據庫和 Web 服務器一起運作的能力。我們指出三層拓撲是

引言

WebSphere® Commerce 5.4 是運行在 WebSphere Application Server 4.0 上的可擴展度很高并且很靈活的電子商務應用程序服務器。本文描述了 WebSphere Commerce 的分布式配置及其與各種操作系統、數據庫和 Web 服務器一起運作的能力。我們指出三層拓撲是提高系統性能和安全性的最佳拓撲結構。您可以通過水平克隆和多 Web 服務器配置來擴展這三層中每一層的容量。為了提高節點硬件資源的利用率,您可以通過垂直克隆。多實例(Multi-instancing)是一種在單系統上托管多個電子商務站點的好策略。如果使用分布式配置的話,您還可以利用防火墻、單點登錄功能以及反轉代理(reverse proxy)來增強電子商務系統的安全性和性能。

回顧 WebSphere Commerce

WebSphere Commerce 包含一個可定制程度很高的電子商務基礎結構。它是一套運行在 WebSphere Application Server 上的集成軟件組件。

最新版的 WebSphere Commerce 有許多卓越的功能和特性:

  • 內置 B2B 和 B2C 模型
  • 目錄和店面的創建與管理
  • 定單管理與洽談記錄管理
  • 成員管理與系統安全性
  • 支持多種語言和多種貨幣
  • 安全的電子支付處理

WebSphere Commerce 支持:

  • 操作系統:AIX®、Solaris、Windows® 2000 以及 Windows NT®
  • 數據庫:DB2® 或 Oracle 8i
  • Web 服務器:IBM HTTP Server、iPlanet Web Server、Lotus® Domino™ Server 以及 Internet Information Server

另外,WebSphere Commerce 還可用于 iSeries™、zSeries™ 和 Linux 平臺。本文討論 WebSphere Commerce 在 AIX、Solaris、Windows 2000 和 Windows NT 操作系統上的分布式配置。



圖 1. WebSphere Commerce 軟件堆棧

WebSphere Commerce 軟件堆棧

WebSphere Commerce 支持多層拓撲結構。在這種拓撲結構中,數據庫服務器和 Web 服務器位于 WebSphere Commerce 服務器的遠程節點上。在本文中,兩層是指數據庫在一個遠程節點上的一種拓撲結構,而如果數據庫服務器和 Web 服務器在兩個單獨的遠程節點上則是三層。

WebSphere Commerce 應用程序服務器支持克隆。垂直克隆是指同樣的應用程序服務器在同一個節點上的一種拓撲結構。水平克隆是指同樣的應用程序服務器在不同節點上的一種拓撲結構。

另外,WebSphere Commerce 還支持多實例。在這種配置中,多個獨立的應用程序服務器運行在同一個節點上。

WebSphere Commerce 可以利用 WebSphere Application Server 的工作負載管理能力來同時與幾個 Web 服務器通信。這樣就可以擴展 Web 服務器層了。

分布式配置

我們看到過許多涉及 WebSphere Commerce 的分布式配置方案。我們使用了下列組件和策略的各種組合:

  • 操作系統:AIX、Solaris、Windows 2000、Windows NT
  • 數據庫:DB2、Oracle 8i
  • Web 服務器:IBM HTTP Server、iPlanet Web Server、Lotus Domino Server、Internet Information Server
  • 多層拓撲:一層拓撲、兩層拓撲、三層拓撲
  • 克?。捍怪笨寺?、水平克隆
  • 多實例
  • Web 服務器群集
  • 防火墻

對每一種方案或方案組合,它們都執行了下列測試步驟:

  1. 安裝并配置了 WebSphere Application Server 4.0.2、一個數據庫和一個 Web 服務器。
  2. 安裝并配置了 WebSphere Commerce。
  3. 安裝并配置了 WebSpehere Payment Manager 3.1.2。
  4. 創建了一個 WebSphere Commerce 實例。
  5. 創建了一個商店歸檔文件并從商店服務(Store Service)發布了一個商店模型(Store Model)。
  6. 按商店模型完成了購物流程。
  7. 執行了卸載。
  8. 開發并瀏覽了產品文檔。


拓撲結構

單層拓撲是最簡單的 WebSphere Commerce 配置。在這種配置中,Web 服務器、商業服務器、WebSphere Payment Manager 服務器以及數據庫服務器全都安裝在同一個節點上(即一個網絡中的同一臺物理機器上)。還需要執行少量的手工配置。在 Windows 2000 和 Windows NT 上,您可以隨 WebSphere Commerce 自動安裝 IBM DB2 和 IBM HTTP Server。

單層拓撲具有潛在的性能問題和安全問題。例如,在這種拓撲結構中四個服務器在運行時都爭用一臺機器的資源。因此,您就不能優化這四個服務器的節點性能。因為 Web 服務器與其他三個服務器在同一個節點上,所以因特網用戶會得到信任,可以訪問該節點上的所有內容??紤]到這些問題,單層拓撲就不是用于生產環境的理想拓撲結構。

在兩層拓撲中,數據庫服務器運行在與 Web 服務器和 WebShpere Commerce 應用程序服務器分離的一個節點上。為了提高安全性,您可以將數據庫服務器放置在防火墻后的一個受信網上(例如,一個內部網上)。因為數據庫服務器運行在它自己的機器上,所以您可以將機器調整到數據庫的最高性能。在這種拓撲結構中,數據庫不會同 WebSphere Commerce 應用程序服務器爭用資源。性能與數據安全性在這種拓撲結構中都得到了提高。



圖 2. 兩層拓撲

兩層拓撲

在 WebSphere Commerce 的三層拓撲中,數據庫服務器、Web 服務器以及 WebSphere Commerce 應用程序服務器運行在分離的機器上。數據庫服務器節點和商業服務器節點被放置在一個或多個防火墻后面。最受歡迎的配置是:在 Web 服務器節點前面設一個防火墻,在 Web 服務器節點和 WebSphere Commerce 服務器節點之間設其它防火墻。Web 服務器被放置在非軍事區(demilitarized zone,DMZ)內。每臺機器支持一個服務器,允許您將支持 Web 服務器、WebSphere Commerce 應用程序服務器和數據庫的機器調整到最高性能。這三個服務器不會互相爭用資源。因此,三層拓撲比兩層拓撲更靈活、更安全。



圖 3. 三層拓撲

三層拓撲

水平克隆

為了增加商業服務器層的容量,請向現有的 WebSphere Commerce 配置添加一些其他的節點。您可以將同樣的 WebSphere Commerce 應用程序服務器安裝在同一 WebSphere Application Server 管理域內的多個節點上。這就叫做水平克隆。每一臺 WebSphere Commerce 應用程序服務器有它自己的 Java 虛擬機(JVM)。水平克隆被典型地用于三層拓撲中。

水平克隆共享同一個 WebSphere Application Server 和同一個商店數據庫。另外,每一個克隆共享同一 Web 服務器、支付服務器以及支付數據庫。只有 WebSphere Commerce 應用程序服務器被克隆。在運行時,通過 Web 服務器的 WebSphere 插件將入局請求分配給群集中的各個 WebSphere Commerce 應用程序服務器。如果 WebSphere Commerce 應用程序服務器宕機了,那么新的請求就會被分發給任何仍然運行著的 WebSphere Commerce 應用程序服務器。已停止的服務器的會話會由其他運行著的服務器自動接管。當 WebSphere Commerce 應用程序服務器回到聯機狀態時,它會自動地與其他在群集中的 WebSphere Commerce 應用程序服務器分擔工作負載。水平克隆將不同物理節點上的多個商業應用程序服務器聚合到一個始終運行著的邏輯商業應用程序服務器中。



圖 4. 水平克隆

水平克隆

圖注:  WAS - WebSphere Application Server 數據庫
WC - WebSphere Commerce 商店數據庫

水平克隆有許多優勢。首先,水平克隆可以通過附加的硬件增加商業應用程序服務器層的吞吐量。工作負載被分配給商業應用程序服務器。其次,商業應用程序服務器子集的故障轉移不會中斷整個系統。電子商務站點一直可用,并且因特網用戶和電子商務站點之間的交互不會被破壞。

垂直克隆

與水平克隆相反,如果 WebSphere Commerce 應用程序服務器駐留的節點有額外資源(例如,額外的內存或對稱多處理功能)的話,您就可以使用垂直克隆。垂直克隆不依賴 WebSphere Commerce 的拓撲結構。本文僅僅討論三層拓撲中的垂直克隆。

在我們的模型中,同樣的 WebSphere Commerce 應用程序服務器添加在同一個節點。這些商業應用程序服務器就是垂直克隆。每臺應用程序服務器運行在單獨的 JVM 上。垂直克隆將大量 JVM 添加到同一個節點。每臺 JVM 使用一塊單獨的內存和一部分對稱多處理器(symmetric multiprocessor,SMP)功能。在這種配置中,硬件資源被利用得最為有效。

與水平克隆相似,垂直克隆共享同一個 WebSphere Application Server 數據庫和同一個商店數據庫。另外,它們共享同一 Web 服務器、支付服務器以及支付數據庫。只有 WebSphere Commerce 應用程序服務器被克隆。在運行時,入局請求被分配給節點上的垂直克隆。如果一個垂直克隆被關閉,則新的請求會被分配給其他正運行著的垂直克隆。會話會被自動地轉移到其他克隆。當垂直克隆再開啟時,它會自動與同一個節點上的其它垂直克隆一起分擔工作負載。垂直克隆將同一個節點上的多個商業應用程序服務器聚合到一個邏輯商業應用程序服務器中,并將邏輯商業服務器擴展到物理機器的全容量。



圖 5. 垂直克隆

垂直克隆

圖注:  WAS - WebSphere Application Server 數據庫
WC - WebSphere Commerce 商店數據庫

垂直克隆具有的一些優勢。首先,垂直克隆能夠提高吞吐量來充分利用節點上的硬件資源。結果,例如機器的內存和 SMP 得到了更高效的使用。其次,垂直克隆提供了故障轉移保護,使得整個系統在垂直克隆的子集停止時仍然能運行。

多實例

不同的商業應用程序服務器運行在同一個節點上就叫做多實例。WebSphere Commerce 支持多實例配置。每一個實例有它自己的 JVM。多實例不依賴 WebSphere Commerce 的拓撲結構。在本文中,討論與三層拓撲有關的多實例。

與垂直克隆不同,每一個實例使用它自己的商店數據庫。像一個克隆,每一個實例與其他實例共享 WebSphere Application Server 數據庫。另外,實例可以共享一個 Web 服務器。如果它們共享同一個 Web 服務器的話,那么 Web 服務器就必須支持多身份(也就是說,多個主機名和 IP 地址對)。每一個 WebSphere Commerce 實例必須有它自己的 Web 服務器身份。另外,每一個實例必須有它自己的支付應用程序服務器,只有其中一個服務器可駐留在同一個節點上作為商業應用程序服務器。各個實例獨立地運行。不共享工作負載也不共享信息。多實例將一個物理節點拆分成多個獨立的邏輯節點。



圖 6. 多實例

多實例

圖注:  WAS - WebSphere Application Server 數據庫
WC1 - WebSphere Commerce 商店數據庫 1
WC2 - WebSphere Commerce 商店數據庫 2

多實例具有獨特的優勢。首先,您可以使用多個實例在同一個節點上托管幾個獨立的電子商務站點,一個站點一個實例。這是電子商務服務提供者的最先選擇。其次,您能夠使用多實例來支持登臺??梢允褂靡粋€實例作為生產服務器,其他的作為登臺服務器。電子商務站點運行時開發可以繼續進行。當測試完成后,只需把數據資產傳送給生產服務器即可。登臺服務器用于下一次開發周期。事實上對繼續運行著的電子商務站點沒有一點破壞。開發在生產環境中完成,因此電子商務站點的新發行版中讓人感到驚奇的東西更少。這對于維護和更新電子商務站點是一個非常有用的功能。

Web 服務器群集

如果商業服務器層是限制吞吐量的瓶頸的話,那么水平克隆和垂直克隆是解決這個問題的理想的解決方法。另外,Web 服務器層的容量和可用性會影響整個系統。WebSphere Commerce 使用 WebSphere Application Server 工作負載管理功能來處理多個 Web 服務器。

與水平克隆類似,您可以將多個 Web 服務器添加到系統來組成 Web 服務器群集。WebSphere Commerce 能夠與多個 Web 服務器同時通信。您可以使用 IBM Network Dispatcher(WebSphere Edge Server 的一個組件)之類的產品將入站請求轉發給 Web 服務器。

IBM Network Dispatcher 和 Web 服務器共享一個公共的群集地址。Web 服務器是從網絡分派器而不是直接從因特網獲得請求。Web 服務器將請求轉發到 WebSpehere Commerce 應用程序服務器并且從 WebSphere Commerce 應用程序服務器獲得響應。Web 服務器將響應從商業應用程序服務器直接發送到因特網。如果 Web 服務器的子集變得不可用,網絡分派器就會把新請求分發給正運行的 Web 服務器。結果,整個系統依然可用。當先前出現故障的 Web 服務器返回到聯機狀態時,網絡分派器就會自動與其他 Web 服務器一同分擔工作負載。多個 Web 服務器和網絡分派器組成一個始終運行的邏輯 Web 服務器。



圖 7. Web 服務器群集

Web 服務器群集

與水平克隆類似,使用 Web 服務器群集有很多優勢。首先,它可以增加 Web 服務器層的吞吐量。網絡分派器可以在 Web 服務器間平衡工作負載。其次,Web 服務器子集的故障轉移不會中斷整個系統。電子商務的可用性得到了最大化。

值得一提的是,在運行備用服務器以最大化網絡分派器的可用性時,IBM Network Dispatcher 不會導致新的單點故障。另一種解決方法就是配置多個網絡分派器以實現互相備份。

IBM Network Dispatcher 不會成為性能的瓶頸。網絡分派器不會為向因特網上的客戶機發送 HTTP 響應而建立 TCP/IP 連接。這個連接直接在 Web 服務器和瀏覽器之間確立。HTTP 請求的帶寬相對 HTTP 響應的帶寬來說通常很小。請求分派和負載均衡通過在內核層轉發信息包來完成。有關網絡分派器的深層討論不屬于本文的范疇。

企業配置

分布式配置的中心思想是:通過擴展提高 WebSphere Commerce 的性能、可用性以及安全性。本文討論了多層拓撲、商業服務器層上的擴展(也就是水平克隆和垂直克?。?、用多個 Web 服務器和 IBM Network Dispatcher 擴展 Web 服務器層以及多實例。

您可以把分布式配置的選項組合在一起來構建一種企業配置。網絡分派器為所有 Web 服務器提供了因特網上的一個公共接口。入局流量在多個 Web 服務器間得到了均衡,每臺 Web 服務器又均衡了多個商業應用程序服務器間的負載。在每個商業服務器節點上存在著多個實例或垂直克隆。數據被存儲在后端數據庫中。插入防火墻,一個插在網絡分派器前面,一個插在 Web 服務器和商業服務器之間。另外,有一個備用網絡分派器和一個數據庫服務器。

數據庫層上進行擴展是可能的。WebSphere Commerce 將數據庫視為一個邏輯數據庫。數據庫層的物理配置對商業應用程序服務器的配置或行為不起作用。為了確保高可用性,您可以配置一個備用數據庫來鏡像正工作著的數據庫。如果主數據庫出現故障,備用數據庫就會接管來為數據服務。AIX 上的 IBM DB2 可以使用一個名為"高可用性群集多處理(high availability cluster multiprocessing,HACMP)”的功能部件來實現這一點。有關數據庫的配置的討論不是本文的范疇。



圖 8. 企業配置

企業配置

作為企業配置的一個例子,在一個設有三個水平克隆的三層拓撲上完成了壓力測試可靠性測試。使用了一個 Web 服務器節點、三個商業服務器節點和一個數據庫服務器節點。操作系統是 Windows 2000。Microsoft IIS 被用作 Web 服務器。WebSphere Payment Manager 3.1.2 被安裝在其中一個商業服務器節點中。IBM DB2 7.2 被用作數據庫服務器??梢钥吹?,B2B 和 B2C 商店模型的案例并發性和完成程度都有了明顯的增加。

結束語

WebSphere Commerce 是一種可擴展度很高并且很靈活的產品。它支持遠程 Web 服務器和遠程數據庫拓撲結構。具有 Web 服務器群集和水平克隆的附加節點支持可擴展的 Web 服務器層和商業服務器層。您可以通過垂直克隆來確保硬件資源能得到充分利用。您也可以通過多實例來托管多個電子商務站點或用來登臺(staging)。防火墻和網絡分派器提供額外的安全性和可擴展性。

(責任編輯:城塵)



原文轉自:http://www.anti-gravitydesign.com

...
国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97