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

相关推荐
痴情的程序员19 分钟前
linux安装kibana
linux·运维·jenkins
SilentCodeY24 分钟前
jenkinsfile中的sshPublisher使用
linux·运维·jenkins
hanniuniu1338 分钟前
如何规避DDoS攻击带来的风险?服务器DDoS防御软件科普
运维·服务器·ddos
sa1002740 分钟前
利用API返回值实现商品信息的自动化更新
java·运维·python·django·自动化·virtualenv·pygame
广药门徒1 小时前
Linux------Cortex-A架构的处理器运行模型与其寄存器组
linux·运维·架构
恋上钢琴的虫1 小时前
k3s部署ES过程中可能遇到的问题max virtual memory areas vm.max_map_count [65530] is too low
运维·jenkins
Mzylq1 小时前
Docker基础概述、Docker安装、Docker镜像加速、Docker镜像指令
linux·运维·docker·容器·centos
shyuu_2 小时前
使用密钥文件 SSH 登录服务器:Windows、macOS使用终端或连接工具
linux·运维·服务器·windows·macos·云计算·ssh
都适、隶仁ミ2 小时前
【等保测评】IIS模拟测评
运维·服务器·数据库·安全·web安全·网络安全·系统安全
金牌服务刘2 小时前
销售易CRM怎么样?如何自动同步?
nginx·docker·微服务·容器·集成测试·负载均衡