nginx达成负载均衡

1、中期条件计划

什么是tomcat集群?

nginx不单可以看做有力的web服务器,也得以看做三个反向代理服务器,並且nginx还能据守调节法规达成动态、静态页面包车型大巴分开,能够根据轮询、ip哈希、UOdysseyL哈希、权重等二种方式对后端服务器做负载均衡,同不常间还帮衬后端服务器的健检。

  1. 希图三个解压版tomcat,如何同有时间起步八个tomcat,请看本人的另风流浪漫篇小说《后生可畏台机器同一时候开动七个tomcat》。

  2. nginx官方网站下载解压版nginx。

  3. 创造二个轻便的web项目。为了直观的界别访谈的哪些tomcat,在页面写上标志8081、8082。

    图片 1

  4. 分级安插到对应的tomcat下。如图:

利用nginx对央浼举办分流,将呼吁分配给差别的tomcat去管理,减弱每种tomcat的负载量,提升服务器的响应速度。

如若独有生龙活虎台服务器时,这么些服务器挂了,那么对于网址以来是个横祸.由此,那个时候的载重均衡就会大展宏图了,它会活动删除挂掉的服务器.

图片 28081图片 38082

目标

Nginx负载均衡一些底蕴知识:

2、配置nginx

贯彻高品质负载均衡的tomcat集群。

nginx 的 upstream前段时间支撑 4 种情势的分配

踏入nginx-1.10.1conf路线,改善配置文件nginx.conf。

工具

1)、轮询(默认)

1、配置服务器组,在http{}节点之间增多upstream配置。(注意不要写localhost,不然访问速度会异常慢)

nginx-1.13.10

各种央浼定期间顺序依次分配到不一样的后端服务器,倘若后端服务器down掉,能活动删除。

upstream nginxDemo { server 127.0.0.1:8081; #服务器地址1 server 127.0.0.1:8082; #服务器地址2}

apache-tomcat-7.0.81

2)、weight

2、改过nginx监听的端口号80,改为8080。

达成步骤

钦命轮询概率,weight和拜会比率成正比,用于后端服务器品质不均的图景。

server { listen 8080; ......}

1、下载nginx。

2)、ip_hash

3、在location{}中,利用proxy_pass配置反向代理地址;此处 “http://” 不能够少,前面包车型客车地点要和率先步upstream定义的名称保持生机勃勃致。

2、解压八个tomcat,分别命名字为apache-tomcat-7.0.81-1和apache-tomcat-7.0.81-2。

每一个央浼按采访ip的hash结果分配,那样各类访客固定访谈八个后端服务器,能够解除session的主题素材。

location / { root html; index index.html index.htm; proxy_pass http://nginxDemo; #配置方向代理地址}

3、订正八个tomcat的启航端口,分别为8080和8181。

3)、fair(第三方)

如下图:

4.改换八个tomcat私下认可的index.jsp页面,用以区分差别的tomcat。

按后端服务器的响合时间来分配乞求,响合时间短的开始的一段时期分配。

图片 4

5.还要运转七个tomcat,访谈测量检验。

4)、url_hash(第三方)

3、启动nginx和tomcat,访问

6.配置nginx,打开nginx-1.13.10/conf/nginx.conf。

以下是绘影绘声接收手续:

小编是Windows系统,所以一贯在nginx-1.10.1索引下双击nginx.exe就可以。可在职分管理器中查阅

打开如下配置:

1. 安装

图片 5

worker_processes 1;  #工作进程的个数,一般与计算机的cpu核数一致

events {
  worker_connections 1024;  #单个进程最大连接数(最大连接数=连接数*进程数)
}


http {
  include    mime.types;  #文件扩展名与文件类型映射表
  default_type application/octet-stream;  #默认文件类型

  sendfile    on;  #开启高效文件传输模式,普通应用设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为off。

  keepalive_timeout 65;  #长连接超时时间,单位是秒

  gzip on;  #启用Gizp压缩

  #tomcat集群
  upstream myapp {  #tomcat集群名称 
    server  localhost:8080;  #tomcat1配置
    server  localhost:8181;  #tomcat2配置
  }  

  #nginx的配置
  server {
    listen    9090;  #监听端口,默认80
    server_name localhost;  #当前nginx域名

    location / {
      proxy_pass http://myapp;
      proxy_redirect default;
    }

    error_page  500 502 503 504 /50x.html;
    location = /50x.html {
      root  html;
    }
  }
}

1)从Nginx官方网址下载页面(;

最终在浏览器输入地点: ,每回访谈就能轮流做客tomcat了(尽管F5刷新不管用,建议尝试鼠标指针放到地址栏,点击Enter键)。

主导配置:

2卡塔尔(قطر‎ 解压后复制到铺排目录。

图片 68081图片 78082

7.dos下令运维nginx。

2. 起动和甘休Nginx

到这里,叁个特别简单的负荷均衡就计划实现了,是否很简短吗,OO哈哈~

8.测试,访问

Nginx近年来只扶植命令行操作,操作前先步向Dos命令境况,并步入Nginx陈设目录。