nginx笔记3-负载均衡算法
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-负载均衡算法的更多相关文章
- Nginx几种负载均衡算法及配置实例
本文装载自: https://yq.aliyun.com/articles/114683 Nginx负载均衡(工作在七层"应用层")功能主要是通过upstream模块实现,Ngin ...
- nginx的常用负载均衡算法,分别是
随机分配,hash一致性分配,最小连接数分配,主备分配 随机,轮训,一致性哈希,主备,https://blog.csdn.net/liu88010988/article/details/5154741 ...
- Nginx代理和负载均衡实验
一.构建两个tomcat容器并启动 [root@localhost bin]# ps -ef|grep tomcat root : pts/ :: /usr/bin/java -Djava.util. ...
- nginx的概念与几种负载均衡算法
Nginx的背景 Nginx和Apache一样都是一种WEB服务器.基于REST架构风格,以URI(Uniform Resources Identifier,统一资源描述符)或URL(Uniform ...
- Load Balancing with NGINX 负载均衡算法
Using nginx as HTTP load balancer Using nginx as HTTP load balancer http://nginx.org/en/docs/http/lo ...
- Nginx 负载均衡算法
Nginx 负载均衡算法 1.轮询(默认) 每个请求按时间顺序逐一分配到不同的后端服务,如果后端某台服务器死机,自动剔除故障系统,使用户访问不受影响. upstream tomcat_server { ...
- Nginx+Tomcat7+Mencached负载均衡集群部署笔记
Nginx+Tomcat+Memcached负载均衡集群服务搭建 操作系统:CentOS6.5 本文档主要解说,怎样在CentOS6.5下搭建Nginx+Tomcat+Memcached负载均衡集群s ...
- Nginx+PHP负载均衡集群环境中Session共享方案 - 运维笔记
在网站使用nginx+php做负载均衡情况下,同一个IP访问同一个页面会被分配到不同的服务器上,如果session不同步的话,就会出现很多问题,比如说最常见的登录状态. 下面罗列几种nginx负载均衡 ...
- nginx笔记4-负载均衡带来的问题以及解决办法
接着笔记3,将笔记三的改造一下,现在分别启动两个Tomcat,在页面获取session.如图所示: tomcat2的session: tomcat1的session: 根据上图发现,每个tomcat取 ...
随机推荐
- rpm命令的使用
如果服务器配置了本地yum源,大部分的常用软件包都是有的.如果差了头文件或者什么so文件,可以按如下方式找:#以memory.h为例 [root@sz-cdn-centos7-1 tmp]# wher ...
- Android Studio库依赖问题
Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'. > com.android. ...
- Regular Expression Syntax
python的正则表达式 正则表达式的概念 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符.及这些特定字符的组合,组成一个"规则字符串",这个"规 ...
- linux命令之read
对于写bash脚本的朋友,read命令是不可或缺的,需要实践一下就可以了解read命令的大致用途: 编写一个脚本: #!/bin/bash # hao32 test read echo -e &quo ...
- 【转】CString,string,char*综合比较
(一) 概述 1.string和CString均是字符串模a板类: 2.string为标准模板类(STL)定义的字符串类,已经纳入C++标准之中: 3.CString(typedef CString ...
- 【转】linux shell 逻辑运算符、逻辑表达式详解
shell的逻辑运算符 涉及有以下几种类型,因此只要适当选择,可以解决我们很多复杂的判断,达到事半功倍效果. 一.逻辑运算符 逻辑卷标 表示意思 1. 关于档案与目录的侦测逻辑卷标! -f 常用!侦测 ...
- ELK日志管理搭建
目录: 一.介绍 二.安装JDK 三.安装Elasticsearch 四.安装Kibana 五.安装Nginx 六.安装Logstash 七.安装Logstash-forwarder 八.测试 系统环 ...
- centos7+ansible自动化工具使用
一.基础介绍 ========================================================================================== 1. ...
- svn基本操作和图标介绍
注意事项: .svn这个隐藏目录记录着两项关键信息:工作文件的基准版本和一个本地副本最后更新的时间戳,千万不要手动修改或者删除这个.svn隐藏目录和里面的文件!!,否则将会导致你本地的工作拷贝( ...
- 关于spring通知中propagation的7种配置《转载》
<转载>:http://nannan408.iteye.com/blog/1754882