据说让你抓狂的Nginx性能调优,我却这么轻松就搞定了( 四 )


#命令nginx -s reload####################### 命令过程解析 start #######################1、当上面的命令一执行,如果发现配置文件已更改,会创建一个新的主进程2、当前所有的worker进程不会再接收新的请求并把当前正在处理的请求执行完就关闭3、master主进程会创建新的worker进程来接收并处理新的请求####################### 命令过程解析 end #######################高可用之所以实现高可用,是因为在nginx中,woker都一个一个的进程,就算其中某个进程挂掉了,也对其他的进程没得影响,而且其他的进程会接替出问题的进程 。
高扩展由于nginx是模块化集成,故在我们使用中,缺少什么模块我们就安装什么模块(模块一般分为C语言扩展模块和Lua脚本扩展模块)
#下载模块git clone https://github.com/agentzh/echo-nginx-module#放入指定位置mv echo-nginx-module-master /usr/local/nginx/echo-nginx-module#就用这个命令生成新的makefile./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --add-module=/usr/local/nginx/echo-nginx-module#编译(这里只需要make,一定不要执行make install,不然会被覆盖)make#备份原文件cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak#替换nginx二进制文件cp /usr/local/nginx/objs/nginx /usr/local/nginx/sbin/nginx#重新建立软连接,检测配置文件并平滑启动ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/nginxnginx -tnginx -s reloadNginx配置文件详解

据说让你抓狂的Nginx性能调优,我却这么轻松就搞定了

文章插图
 
整体结构全局块配置影响nginx的全局指令 。包括:
  • 配置运行nginx的服务器用户组
  • worker process数
  • nginx进程
  • pid存放路径
  • 错误日志存放路径
  • 配置文件的引入
events块配置影响nginx服务器或与用户的网络连接 。包括:
  • 设置网络连接的序列化(惊群)
  • 是否允许同时接收多个网络连接
  • 选择事件驱动模型
  • 设置最大连接数
http块可以嵌套多个server模块,配置代理、缓存、日志定义等和第三方模块的配置 。包括:
  • 定义MIMI-Type
  • 自定义服务日志格式
  • 允许sendfile方式传输文件
  • 连接超时时间
  • 单连接请求数上限
server块配置虚拟主机相关参数 。包括:
  • 配置网络监听
  • 配置基于名称的虚拟主机
  • 配置基于IP的虚拟主机
location块配置请求的路由,以及页面和其他静态资源的处理 。包括:
  • location配置
  • 请求根目录配置更改
  • URL
  • 网站默认首页配置
配置清单例析
据说让你抓狂的Nginx性能调优,我却这么轻松就搞定了

文章插图
 
总结文章到这里就结束了!Nginx 是一个高性能的 HTTP 和反向代理服务器,特点是占用内存少,并发能力强,事实上 Nginx 的并发能力确实在同类型的网页服务器中表现较好 。Nginx 专为性能优化而开发,性能是其最重要的要求,十分注重效率,有报告 Nginx 能支持高达 50000 个并发连接数 。
最后大家看完有什么不懂的可以在下方留言讨论.
谢谢你的观看 。
觉得文章对你有帮助的话记得关注我点个赞支持一下!
作者:麒麟才子
链接:https://juejin.cn/post/6912616466513100807




推荐阅读