1、概念基础

Load balancing,即负载均衡,是一种计算机技术,用来在多个计算机(计算机集群)、网络连接、CPU、磁盘驱动器或其他资源中分配负载,以达到最优化资源使用、最大化吞吐率、最小化响应时间、同时避免过载的目的。
为了提升网站的服务能力,网站可以采用集群部署,就像话剧院有多个入口一样。这时候,就需要一个协调者,来均衡的分配这些用户的请求,可以让用户的可以均匀的分派到不同的服务器上。

单个服务器解决不了,我们增加服务器的数量,然后将请求分别分发到各个服务器上,将原来请求集中到单个服务器上的情况改为将请求分发到多个服务器上,降幅在分发到不同的服务器,也就是我们所说的负载均衡。

2、负载均衡实例

2.1、实现效果
在浏览器输入123.com/te/test.html,负载均衡效果,平均到8080和8081端口中。

2.2、提前准备

  1. 两台Tomcat服务器,一台8080,一台8081;
  2. 在两台tomcat服务器里面的webapps目录,分别建立te文件夹,并在其中创建test.html,用于测试.

2.3、在nginx配置文件中进行负载均衡配置

    upstream myserver{server 127.0.0.1:8080;server 127.0.0.1:8081;}#gzip  on;server {listen       80;server_name  localhost;location / {root   html;proxy_pass http://myserver;index  index.html index.htm;}

2.4、效果展示

两次刷新

3、nginx分配策略

3.1、轮询(默认)
每个请求按照时间顺序逐一分配到服务器中,如果后端服务器dowm掉,能自动剔除。
3.2、weight
weight代表权重值,默认为1,权重值越高,默认分配客户端越多,指轮询机率。

    upstream myserver{server 127.0.0.1:8080 weight=5server 127.0.0.1:8081 weight=10}

3.3、ip_hash

每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session问题。

    upstream myserver{ip_hashserver 127.0.0.1:8080;server 127.0.0.1:8081;}

3.4、fair(第三方)
按照后端服务器的响应时间来分配,响应时间越多的优先分配。

    upstream myserver{server 127.0.0.1:8080;server 127.0.0.1:8081;fair}

Nginx(四):负载均衡Load balancing相关推荐

  1. 负载均衡Load Balance(F5 \ nginx \ LVS \ DNS轮询)

    文章目录 一.IP负载均衡 (一)硬件方式 (二)软件方式 二.DNS轮询 三.CDN (一)定义 (二)CDN网络结构 (三)CDN工作原理 在做系统架构规划的时候,负载均衡,HA(高可用性集群,是 ...

  2. Nginx之负载均衡(四)

    在上一篇博客我们介绍了 Nginx 一个很重要的功能--代理,包括正向代理和反向代理.这两个代理的核心区别是:正向代理代理的是客户端,而反向代理代理的是服务器.其中我们又重点介绍了反向代理,以及如何通 ...

  3. 负载均衡Load Balance学习

    目录 1. 负载均衡简介 2. 负载均衡算法 3. Nginx负载均衡调度算法源码调研 1. 负载均衡简介 0x1: 负载均衡是什么 负载均衡是一种技术架构方法,它并不是具体指哪一种技术,也正是因为这 ...

  4. nginx配置 负载均衡_如何配置NGINX负载平衡

    nginx配置 负载均衡 The load balancing is the process of distributing traffic to multiple instances of an a ...

  5. Nginx 实战-负载均衡

    一.负载均衡 今天学习一下Nginx的负载均衡.由于传统软件建构的局限性,加上一台服务器处理能里的有限性,在如今高并发.业务复杂的场景下很难达到咱们的要求.但是若将很多台这样的服务器通过某种方式组成一 ...

  6. docker nginx 配置负载均衡

    在上篇的文章中我们介绍了docker nginx配置简单的代理 在这篇文章我们介绍docker 利用nginx配置负载均衡 所谓的负载均衡是两台服务器,或者是多台服务器上面部署项目,但是访问的方式是通 ...

  7. Nginx+keepalived负载均衡高可用篇第③版

    Nginx+keepalived负载均衡高可用篇第③版 对付中.小型企业,假如没有资金去购买昂贵的四/七层负载均衡交换机,那么Nginx是不错的七层负载均衡选择,并且可以通过Nginx + Keepa ...

  8. 配置Nginx实现负载均衡

    在关于高并发负载均衡一文中已经提到,企业在解决高并发问题时,一般有两个方向的处理策略,软件.硬件,硬件上添加负载均衡器分发大量请求,软件上可在高并发瓶颈处:数据库+web服务器两处添加解决方案,其中w ...

  9. 搭建Nginx+Tomcat 负载均衡集群

    Nginx+Tomcat 负载均衡集群 一. 实验拓扑: 二. 实验要求: 1. 试验环境: 主机 操作系统 所需软件 Nginx服务器 rhel 6.5 x86_64 nginx-1.6.0.tar ...

最新文章

  1. nsis帮助文档_使用NSIS打包程序
  2. xcode 自带的git工具创建项目流程
  3. 互联网1分钟 | 1011
  4. [HTTP] 跨域资源共享
  5. db2主键自增和oracle,DB2主键自增长设置(id自增)
  6. 杭电2540遮挡判断
  7. HDU-2067-小兔的棋盘
  8. 计算机设计思想 —— 分层模型
  9. 4.数据库数据导入查询数据库信息出现乱码问题
  10. [Linux] ubuntu 安装 Wireshark
  11. ps补充图像缺失部位
  12. Python的EEMD实现
  13. 【selenium】126官网邮箱登录
  14. C - C语言实验——求两个整数之中较大者
  15. wegame显示不出区服务器,wegame无法显示网页怎么办?腾讯wegame无法显示网页的三种解决方法...
  16. emmc和MMC的区别
  17. centos7 搭建redis 5.0.0 集群
  18. 兼职做淘宝客好吗?淘客APP怎么盈利?
  19. 一些关于语音识别和语音情感识别的资源
  20. rosbag录制问题:/use_sim_time set to true and no clock published. Still waiting for valid time...

热门文章

  1. jvm调优 java_opt_Java-100天知识进阶-JVM调优工具-JDK自带工具-知识铺《八》
  2. matlab pca降维_手撸PCA(Python七行代码实现)
  3. qt实现窗口拖动的两种思路
  4. mysql 使用场景_MySQLMHA典型使用场景
  5. html或原生js是单一对应绑定的,原生js数据绑定
  6. 电脑摄像头未能创建连接服务器,Win7中摄像头提示未能创建视频预览错误怎么办...
  7. python datetime.datetime 当前_关于datetime:如何让python显示当前时间(东部)
  8. 祖孙俩人是什么关系_一个人生活也挺好,为什么还需要亲密关系?
  9. ci mysql pdo_CI框架中pdo的使用方法
  10. ajax跨域只能是get,jsonp跨域请求只能get变相解决方案