ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

【lamp架构】nginx并发优化、平滑升级与回滚

2021-08-03 23:30:25  阅读:154  来源: 互联网

标签:回滚 worker nginx lamp kill 版本 进程 master


一、nginx并发优化

server1:172.25.2.1
server2:172.25.2.2
server3:172.25.2.3

  • 停止openresty中的nginx,开启原生nginx
/usr/local/openresty/nginx/sbin/nginx -s stop
systemctl start nginx.service

在这里插入图片描述

  • server2和server3安装apache
    yum install -y httpd
    systemctl enable --now httpd
    echo server2 > /var/www/html
    echo server3 > /var/www/html
  • 修改用户进程可打开文件数限制
    vim /etc/security/limits.conf
nginx - nofile 65535

在这里插入图片描述

  • 显示当前用户限制
    ulimit -a
    在这里插入图片描述
    nginx做反向代理服务器:
  • worker_processes
    工作进程数(最好将其设置为可用的CPU内核数)或者,可以将其设置为auto。
    这样nginx会自动根据核心数为生成对应数量的worker进程。
  • worker_connections
    单个工作进程并发连接数
  • worker_cpu_affinity 01 10
    pu有多少个核,就有几位数,1代表内核开启,0代表内核关闭
  • nginx作为http服务器时
    max_clients = worker_processes * worker_connections
  • nginx作为反向代理服务器
    max_clients = worker_processes * worker_connections / 2
  • 使用epoll模型
    use epoll
  • worker进程的最大打开文件数限制。如果没设置的话,这个值为操作系统的限制。
    worker_rlimit_nofile

cd /usr/local/nginx/conf
vim nginx.conf
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 重载nginx

在这里插入图片描述

  • 测试:

在这里插入图片描述

二、nginx平滑升级与回滚

  • 编译新版本nginx,make,但是不make install
    tar zxf nginx-1.19.1.tar.gz
    cd nginx-1.19.1/
    vim auto/cc/gcc
# debug
#CFLAGS="$CFLAGS -g"

./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module
make #注意不要make install

  • 查看编译产生的新版本nginx
    在这里插入图片描述
    查看版本:
    在这里插入图片描述
  • 复制新版nginx到相关目录下
    在这里插入图片描述
  • 查看当前运行的版本,1.18.0

在这里插入图片描述

  • 版本升级

kill -USR2 nginx master进程号 升级新程序

kill -WINCH 原nginx master进程号 关闭原worker进程但保留主进程:为了回退

查看当前nginx进程号
在这里插入图片描述版本升级
kill -USR2 nginx master进程号
kill -WINCH 原nginx master进程号
在这里插入图片描述

  • 版本回退

kill -HUP 原nginx master进程号 #唤醒原进程

kill -WINCH 新nginx master进程号 #回收新版本的worker进程

kill -QUIT 新nginx master进程号 #关闭新版本主进程
在这里插入图片描述

在这里插入图片描述

标签:回滚,worker,nginx,lamp,kill,版本,进程,master
来源: https://blog.csdn.net/sl963216757/article/details/119358255

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有