zoukankan      html  css  js  c++  java
  • Nginx的负载均衡

    Nginx的负载均衡

    简单了解

    • 负载均衡,相信大家都知道是什么意思,在Nginx中均衡的意思是指在大批量的访问前提下的一种基本均衡,并非绝对的均衡;

    • 对于Web工程的负载均衡,就是将相同的Web应用部署到不同的Web服务器,

    • 当多个请求到来时,由负载均衡服务器负责将请求按照实现设定好的规则向Web服务器进行分发,从而增加系统整体吞吐量

    负载均衡Demo

    • 这个Demo需要使用到三台服务器,一个Nginx,两台Tomcat,在Nginx上设置对这两台Tomcat主机的负载均衡

    • Nginx:192.168.159.169

    • Tomcat:192.168.159.158;192.168.159.179

    环境搭建:因为我的三台Linux都是没装JDK环境的,所以在装Tomcat之前得把JDK环境给装上,详细不多说,这个不是我们的重点,

    然后就是Tomcat环境的搭建,这个也不是我们的重点,然后把我们的web工程打包放到Tom的webapp目录下,启动Tomcat,这个也不是重点。

    为了待会儿负载均衡看到效果,我们再每个工程中显示当前机器的IP

      

    环境搭建完成访问web工程如下所示:

      

      

    修改我们的Nginx的配置文件如下:

      

    • 首先我们创建一个upstream 取个id 随便取什么可以,我取的是tomcat.nginx.com

      1. :server:参与负载均衡的机器的ip和端口

      2. :weight:中文为权重的意思,也就是比列,上面两个服务的负载均衡比列为1:1

    • 然后在我们的拦截规则中通过proxy_pass 指定上方这个id即可

    • 这样我们访问我们的nginx,其后带上访问的项目的名称,我没改所以为项目打包的名字

    • 可以看到我们的访问路径是Nginx服务器且没有变,但下面显示当前项目的ip却变了,说明访问了不同的项目,且每刷新一次就会换一个项目,实现了1:1分摊负载

    • Nginx内部对拦截的请求进行了转发,转发到内部参与负载均衡的机器的列表中
  • 相关阅读:
    获取当前时间的时间戳
    js获取时间戳
    排序(一)冒泡,选择,插入
    MATLAB入门(一)数组
    锐捷客户端下虚拟机VMware无法联网的问题
    C++ Primer 读书笔记
    LA 4329 树状数组入门
    BZOJ 4352 预处理 + DP
    BZOJ 1954 (POJ 3764) Trie的经典应用 求树上最大异或值
    BZOJ 1597 斜率优化
  • 原文地址:https://www.cnblogs.com/msi-chen/p/11132738.html
Copyright © 2011-2022 走看看