亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

JBoss4.0.5集群實現(xiàn)---負載均衡篇

系統(tǒng) 2166 0


?????? 如果要實現(xiàn)JBoss各節(jié)點的負載均衡就需要在集群前置負載均衡器,均衡器是所有請求的入口,將請求按照定義的負載規(guī)則分配到各節(jié)點。負載均衡器可以實現(xiàn)故障轉(zhuǎn)移和狀態(tài)同步。我選擇目前比較流行的Apache Http Server作為集群中的負載均衡器,通過mod_jk插件與Jboss節(jié)點通訊。

?

1.安裝Apache Http Server

?

下載 httpd-2.2.4.tar.gz

?

解壓文件:

[root@webserver local]# tar -zxvf httpd-2.2.4.tar.gz

?

切換到解壓目錄執(zhí)行編譯

[root@webserver httpd-2.2.4]#./configure -prefix=/usr/local/apache2 -enable-so -enable-setenvif=shared -enable-rewrite=shared -enable-proxy=shared -enable-auth-anon -enable-file-cache=shared -enable-cache=shared -enable-disk-cache=shared -enable-mem-cache=shared -with-mpm=prefork?

[root@webserver httpd-2.2.4]#make

[root@webserver httpd-2.2.4]#make install

?

增加apache用戶組

[root@webserver httpd-2.2.4]#groupadd apache
[root@webserver httpd-2.2.4]#useradd apache –g apache

?

修改apache2目錄用戶與組

[root@webserver local]# chown -R apache:apache apache2

?

修改httpd.conf文件

[root@webserver apache2]# vim conf/httpd.conf
將User daemon和Group daemon改為User apache和Group apache

?

啟動apache

[root@webserver apache2]#bin/apachectl start

訪問:http://webserver.localdomain/



?

?

?

?看到上圖表示安裝成功!

?

2.下載并配置mod_jk模塊

下載mod_jk

http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/linux/jk-1.2.30/i586/mod_jk-1.2.30-httpd-2.2.X.so

?

將文件重命名為mod_jk.so 拷貝至/usr/local/apache2/modules/

添加執(zhí)行權限

[root@webserver apache2]#chmod a+x modules/mod_jk.so

?

創(chuàng)建mod_jk.conf文件

[root@webserver apache2]#vim conf/mod_jk.conf

文件內(nèi)容如下:

LoadModule jk_module modules/mod_jk.so
JkWorkersFile conf/workers.properties

JkLogFile logs/mod_jk.log

JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories

JkRequestLogFormat "%w %V %T"
JkMountFile conf/uriworkermap.properties
JkShmFile logs/jk.shm

?

大家重點注意表紅部分:

LoadModule jk_module modules/mod_jk.so
表示apache加載jk_module模塊的路徑

JkWorkersFile conf/workers.properties

表示jk模塊的配置文件路徑

JkMountFile conf/uriworkermap.properties
表示jk模塊映射文件路徑,可以通過 uriworkermap.properties 文件配置要映射的應用

?

創(chuàng)建uriworkermap.properties文件

[root@webserver apache2]#vim conf/uriworkermap.properties

內(nèi)容如下:

