|
今天看到"基于apache的tomcat負(fù)載均衡和集群配置 "這篇文章成為javaEye熱點(diǎn)。
略看了一下,感覺(jué)太復(fù)雜,要配置的東西太多,因此在這里寫(xiě)出一種更簡(jiǎn)潔的方法。
要集群tomcat主要是解決SESSION共享的問(wèn)題,因此我利用memcached來(lái)保存session,多臺(tái)TOMCAT服務(wù)器即可共享SESSION了。
你可以自己寫(xiě)tomcat的擴(kuò)展來(lái)保存SESSION到memcached。
這里推薦使用memcached-session-manager這個(gè)開(kāi)源項(xiàng)目(http://code.google.com/p/memcached-session-manager/ ),下面簡(jiǎn)稱(chēng)msm。
如何安裝nginx、memcached、tomcat這些就不多說(shuō)了。 先說(shuō)明一下測(cè)試環(huán)境: tomcat1、nginx、memcached安裝在192.168.1.11
tomcat2安裝在192.168.1.101
下面分步實(shí)現(xiàn)基于nginx的tomcat負(fù)載均衡和集群配置
一,tomcat集群
1,先下載msm及其依賴(lài)包
2,將這5個(gè)包放到$TOMCAT_HOME/lib目錄下
3,修改$TOMCAT_HOME/conf/server.xml Xml代碼
1 <Context docBase="E:/java_codes/TestSession/WebContent" path="" reloadable="true" > <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager" memcachedNodes="n1:localhost:11211" requestUriIgnorePattern=".*\.(png|gif|jpg|css|js)$" sessionBackupAsync="false" sessionBackupTimeout="100" transcoderFactoryClass="de.javakaffee.web.msm.serializer.javolution.JavolutionTranscoderFactory" copyCollectionsForSerialization="false" /> </Context> 這里的memcachedNodes是填寫(xiě)memcached節(jié)點(diǎn),多個(gè)節(jié)點(diǎn)時(shí)可以以空隔分開(kāi),如: n1:localhost:11211 n2:localhost:11212
sessionBackupTimeout的單位為分鐘
E:/java_codes/TestSession/WebContent 替換成你的WEB目錄
修改后重啟兩個(gè)TOMCAT即可,這個(gè)時(shí)候已經(jīng)解決SESSION的共享問(wèn)題.
二,配置nginx實(shí)現(xiàn)負(fù)載均衡 以我的nginx.conf為例
Xml代碼
#user nobody; worker_processes 1; error_log logs/error.log;
events {
worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on;
keepalive_timeout 65; #gzip on;
upstream www. { server 192.168.1.11:8080; server 192.168.1.101:8080; } server { listen 80; server_name www.; charset utf-8; location / { root html; index index.html index.htm; proxy_pass http://www.; proxy_set_header X-Real-IP $remote_addr; client_max_body_size 100m; } location ~ ^/(WEB-INF)/ { deny all; } error_page 500 502 503 504 /50x.html;
location = /50x.html { root html; } }
} 將www.替換成你的域名
192.168.1.11和192.168.1.101替換成你服務(wù)器的IP
OK,已經(jīng)完成。啟動(dòng)nginx即可。
這是我采用的負(fù)載均衡及集群方案,希望大家拍磚. |
|
|
來(lái)自: dire > 《我的圖書(shū)館》