Nginx服务器在高并发时表现要比apache要强上n个级别
这里使用了3台机器作测试
首先需要大家区官方网站下载nginx和tomcat,以及给机器安装jdk等
这里还要开放对应的机器端口: /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
查看是否添加成功: iptables -L -n
Nginx反向代理节点:192.168.227.133
tomcat节点1:192.168.227.132
tomcat节点2:192.168.227.131
安装完nginx后,修改conf目录下的nginx.conf文件,加入以下配置
<pre name="code" class="plain">upstream www.lohocc.com{
server 192.168.227.132:8080;
server 192.168.227.131:8080;
}
server {
listen 80;
#跟upstream的保持一致
server_name www.lohocc.com;
charset utf-8;
location / {
root html;
index index.html index.htm;
proxy_pass http://www.lohocc.com; #跟upstream的保持一致
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;
}
}
然后重新启动nginx服务器:XXX/nginx/sbin/nginx -s reload
也可以根据各个服务器的性能调整请求的权重/最大失败数:weight=1 max_fails=2 fail_timeout=30s
下面来测试以下结果
当然这只是初级的部署搭建,主要的系统调优需要根据系统各方面的指标去进行
注意,使用负载均衡时需要注意Session的共享,可以使用memcache进行存放(实现一个自己的MemcacheSession,使用过滤器进行Session的创建等操作)