Nginx入门到精通七(Nginx原理)

下面内容整理自bilibili-尚硅谷-Nginx青铜到王者视频教程

Nginx相关文章

Nginx入门到精通一(基本概念介绍)-CSDN博客

Nginx入门到精通二(安装配置)-CSDN博客

Nginx入门到精通三(Nginx实例1:反向代理)-CSDN博客

Nginx入门到精通四(反向代理2)-CSDN博客

Nginx入门到精通六(高可用配置)-CSDN博客

Nginx入门到精通七(Nginx原理)-CSDN博客

========================================================

Master和Worker

Nginx包含:Master 和 worker 进程;可以有一个master和多个worker;

如果是一个,可以修改配置文件中的worker_processes

Worker如何工作的

1, 用户向Nginx发起请求,首先会到Master节点;Maser节点的作用是管理和监控worker

2, Master告诉Worker现在有请求了;

3, Worker通过争抢机制得到任务,进行反向代理

Master-workers机制好处

1, 对于每个worker进程来说,独立的进程不需要加锁,所以省掉锁带来的开销;编程和问题查找的时候也会方便;

2, 采用独立的worker进程,可以互不影响,一个进程退出后恰进程还在工作,服务不会终端,master进程则很快启动新的worker进程。

3, 便于Nginx热部署 nginx -s reload

需要设置多少个worker进程

Nginx类似Redis采用IO多路复用机制,每个worker都是一个独立进程,每个进程只有一个主线程,通过异步非阻塞方式处理请求,即便成千上万个请求也不在话下。每个进程线程可以把一个CPU性能发挥到极致,worker数和核数相等最为合适;设置少了浪费CPU,设置多了会导致CPU频繁切换带来损耗;

如果Nginx部署在Windows中则无法使用IO多路复用机制;

连接数worker-connection

问:发送一个请求,占用worker几个连接数?

答:2个或者4个连接;如果访问的静态资源,client请求worker, worker返回client;

如果是动态资源,还包含Tomcat的请求和返回;所以是4个连接;

计算最大并发数

问:一个Nginx有一个Master和4个Wroker,每个worker支持最大连接数是1024,问该Nginx支持的最大并发数是多少?

答:假如都是静态请求,最大并发数=1024*4/2 = 2048; 假如请求时动态请求,最大并发数 = 1024*4/4 = 1024 1024;

公式:

静态请求:worker_processes * worker_connections / 2

动态请求:worker_processes * worker_connections / 4

相关推荐
程序猿小三4 分钟前
Linux下基于关键词文件搜索
linux·运维·服务器
虚拟指尖36 分钟前
Ubuntu编译安装COLMAP【实测编译成功】
linux·运维·ubuntu
椎4952 小时前
苍穹外卖前端nginx错误之一解决
运维·前端·nginx
刘某的Cloud2 小时前
parted磁盘管理
linux·运维·系统·parted
极验2 小时前
iPhone17实体卡槽消失?eSIM 普及下的安全挑战与应对
大数据·运维·安全
爱倒腾的老唐2 小时前
24、Linux 路由管理
linux·运维·网络
yannan201903132 小时前
Docker容器
运维·docker·容器
_清浅2 小时前
计算机网络【第六章-应用层】
运维·服务器·计算机网络
正在努力的小河2 小时前
Linux 自带的 LED 灯驱动实验
linux·运维·服务器
李子圆圆2 小时前
电力专用多功能微气象监测装置在电网安全运维中的核心价值是什么?
运维·安全