簡體   English   中英

Apache httpd作為jboss和其他Apache服務器的負載平衡器

[英]Apache httpd as load balancer for jboss as well another Apache servers

我有一個Apache httpd服務器,例如server1 *(公開),它使用mod_cluster充當某些jboss服務器(在防火牆后)的負載平衡器。 現在,我想在幾台apache服務器上安裝我的靜態內容(images / css / htmls)以及一些cg腳本,例如** server2server3 (位於防火牆后)。

現在,我希望server1以及jboss服務器充當這些server2和server3的負載平衡器。

通過這種安排,需要將對部署在jboss上的應用程序的任何請求都路由到jboss,並且任何靜態內容請求都應發送到server2server3

這是我正在使用的版本

Linux服務器apache httpd-2.2.22 JBOSS-EAP-6

我需要在server1中使用什么機制/配置才能實現? 請查看是否有人可以幫助您。

好吧,您只需添加一個ProxyPass設置。 mod_cluster與ProxyPass兼容,因此您可以同時使用兩者。

例如,如果我希望gif圖片由httpd而不是AS7提供,則可以添加:

ProxyPassMatch ^(/.*\.gif)$ !  

此外,如果您設置

CreateBalancers 1

mod_cluster不會為您創建代理,您必須自己做。 這為您提供了額外的控制。 例如:

ProxyPassMatch ^/static/ !
ProxyPass / balancer://qacluster stickysession=JSESSIONID|jsessionid nofailover=on
ProxyPassReverse / balancer://qacluster
ProxyPreserveHost on

在上述示例中,我們將/ static /內容以外的任何內容代理給工作人員。

  • 注意:如果遇到與Cookie相關的任何問題,則可能需要使用ProxyPassReverseCookieDomain和ProxyPassReverseCookiePath。

  • 注意我的配置中的qacluster 默認值為mycluster ,因此為了命名我的平衡器qacluster,我將其添加到mod_cluster config(在VirtualHost外部):

     ManagerBalancerName qacluster 

如果不清楚,請回復,我可以嘗試進一步闡述。

在使用Apache HTTP服務器獲取靜態內容和使用JBOSS AS 7服務器獲取動態內容(JSF Web應用程序)時,我遇到了同樣的問題。

因此,在Load模塊末尾添加以下屬性可以說明

CreateBalancers 0   

告訴“ 0:在httpd中定義的所有VirtualHost中創建”。

有關更多信息,請訪問: http : //docs.jboss.org/mod_cluster/1.2.0/html/native.config.html#d0e485

並且以下配置解決了圖像和樣式表無法顯示的問題。

<VirtualHost *:80>
  ServerName dev.rama.com
  DocumentRoot "/var/www/assests"
  UseAlias 1
  ProxyPassMatch ^(.*\.bmp)$ !
  ProxyPassMatch ^(.*\.css)$ !
  ProxyPassMatch ^(.*\.gif)$ !
  ProxyPassMatch ^(.*\.jpg)$ !
  ProxyPassMatch ^(.*\.js)$ !
  ProxyPassMatch ^(.*\.png)$ !
 <Directory /var/www/assests>
   Options Indexes FollowSymLinks
   AllowOverride None
   Order allow,deny
   Allow from all
 </Directory>

注意:我們對Web應用程序的所有支持都在/ var / www / assests的HTTP服務器上,而我正在訪問的URL是端口80上的dev.rama.com。

因此,當它看到此ProxyPassMatch ^(。*。css)$時! 網絡服務器知道css文件是http服務器本地的,我們不需要轉到Jboss App服務器。

有關更多信息, 訪問http://httpd.apache.org/docs/2.2/mod/mod_proxy.html#proxypass

暫無
暫無

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

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