2013-02-06 84 views
2

我在Linux機器中安裝了Jboss服務器。我在windows機器上配置了apache服務器。我能夠在我的modcluster管理器控制檯中看到所有jboss服務器節點。 我在所有jboss服務器上部署了一個駱駝應用程序。我用2,4,6個節點完成了性能測試。但是,沒有性能差異.......mod集羣中的負載均衡不起作用

找到JBoss的配置

<subsystem xmlns="urn:jboss:domain:modcluster:1.0"> 
      <mod-cluster-config proxy-list="x.x.x.x:6666" advertise="false"> 
       <dynamic-load-provider> 
        <load-metric type="busyness"/> 
       </dynamic-load-provider> 
      </mod-cluster-config> 
     </subsystem> 

爲節點的並行執行,無論我做任何其他的配置...

謝謝預先......

回答

0

with sticky-session =「true」(默認),平衡器一直向會話所屬的特定節點發送請求,只要它是健康的。

如果你告訴我你是如何測試的,特別是:多少個客戶端與多少個請求,或者沒有多少個請求等,我將能夠幫助你。

此外,考慮編輯容量屬性負載度量元素。

順便說一下:「忙碌」考慮線程池中的線程正在被服務請求佔用。你可能會發現這不是你係統的瓶頸。您可能需要添加,請求或其他度量。見http://docs.jboss.org/mod_cluster/1.2.0/html_single/

+0

嗨,我想測試的cxf示例與2,3,4,6 jboss節點與10-100000消息和這些節點與Modcluster(Apache服務器)連接。我用mpm配置了Apache服務器 ThreadsPerChild 100 MaxRequestsPerChild 10 如果在Apache服務器中需要其他配置.. –

2

1 - 下載mod_cluster的最後一個版本在this link並解.. 2 - 在像上面的httpd.conf文件配置mod_cluster ..

Listen ##PUT THE BALANCER IP HERE##:80 

############### mod_cluster Setting - STARTED ############### 

<IfModule ssl_module> 
SSLRandomSeed startup builtin 
SSLRandomSeed connect builtin 
</IfModule> 
# MOD_CLUSTER_ADDS 
# Adjust to you hostname and subnet. 
<IfModule manager_module> 
    Listen ##PUT THE BALANCER IP HERE##:6666 
    ManagerBalancerName mycluster 
    <VirtualHost ##PUT THE MACHINE IP HERE##:6666> 
    <Location /> 
    Order deny,allow 
    Deny from all 
    Allow from 192.168.0 
    </Location> 

    KeepAliveTimeout 300 
    MaxKeepAliveRequests 0 
    AdvertiseFrequency 5 
    EnableMCPMReceive 

    <Location /mod_cluster_manager> 
     SetHandler mod_cluster-manager 
     Order deny,allow 
     Deny from all 
     Allow from 192.168.0 
    </Location> 

    </VirtualHost> 
</IfModule> 

############### mod_cluster Setting - ENDED ############### 

3 - 設置您的每一個的JBoss節點名稱

<server name="node1" xmlns="urn:jboss:domain:1.2"> 

4 - 添加實例id屬性在網絡子系統在兩個獨立的節點如下圖所示

<subsystem xmlns="urn:jboss:domain:web:1.1" instance-id="${jboss.node.name}" default-virtual-server="default-host" native="false"> 
    <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/> 
    <connector name="ajp" protocol="AJP/1.3" scheme="http" socket-binding="ajp"/> 
    . 
    . 
    . 
</subsystem> 

5 - 在modcluster子系統的mod-cluster-config中的屬性中添加代理列表,該列表將具有運行Apache服務器(平衡器)的IP地址和端口,以便JBoss服務器可以與之通信它,因爲在這兩個獨立的節點

<subsystem xmlns="urn:jboss:domain:modcluster:1.0"> 
    <mod-cluster-config advertise-socket="modcluster" proxy-list="##PUT THE BALANCER IP HERE##:80"> 
    . 
    . 
    . 
    </mod-cluster-config> 
</subsystem> 

6如下圖所示 - 現在你可以去http://BALANCER_IP:80和測試,並管理與mod_cluster JBoss的情況下,去http://BALANCER_IP:6666/mod_cluster_manager

**數據:如果你想要在獨立模式下運行jboss,您不能在ip 0.0.0.0中使用「-b」標誌來偵聽請求f rom所有的IP ..我建議你使用運行jboss本身的機器的IP