nginx + tomcat实现负载均衡

作者Mr.Chen,转载请注明博客出处:http://www.cnblogs.com/cjh-notes/

负载均衡

负载均衡就是流量分发,优选软件解决方案,成本低效果好。

实现步骤

第一步:下载安装nginx和tomcat

安装方法可以看这里http://www.cnblogs.com/cjh-notes/p/7868262.html

ps:如果是纯测试可以下载两个不同版本的tomcat方便查看效果

 

第二步:配置tomcat

复制一个节点,修改配置文件,要修改的地方有三处,vi全局替换即可:

%s/8005/8006/g

%s/8080/8081/g

%s/8009/8010/g

接着启动节点服务器,访问正常:

 

 

第三步:配置nginx

配置很简单,在http模块中添加upstream并修改代理转发,附上配置文件:

upstream backserver {

    server 127.0.0.1:8080;

    server 127.0.0.1:8081;

}

 

server {

    listen 80;

    server_name 39.108.182.210;

    root /usr/share/nginx/html;



    location / {

        proxy_pass http://backserver;

    }
 

}    

若有兴趣做进一步了解首选官方文档:http://nginx.org/en/docs/http/ngx_http_upstream_module.html#example

 

最后一步:测试

直接输入ip或域名访问(不带端口),每刷新一次,发现页面在tomcat7和tomcat8的首页间切换,测试通过~

 

附录:

nginx负载均衡有几种常用方式:

1、轮询

按时间顺序逐一分配,这是默认的方式,上面的测试结果呈现了该方式的效果

2、weight

指定被访问的几率,用于节点服务器性能不均的情况

upstream backserver {

    server 192.168.0.1 weight=2;

    server 192.168.0.2 weight=8;

}

3、fair(第三方模块)

智能的轮询,按响应时间来分配,完全可以替代以上两种模式

还没用过,日后再更新~

4、iphash

请求按ip的hash结果分配,访客每次访问的都是同一个节点,解决session同步最快最简单的方法,当然缺点也很明显

upstream backserver {

    ip_hash;

    server 192.168.0.1;

    server 192.168.0.2;

}

 

 

posted on 2018-02-21 23:12  代码风云  阅读(676)  评论(0编辑  收藏  举报

导航