美文网首页
Nginx-进阶学习

Nginx-进阶学习

作者: zyh1158 | 来源:发表于2021-02-18 17:31 被阅读0次
目录:
  • Nginx集群和负载均衡
一、Nginx集群和负载均衡

1、集群

#Nginx通过upstream配置上游服务器来实现集群,zyh要对应起来
upstream zyh {
  server 192.168.1.172:80;
  server 192.168.1.173:80;      
}
server {
        listen       80;
        server_name  www.zyh.com;

        location / {
            proxy_pass http://zyh;
        }
}

2、负载均衡-权重
(1)负载均衡-轮训:Nginx默认的负载均衡的策略,和RabbitMQ的消费者策略一样,每台服务器的权重一样,平均分配任务。
(2)负载均衡-加权轮训:

#默认weight都为1,根据服务器配置设置权重,理论上如果有6条数据,这样设置的话,173会有1条数据,175会有5条
upstream zyh {
  server 192.168.1.173:80 weight=1; 
  server 192.168.1.175:80 weight=5;     
}

3、upstream的常用指令
(1)max_conns:设置最大连接数

#设置每台服务器的最大连接数,173的最大连接数为2,只有这两个连接释放掉,才能处理新的链接
upstream zyh {
  server 192.168.1.173:80 max_conns=2; 
  server 192.168.1.175:80 max_conns=5;     
}

(2)down:服务器下线,就这台服务器访问不了,如果服务器暂时不使用,最好不好删除掉,可以使用这个命令。

#如果采用了ip_hash,那么服务器不使用的话,一定要用down,否则ip_hash会变动,session会失效
upstream zyh {
  server 192.168.1.173:80; 
  server 192.168.1.175:80 down;     
}

(3)backup:备用机,只有正常使用的设备宕机了,这台服务器才会被启动

#173的服务宕机了,175服务器才会被请求到
upstream zyh {
  server 192.168.1.173:80; 
  server 192.168.1.175:80 backup;     
}

(4)max_fails:服务器最大失败次数,达到这个次数就算服务器宕机

#175失败次数到达5次,175这台服务器服务就请求不到了
upstream zyh {
  server 192.168.1.173:80; 
  server 192.168.1.175:80 max_fails=5;     
}

(5)ip_hash:根据请求的ip地址hash值,决定访问哪台服务器的服务,这样可以保持session一致性,hash(ip) % node_counts = index

#主要问题是根据服务器数量得出的index,服务器数量一旦变化,index值都会变化,所以不使用的服务器不能删除,要用down
upstream zyh {
  ip_hash;

  server 192.168.1.173:80; 
  server 192.168.1.175:80;     
}

(6)hash key:一致性hash,client和server分布的环形的圆上,client顺时针就近选择server,这样当服务器宕机和扩容的时候,影响的client和server会比较少。

相关文章

  • Nginx-进阶学习

    目录: Nginx集群和负载均衡 一、Nginx集群和负载均衡 1、集群 2、负载均衡-权重(1)负载均衡-轮训:...

  • linux全新安装

    ****安装nginx tar -zxvf nginx-*** cd nginx-****** yum -y in...

  • nginx-学习

    1、为什么选择nginx?1、快单次请求响应快、并发请求(数万级别)比其他web响应快2、高扩展性各种官方和第三方...

  • Nginx-基础学习

    虽然在用Nginx发布前端的服务,但是一直没有系统的学习一下Nginx,这篇文章记录对于Nginx基础的学习。 目...

  • elasticsearch 配置nginx索引模板

    { "index_patterns": "nginx-*", "order": 1, "settings": {...

  • shell自动拉取php项目

    nginx-虚拟主机配置文件 结果:

  • 学习图谱

    前端整体 基础学习路线 进阶学习路线 整体学习路线 「前端进阶」2018/2019 史上最全的前端学习路线 How...

  • Docker基础命令

    基础操作 镜像 1.搜索镜像docker search nginx- 过滤是否官方docker search --...

  • swoole笔记03(搭建http服务器)

    常规: http请求从nginx->fast-cgi->php->返回给前端用户 (fpm) swoole ...

  • ubuntu nginx源代码安装

    下载源代码 http://nginx.org/en/download.html tar -xvf nginx-

网友评论

      本文标题:Nginx-进阶学习

      本文链接:https://www.haomeiwen.com/subject/oukmxltx.html