/*=loadbalancer

?

如果你希望apache作為單獨的負載均衡器的話,可以采用/*=loadbalancer的配置,表示所有請求都會轉(zhuǎn)發(fā)給集群中的jboss節(jié)點

?

創(chuàng)建workers.properties文件

[root@webserver apache2]#vim conf/workers.properties

文件內(nèi)容如下:

worker.list=loadbalancer,status
#node1

worker.node1.port=8009
worker.node1.host=node1.localdomain

worker.node1.type=ajp13
worker.node1.lbfactor=1
#node2

worker.node2.port=8009
worker.node2.host=node2.localdomain
worker.node2.type=ajp13
worker.node2.lbfactor=1

?

worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=node1,node2
worker.loadbalancer.sticky_session=1
worker.status.type=status

?

以上內(nèi)容中聲明了2個worker分別名為node1、node2之后要分別在Jboss節(jié)點中jvmRoute屬性中指定要使用的worker

?

3.修改httpd.conf文件

在文件末尾增加下面一行

Include conf/mod_jk.conf

?

4.配置Jboss

為各節(jié)點指定jvmRoute

編輯server.xml文件

[root@node1 local]# vim /usr/local/jboss-4.0.5.GA/server/all/deploy/jbossweb-tomcat55.sar/server.xml

?

jvmRoute設置成之前在workers.properties文件里聲明的worker
< Engine ? name =" jboss.web" ? defaultHost = "localhost" ? jvmRoute = " node1 " > ??

?

編輯 jboss-service.xml文件激活jk

[root@node1 local]# vim /usr/local/jboss-4.0.5.GA/server/all/deploy/jbossweb-tomcat55.sar/META-INF/jboss-service.xml

找到 <attribute name="UseJK">false</attribute>將其改變?yōu)閠rue

?

5.測試負載均衡器

安裝上面的要求配置兩個jboss節(jié)點

node1.localdomain

node2.localdomain

?

worker.loadbalancer.sticky_session=1

此屬性指定集群針對HTTP會話的處理方式,值為1時表示啟用session黏貼,也就是說當應用程序使用session保存請求狀態(tài)時,負載均衡器會將這個會話和集群中的一個節(jié)點進行關聯(lián),之后這個會話發(fā)起的請求都會指向這個節(jié)點。

?

在集群中部署測試程序:

請求:http://webserver.localdomain/SessionTest/index.jsp


JBoss4.0.5集群實現(xiàn)---負載均衡篇
?

如圖所示處理我們本次請求的應用服務器為node1.localdomain


?
JBoss4.0.5集群實現(xiàn)---負載均衡篇
?輸入要保存到Session里的值,點擊SET


JBoss4.0.5集群實現(xiàn)---負載均衡篇
?SET完畢后,在輸入我們剛才存儲的變量名,點擊GET。可以成功得到我們之前設置的值。我們可以清楚的看到這幾次請求Host與SessionId都沒有改變,說明Session已經(jīng)成功黏貼到了node1.localdomain節(jié)點。

?

但是這種方式并不是一個完善的解決方案,因為一個節(jié)點崩潰,所有的會話數(shù)據(jù)都會丟失。好在我們之前配置的JBoss集群支持Session復制,也就是說當一個Session被創(chuàng)建時服務器會自動同步到其他節(jié)點。關于Session復制的配置可以到

/usr/local/jboss-4.0.5.GA/server/all/deploy/tc5-cluster.sar/META-INF/jboss-service.xml 文件中設置。這里就不多說了。

?

我們可以試驗一把,我們先把節(jié)點node1.localdomain停掉,然后在點GET獲取UserName


JBoss4.0.5集群實現(xiàn)---負載均衡篇

?

如上圖所示,由于node1.localdomain節(jié)點已經(jīng)停掉,負載均衡器把我們的請求自動分配到了可用節(jié)點node2.localdomain上,但是我們從node2上獲得的SessionId還是原來的,UserName的值可以正常獲取。


?

?
JBoss4.0.5集群實現(xiàn)---負載均衡篇
?

JBoss4.0.5集群實現(xiàn)---負載均衡篇


更多文章、技術交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 99久热在线精品视频播 | a毛片在线免费观看 | 国产一区二区三区乱码网站 | 久久九九青青国产精品 | 男人都懂www深夜免费网站 | 国产午夜偷精品偷伦 | 国产美女视频做爰 | 亚洲成人精品久久 | 亚洲欧洲日产国码久在线观看 | 免费一级毛片在级播放 | 欧美一级特黄aaa大片 | 久久这里只有精品23 | 午夜精品aaa国产福利 | 三级西施| 99热在线观看 | 国产一区精品 | 青青草久草视频 | 搜索一级毛片 | 国产不卡福利 | 国产情精品嫩草影院88av | 欧美在线日韩在线 | 亚洲视频一区二区三区四区 | 香蕉碰碰人人a久久动漫精品 | 成在线人免费视频一区二区三区 | 欧美日韩亚洲国产精品一区二区 | 国产精品视频免费观看 | 五月婷婷亚洲综合 | 九九久久九九 | 欧美精品成人a多人在线观看 | 亚洲国产欧美日韩 | 国产欧美日韩网站 | 性感毛片| 国产成人亚洲欧美激情 | 国产高清视频免费 | 97人人干| 久久午夜青青草原影院 | 欧美精品亚洲二区 | 国产日韩欧美综合一区 | 日本视频播放免费线上观看 | 老子影院午夜伦手机不卡无 | 亚洲欧美国产中文 |