作者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; }