1.nginx测试:先从官网下载nginx 官网网址为:http://nginx.org/  然后找到stable version的版本下载,因为这版本是最稳定的,不要去下载最新,因为不稳定,如下图:

下载解压后即可

这里还要对解压后的nginx的conf目录下的nginx.conf配置如下图:

上图中的proxy_pass http://test-service;意思是只有test-service下面的tomcat才能通过我的反向代理。

随后我们启动两个tomcat,把笔记二的工程分别放在两个Tomcat的webapps下,注意两个Tomcat的端口不能冲突。在浏览器输入http://localhost/test_war/index.jsp,如图:

上图显示,没刷新2次浏览器就将请求转发到另外一个Tomcat,这里可以看出,负载均衡的算法默认配置为轮询。

负载均衡的算法:

1.轮询:这是一个最公平的原则,即每N个请求分发给Tomcat1,下一个n个请求分发给tomcat2.再比如,一个有tomcat1为1号,tomcat2为2号,1号那就分给tomcat1,2号就分给tomcat2,3号没有,那么就重新从tomcat1开始。

2.随机算法:通过一定范围的随机数来分发请求给相应的tomcat.当请求量很大时,其实就很接近轮询了。

3.源地址哈希:通过请求来源的IP计算相应的hashCode来分发给相应的Tomcat,只要IP不发生变动请求分发的Tomcat也就固定了。

4.加权轮询:在轮询的基础上增加权重,比如,现在是tomcat1,tomcat2,此时tomcat2加权重4,那么轮询的顺序即tomcat1,tomcat2,tomcat2,tomcat2,tomcat2,tomcat2。

5.加权随机法(Weight Random):跟加权轮询类似一样的做法。比如,tomcat1,tomcat2,此时tomcat2增加权重为4,那么tomcat1,tomcat2,tomcat2,tomcat2,tomcat2,tomcat2,那么tomcat随机分发的时候分发的几率就增大。

6.最小连接数法(Least Connections):根据后端服务器当前的连接情况,动态的选取当前积压连接数最少的一台服务器来处理当前请求。

就算此时其中一个Tomcat挂了,请求服务还能正常访问。因外还有另外一个Tomcat在运行。

nginx笔记3-负载均衡算法的更多相关文章

  1. Nginx几种负载均衡算法及配置实例

    本文装载自: https://yq.aliyun.com/articles/114683 Nginx负载均衡(工作在七层"应用层")功能主要是通过upstream模块实现,Ngin ...

  2. nginx的常用负载均衡算法,分别是

    随机分配,hash一致性分配,最小连接数分配,主备分配 随机,轮训,一致性哈希,主备,https://blog.csdn.net/liu88010988/article/details/5154741 ...

  3. Nginx代理和负载均衡实验

    一.构建两个tomcat容器并启动 [root@localhost bin]# ps -ef|grep tomcat root : pts/ :: /usr/bin/java -Djava.util. ...

  4. nginx的概念与几种负载均衡算法

    Nginx的背景 Nginx和Apache一样都是一种WEB服务器.基于REST架构风格,以URI(Uniform Resources Identifier,统一资源描述符)或URL(Uniform ...

  5. Load Balancing with NGINX 负载均衡算法

    Using nginx as HTTP load balancer Using nginx as HTTP load balancer http://nginx.org/en/docs/http/lo ...

  6. Nginx 负载均衡算法

    Nginx 负载均衡算法 1.轮询(默认) 每个请求按时间顺序逐一分配到不同的后端服务,如果后端某台服务器死机,自动剔除故障系统,使用户访问不受影响. upstream tomcat_server { ...

  7. Nginx+Tomcat7+Mencached负载均衡集群部署笔记

    Nginx+Tomcat+Memcached负载均衡集群服务搭建 操作系统:CentOS6.5 本文档主要解说,怎样在CentOS6.5下搭建Nginx+Tomcat+Memcached负载均衡集群s ...

  8. Nginx+PHP负载均衡集群环境中Session共享方案 - 运维笔记

    在网站使用nginx+php做负载均衡情况下,同一个IP访问同一个页面会被分配到不同的服务器上,如果session不同步的话,就会出现很多问题,比如说最常见的登录状态. 下面罗列几种nginx负载均衡 ...

  9. nginx笔记4-负载均衡带来的问题以及解决办法

    接着笔记3,将笔记三的改造一下,现在分别启动两个Tomcat,在页面获取session.如图所示: tomcat2的session: tomcat1的session: 根据上图发现,每个tomcat取 ...

随机推荐

  1. Java 生产者消费者模式详细分析

    */ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...

  2. TP手册学习第四内置天

    比较标签: eq:等于    heq:恒等于    gt:大于    lt:小于   (前面加上n则为否,如neq表示不等于)使用方法:{gt name="name" value= ...

  3. 【转】shell:date 常用方式

    在linux下获取时间字符串 命令 date # 以yyyymmdd格式输出23天之前现在这个时刻的时间 $ date +%Y%m%d –date=’23 days ago’ $ date -u Th ...

  4. Linq to SQL 中实现模糊查询

    list = list.Where(i => i.Name.Contains(empName)).ToList();

  5. 11_Python文件操作

    一.文件操作的基本流程 计算机系统分为:计算机硬件,操作系统,应用程序三部分. 我们用python或其他语言编写的应用程序若想要把数据永久保存下来,必须要保存于硬盘中,这就涉及到应用程序要操作硬件,众 ...

  6. 利用rsync+inotify实现数据实时同步脚本文件

    将代码放在Server端,实现其它web服务器同步.首先创建rsync.shell,rsync.shell代码如下: #!/bin/bash host1=133.96.7.100 host2=133. ...

  7. bash启动加载过程

  8. xBIM IFC 墙壁案例

    目录 xBIM 应用与学习 (一) xBIM 应用与学习 (二) xBIM 基本的模型操作 xBIM 日志操作 XBIM 3D 墙壁案例 xBIM 格式之间转换 xBIM 使用Linq 来优化查询 x ...

  9. BZOJ 3622: 已经没有什么好害怕的了 [容斥原理 DP]

    3622: 已经没有什么好害怕的了 题意:和我签订契约,成为魔法少女吧 真·题意:零食魔女夏洛特的结界里有糖果a和药片b各n个,两两配对,a>b的配对比b>a的配对多k个学姐就可能获胜,求 ...

  10. 自用lca模板

    人丑常数大,总是卡在1000多ms... #include <cstdio> #include <cstring> #include <iostream> #def ...