要集羣tomcat主要是解決SESSION共享的問題,所以我利用memcached來保存session,多臺TOMCAT服務器便可共享SESSION了。javascript
你能夠本身寫tomcat的擴展來保存SESSION到memcached。css
這裏推薦使用memcached-session-manager這個開源項目(http://code.google.com/p/memcached-session-manager/ ),下面簡稱msm。html
如何安裝nginx、memcached、tomcat這些就很少說了。java
先說明一下測試環境:nginx
tomcat一、nginx、memcached安裝在192.168.1.11web
tomcat2安裝在192.168.1.101
tomcat
下面分步實現基於nginx的tomcat負載均衡和集羣配置服務器
一,tomcat集羣session
1,先下載msm及其依賴包app
http://memcached-session-manager.googlecode.com/files/memcached-session-manager-1.3.0.jar
http://memcached-session-manager.googlecode.com/files/msm-javolution-serializer-jodatime-1.3.0.jar
http://memcached-session-manager.googlecode.com/files/msm-javolution-serializer-cglib-1.3.0.jar
http://spymemcached.googlecode.com/files/memcached-2.4.2.jar
http://memcached-session-manager.googlecode.com/files/javolution-5.4.3.1.jar
2,將這5個包放到$TOMCAT_HOME/lib目錄下
3,修改$TOMCAT_HOME/conf/server.xml
這裏的memcachedNodes是填寫memcached節點,多個節點時能夠以空隔分開,如:
n1:localhost:11211 n2:localhost:11212
E:/java_codes/TestSession/WebContent 替換成你的WEB目錄
修改後重啓兩個TOMCAT便可,這個時候已經解決SESSION的共享問題.
二,配置nginx實現負載均衡
以個人nginx.conf爲例
將www.docyeah.com替換成你的域名
192.168.1.11和192.168.1.101替換成你服務器的IP
OK,已經完成。啓動nginx便可。
這是我採用的負載均衡及集羣方案,但願你們拍磚.