簡體   English   中英

集群 Apache Tomcat6

[英]Clustering Apache Tomcat6

我有一個使用 Tomcat6+Struts+Hibernate+MySql 的 Java Enterprise Web 應用程序。 目前它已公開啟動並在單個服務器上運行。 為了解決性能問題,我們應該將應用程序移至集群環境。 無論如何我想使用Tomcat6集群如下:

  • 負載平衡機,包括 web 服務器 (Apache+mod_proxy) 作為前端
  • 一些應用服務器機器,每台運行一個 tomcat6 實例
  • 一個 session 管理后端
  • 最后是一個數據庫服務器

像這樣的東西

這個

負載平衡器機器接收所有請求,並根據平衡算法將它們重定向到相應的 tomacat6 機器。 完成業務部分后,響應將返回給網絡服務器,最后返回給用戶。 在這種情況下,前端機器處理所有請求和響應,因此它將成為應用程序中的瓶頸點。

在Apache Tomcat集群中,有沒有辦法實現負載均衡機制和web服務器? 我的意思是在前端放置一個負載均衡器,並將請求/響應處理部分留給多個 web 服務器。

Tomcat 不支持內置集群。發生的是負載均衡器分發請求,因此各種 Tomcat 實例不需要知道發生了什么。

您要做的是確保您的應用程序可以處理它。 例如,您必須意識到緩存可能是陳舊的。

假設實例 1 的緩存中有 object X,並且 X 被實例 2 上處理的請求修改。實例 2 中的緩存將是正確的,來自實例 1 的緩存現在將是陳舊的。

解決方案是使用支持集群的緩存或對可修改的實例禁用緩存。 但這對 Tomcat 無關緊要。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM