欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

簡單測試Apache是如何完成負載均衡策略配置

 更新時間:2014年01月08日 15:53:05   投稿:whsnow  
公司的系統(tǒng)在最初設計的時候就已經(jīng)考慮到了負載均衡的規(guī)劃,此次 就是對負載均衡的一個簡單測試

隨著訪問量的不斷提升,以及對響應速度要求的苛刻,進行負載均衡設置就顯得尤為重要了。公司的系統(tǒng)在最初設計的時候就已經(jīng)考慮到了負載均衡的規(guī)劃,www靜態(tài)服務器配置了兩臺,由于初期項目時間緊,并且訪問量并不高,所以當時只用了一臺,另一臺在內網(wǎng)中,只是進行了同步,并為發(fā)揮出效用來。此次就是對負載均衡的一個簡單測試。

先介紹一下apache mod_proxy_balancer的幾個配置規(guī)則:

將Apache作為LoadBalance前置機分別有三種不同的部署方式,分別是:

1 )輪詢均衡策略的配置
進入Apache的conf目錄,打開httpd.conf文件,在文件的末尾加入:
ProxyPass / balancer://proxy/ #注意這里以”/”結尾

復制代碼 代碼如下:

<Proxy balancer://proxy>
BalancerMember http://192.168.6.37:6888/
BalancerMember http://192.168.6.38:6888/
</Proxy>

我們來觀察上述的參數(shù)“ProxyPass / balancer://proxy/”,其中,“ProxyPass”是配置虛擬服務器的命令,“/”代表發(fā)送Web請求的URL前綴,如:http://myserver/或者http://myserver/aaa,這些URL都將符合上述過濾條件;“balancer://proxy/”表示要配置負載均衡,proxy代表負載均衡名;BalancerMember 及其后面的URL表示要配置的后臺服務器,其中URL為后臺服務器請求時的URL。以上面的配置為例,實現(xiàn)負載均衡的原理如下:

假設Apache接收到http://localhost/aaa請求,由于該請求滿足ProxyPass條件(其URL前綴為“/”),該請求會被分發(fā)到后臺某一個BalancerMember,譬如,該請求可能會轉發(fā)到 http://192.168.6.37:6888/aaa進行處理。當?shù)诙€滿足條件的URL請求過來時,該請求可能會被分發(fā)到另外一臺BalancerMember,譬如,可能會轉發(fā)到http://192.168.6.38:6888/。如此循環(huán)反復,便實現(xiàn)了負載均衡的機制。

2) 按權重分配均衡策略的配置
ProxyPass / balancer://proxy/ #注意這里以”/”結尾
復制代碼 代碼如下:

<Proxy balancer://proxy>
BalancerMember http://192.168.6.37:6888/ loadfactor=3
BalancerMember http://192.168.6.38:6888/ loadfactor=1
</Proxy>

參數(shù)”loadfactor”表示后臺服務器負載到由Apache發(fā)送請求的權值,該值默認為1,可以將該值設置為1到100之間的任何值。以上面的配置 為例,介紹如何實現(xiàn)按權重分配的負載均衡,現(xiàn)假設Apache收到http://myserver/aaa 4次這樣的請求,該請求分別被負載到后臺服務器,則有3次連續(xù)的這樣請求被負載到BalancerMember為http://192.168.6.37:6888的服務器,有1次這樣的請求被負載BalancerMember為http://192.168.6.38:6888后臺服務器。實現(xiàn)了按照權重連續(xù)分配的均衡策略。

3) 權重請求響應負載均衡策略的配置
ProxyPass / balancer://proxy/ lbmethod=bytraffic #注意這里以”/”結尾
復制代碼 代碼如下:

<Proxy balancer://proxy>
BalancerMember http://192.168.6.37:6888/ loadfactor=3
BalancerMember http://192.168.6.38:6888/ loadfactor=1
</Proxy>

參數(shù)“lbmethod=bytraffic”表示后臺服務器負載請求和響應的字節(jié)數(shù),處理字節(jié)數(shù)的多少是以權值的方式來表示的。 “loadfactor”表示后臺服務器處理負載請求和響應字節(jié)數(shù)的權值,該值默認為1,可以將該值設置在1到100的任何值。根據(jù)以上配置是這么進行均 衡負載的,假設Apache接收到http://myserver/aaa請求,將請求轉發(fā)給后臺服務器,如果BalancerMember為http://192.168.6.37:6888后臺服務器負載到這個請求,那么它處理請求和響應的字節(jié)數(shù)是BalancerMember為http://192.168.6.38:6888 服務器的3倍(回想(2)均衡配置,(2)是以請求數(shù)作為權重負載均衡的,(3)是以流量為權重負載均衡的,這是最大的區(qū)別)。

看明白了沒有,根據(jù)不同的需要,可以按這三種方式進行配置。我按照第三種配置的,感覺上這種對于負載的均衡更全面合理。我的配置很簡單,如下:

先配置均衡器:
復制代碼 代碼如下:

<Proxy balancer://proxy>
BalancerMember ajp://127.0.0.1:8009/ loadfactor=1
BalancerMember http://192.168.10.6:8083/ loadfactor=1
</Proxy>

其中http://192.168.10.6:8083實際上是另外一個端口啟動的apache,為了測試,它就簡單的直接轉發(fā)所有請求到tomcat。
對于上次的VirtualHost進行以下的修改即可:
復制代碼 代碼如下:

<VirtualHost *:80>
ServerName www.tsingyuan.cn
DocumentRoot /www
DirectoryIndex index.html index.jsp
<Directory “/www”>
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<Directory “/control”>
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
ProxyPass /nxt/images/ !
ProxyPass /nxt/js/ !
ProxyPass /nxt/css/ !
#ProxyPass / ajp://127.0.0.1:8009/
#ProxyPassReverse / ajp://127.0.0.1:8009/
ProxyPass / balancer://proxy/
ProxyPassReverse / balancer://proxy/
</VirtualHost>

注釋掉之前的ajp轉發(fā),而配置成通過balancer去處理。

通過觀察access log,的確有部分請求發(fā)送到了8083端口的apache上,而有部分是直接ajp轉發(fā)到tomcat上了。

以上是本文關于Apache 如何完成負載均衡策略配置的詳細敘述,希望本文對廣大php開發(fā)者有所幫助,感謝閱讀本文。

相關文章

最新評論