我是靠谱客的博主 优美超短裙,最近开发中收集的这篇文章主要介绍nginx整体结构,进程模型,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

nginx的整体结构:


启动nginx,看到了一个master进程,一个worker进程
命令 ps-ef | grep nginx
第一列:UID,进程所属的用户id
第二列:进程ID(PID),用来唯一的标识一个进程
第三列:父进程ID(PPID),worker进程是被master进程通过fork()创建出来的,worker进程是master的子进程

nginx进程模型:

一个master进程,1到多个worker进程,这种工作机制对外服务,保证了nginx能稳定,灵活的运行

master进程责任:管理监控worker进程

worker进程:和用户进行交互

 master进程和worker进程之间要通讯,可以用信号,也可以用共享内存

稳定性,灵活性,体现:1.worker进程一旦挂掉,那么master进程会立即fork()一个新的worker进程投入工作中去

                                        2.nginx重载配置文件不需要重启nginx

                                        3.nginx可以热升级,热回滚

调整worker进程数:
worker进程设置数量:(公认)多核计算机,就让每个worker运行在一个单独的内核上,最大限度减少CPU进程切换成本,提高系统运行效率

查看虚拟机 processor数量命令

grep -c processor /proc/cpuinfo

修改nginx worker数量

进入  /usr/local/nginx/conf/目录下

用vim打开nginx.conf 文件 ,修改worker_processes数量为4(和虚拟机processor数量保持一致)

 nginx关闭命令

进入  /usr/local/nginx/sbin目录下

输入sudo ./nginx -s quit

总结:
nginx是一种多进程的模型:
多线程模型的弊端:共享内存,如果某个线程报错会影响到其他线程

 

最后

以上就是优美超短裙为你收集整理的nginx整体结构,进程模型的全部内容,希望文章能够帮你解决nginx整体结构,进程模型所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部