您的位置:首页 > 运维架构 > Tomcat

nginx + tomcat 集群实现负载均衡

2012-09-24 12:08 435 查看
LNMP环境的搭建略过,详见:http://blog.csdn.net/pengyouchuan/article/details/6931666 LNMP搭建

重点nginx负载均衡,通过nginx实现tomcat的负载均衡

配置nginx负载均衡

编辑nginx.conf

vim /usr/local/nginx/conf/nginx.conf

在server上面增加

upstream www.test.com {

server www.test.com:8888;

server www.test.com:8080;

#ip_hash; 注:如果加入了ip_hash, 这种只能适用于当某个用户连接上了一台服务器后,他登陆之后所做的一切操作都只会在那一台服务器不会跳转到另外的服务器,如果那台服务器over掉了,则会自动退出,连接到另一服务器

}

www.test.com 是自己的服务器,最好是用域名

upstream后面的名字要与proxy_pass 这个名字一样,建议upstream后面的名字,proxy_pass 后面的名字,server_name 后面的名字一致

示例:

upstream www.test.com {

server www.test.com:8888;

server www.test.com:8080;

}

#测试

server

{

listen 80;

server_name www.test.com;

index index.htm index.html index.jsp;

root /home/htdocs/web/ROOT/;

location ~ .*$

{

index index.jsp;

proxy_pass http://www.test.com; 注:做了负载均衡,这个后面就不能再加端口

}

access_log logs/sp.imichat.com.log combined;

error_page 404 = /404.html;

}

注:如果负载均衡不成功,请检查是否没有经过nginx,80端口直接被转发到了tomcat服务的端口上

3、配置tomcat集群

优化tomcat 最大并发数,编辑server.xml

<Connector port="8080" maxHttpHeaderSize="8192"

maxThreads="2048" minSpareThreads="100" maxSpareThreads="200"

enableLookups="false" redirectPort="8443" acceptCount="500"

connectionTimeout="20000" disableUploadTimeout="true" />

<Engine name="Catalina" defaultHost="localhost" jvmRoute="worker1">

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" tcpListenAddress="127.0.0.1" />

修改web.xml

增加标签:<distributable/〉

直接加在</web-app> 之前就可以了,这个是加入tomcat 的session 复制的,做tomcat 集群必须需要这一步,否则用户的session 就无法正常使用.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: