Nginx(九):nginx的原理

nginx工作原理及配置 模块与工作原理 nginx由内核和模块组成。其中,内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过查找配置文件将客户端请求映射到一个location block(location是nginx配置中的一个指令,用于URL匹配),而在这个location中所配置的每个指令将会启动不同的模块去完成相应的工作。 模块分类 nginx的模块从结构上分为核心模块、基础模块和第三方模块 HTTP模块、EVENT模块和MAIL模块等属于核心模块 HTTP Access模块、HTTP FastCGI模块、HTTP 阅读详情

1. master 和 worker

在这里插入图片描述
在这里插入图片描述

2. worker 如何进行工作

在这里插入图片描述

3. 一个master和多个worker的优点

  • 可以使用nginx -s reload热部署;
  • 每个worker是独立的进程,如果其中一个worker出现问题,其他的worker继续进行争抢,实现请求过程,不会造成服务中断。

4. worker的数量设置

worker 数量和服务器的 cpu 数量相等是最为适宜的。

nginx 同 redis 都采用了io多路复用机制,每个worker都是独立的进程,但每个进程里只有一个主进程,通过异步非阻塞的方式来处理请求,即使是上千万个请求也不在话下。每个worker的线程可以把一个cpu的性能发挥到极致。所以worker数和服务器的cpu数相等是最为适宜的。设少了会浪费cpu,设多了会造成cpu频繁切换上下文带来的损耗。

#设置 worker 数量
worker process 4

#work绑定cpu(4 work 绑定 4cpu)
worker_cpu_affinity 0001 0010 0100 1000

##work绑定cpu(4 work 绑定 8cpu中的4个)
worker_cpu_affinity 0000001 00000010 00000100 00001000

5. 连接数 worker_connection

  • 发送请求,占用了worker的 2个或者4个请求
  • nginx有一个master,四个worker,每个worker支持最大的连接数1024,支持的最大并发数为:
    • 普通的静态访问最大并发数:worker_connection * worker_processes / 2
    • http作为 反向代理,最大并发数:worker_connection * worker_processes / 4 (作为反向代理服务器,每个并发会建立与客户端的连接、与后端服务器的连接,因此会多占用两个连接)
Nginx底层原理:一文解析Nginx为什么并发数可以达到3w Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻名。本文从底层原理分析 Nginx 为什么这么快!Nginx 的进程模型Nginx 服务器,正常运行过程中:**多进程:**一个 Master 进程、多个 Worker 进程。**Master 进程:**管理 Worker 进程。对外接口:接收外部的操作(信号);对内转发:根据外部的操作的不同,通过信号管理 Worker;**监控:**监控 Worker 进程的运行状态,Worker 进程异常终止后,自动重启 Worker 进程。**Wo 阅读详情

相关推荐

STM32F103C8T6最小系统板GPIO配置避坑指南:从原理图到流水灯一次成功

本文详细介绍了STM32F103C8T6最小系统板GPIO配置的实战指南,从硬件准备到流水灯实现,涵盖了九大关键步骤。特别针对新手常见问题,如GPIO配置、开发环境搭建和程序下载调试,提供了详细的解决方案和避坑技巧,帮助开发者快速掌握STM32开发基础。

weixin_33756596的博客 340

11. Nginx 工作机制&参数设置

Nginx 的工作机制说明,揭秘 nginx 解决高并发的秘密所在

要学就学灰太狼的博客 1万+

TensorRT-LLM环境配置避坑指南:从安装到实战

本文是一份详尽的TensorRT-LLM环境配置避坑指南。文章重点解析了从Python、CUDA、PyTorch版本选择,到解决mpi4py安装这一核心难题的完整流程,并提供了经过验证的稳定版本组合与实战排错方案,帮助开发者高效部署大语言模型推理优化环境。

a0b1c2d3的专栏 983

nginx worker_connections 配置详解:设置每个 Nginx 工作进程可以同时处理的最大连接数

是 Nginx 配置中的一个重要指令,用于设置每个 Nginx 工作进程可以同时处理的最大连接数。这个指令对于优化 Nginx 的性能和处理能力非常重要,尤其是在高并发场景下。

学亮编程手记 4123

快速理解STLink引脚图中复位引脚作用

深入讲解STLink引脚图中复位引脚的实际用途,帮助开发者快速掌握其在调试与下载过程中的关键作用,结合stlink引脚图理解更高效。

weixin_32324637的博客 1326

【2026-Spark实验一-Windows中安装Spark环境】

本文详细介绍了在Windows系统中配置Spark 3.5.8开发环境的完整流程。主要内容包括:安装JDK 8并配置环境变量,下载并解压Spark 3.5.8预编译版,设置SPARK_HOME系统变量,配置Hadoop的winutils工具解决Windows兼容性问题。通过spark-shell和SparkPi示例程序验证环境配置成功,确保Spark能够正常运行分布式计算任务。文中特别强调了路径命名规范、环境变量设置顺序等关键细节,提供了完整的配置截图和验证方法,帮助开发者快速搭建稳定的Spark学习环境。

pblh123的专栏 1586

优化 Nginx 配置

基于 IP 的负载均衡:Nginx 可以通过 ip_hash 实现客户端 IP 地址的粘性负载均衡,确保来自相同 IP 的请求始终分发到同一台后端服务器。配置文件缓存:Nginx 支持通过 expires 指令设置静态文件的缓存时间,减少静态资源的请求次数。禁用日志:对于某些静态文件请求或某些不重要的请求,可以禁用日志来提高性能。也可以使用 DENY 来完全阻止站点被嵌入在 iframe 中。限制连接数:限制每个 IP 地址的连接数,防止滥用。限制连接数:限制每个 IP 地址的连接数,防止滥用。

zhu hong yu 2133

Vue - 列表拖曳排序 / 鼠标拖动改变顺序排列高效简洁组件(支持PC端与移动端触屏拖动,也可在滚动条内排序自动滚动,流畅丝滑无 BUG)

Vue-高效简洁列表拖曳排序/鼠标拖动改变顺序排列组件支持PC端与移动端触屏拖动,也可在滚动条内排序自动滚动,流畅丝滑无BUG列表拖曳排序插件vuedraggable拉动拽动拖动顺序改变排序js,vue.js,nuxt.js列表如何实现鼠标拖曳改变顺序排列支持滚动条内复杂数据对象带拖动效果动画排序完毕自动排列数组位置克隆Vue.Draggable官方文档教程SortableJS与vuedraggable列表拖动排序Vue拖拽组件库vuedraggable的安装与使用用户用鼠标拖动排序功能源码最好

🏆 前端领域优质创作者 4847

Nginx

Nginx Nginx简介 反向代理 负载均衡 动静分离 高可用 Nginx (“engine x”) 是一个高性能的 HTTP 和反向代理服务器,特点是占有内存少,并发能力强,事实上 nginx 的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用 nginx 网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。 **正向代理:**客户端依靠代理服务器(即在客户端配置代理服务器)从局域网向internet访问。 **反向代理:**反向代理,其实客户端对代理是无感知的,因为客户端不需要任何配置就可

weixin_43471422的博客 595

工业激光器核心参数详解与选型实战:从理论到产线落地(五)

本文深入解析了脉冲激光加工的三大核心参数——脉宽、重复频率和脉冲能量的协同作用机制。通过公式推导和产线案例,揭示了参数设置对加工良率的关键影响:1. 脉宽决定热影响区大小,缩短脉宽可显著提升加工精度;2. 重复频率影响加工速度和热积累效应,需平衡效率与质量;3. 脉冲能量决定材料去除量,过大易导致加工缺陷。文中以ABS塑料打标、模具清洗和微孔钻孔为例,展示了参数优化如何将良率从65%提升至99%,并提供了不同应用场景的参数选型表和调试技巧,强调峰值功率比平均功率更具决定性作用。

weixin_44520581的博客 2421

Arcgis使用NDVI值遥感反演叶面积指数(LAI)

经验模型反演操作不难,主要是要多看文献,了解公式。本文中的公式我也不清楚是哪个作物的NDVI和LAI的关系(别人提供的),继续看文献整理吧。后续会在下面罗列更新一下主要公式。

所有专家都曾始于新手 8430

Nginx优化

events { use epoll; worker_connections 4096; multi_accept on; } 1.使用epoll模式 nginx采用epoll事件模型,处理效率高。 2.work_connections 是单个worker进程允许客户端最大连接数,这个数值一般根据服务器性能和内存来制定,实际最大值就是worker进程数乘以work_connections。 3.m...

weixin_46032771的博客 914

[工作流节点24] 外部用户审批的实现方式:让客户、供应商也能参与流程决策

摘要: 明道云支持通过三种方式实现外部用户审批:1)外部表单审批(推荐方案),通过公开表单让外部用户提交审批意见并自动触发流程;2)链接参数审批,通过含参数的URL实现一键确认;3)API/Webhook审批,适用于系统集成场景。三种方案均无需外部用户登录,支持记录操作日志和安全审计。典型应用包括客户确认报价、供应商发货确认等,实现内外流程无缝衔接。建议根据业务复杂度选择:无代码需求用外部表单,轻量审批用链接参数,系统对接用Webhook。

每日出拳老爷子的博客 347

分布式专题(九):Nginx负载均衡原理与实践

本篇摘自《亿级流量网站架构核心技术》第二章 Nginx负载均衡与反向代理 部分内容。 当我们的应用单实例不能支撑用户请求时,此时就需要扩容,从一台服务器扩容到两台、几十台、几百台。然而,用户访问时是通过如的方式访问,在请求时,浏览器首先会查询DNS服务器获取对应的IP,然后通过此IP访问对应的服务。 因此,一种方式是域名映射多个IP,但是,存在一个最简单的问题,假设某台服务器重启或者出现故障,...

aust_zyl的博客 249

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Nginx工作原理和优化总结。

NGINX以高性能的负载均衡器,缓存,和web服务器闻名,驱动了全球超过 40% 最繁忙的网站。在大多数场景下,默认的 NGINX 和 Linux 设置可以很好的工作,但要达到最佳性能,有些时候必须做些调整。首先我们先了解其工作原理。 1. Nginx的模块与工作原理 Nginx由内核和模块组成,其中,内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过查找配置文件将客...

黄规速博客:学如逆水行舟,不进则退 15万+

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

【nginx原理】企业中使用nginx必须知道的那些事

企业中是哟给你nginx必须知道的那些事

低调,谦虚,自律,反思,成长,保持热爱,奔赴梦想 2329

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

nginx系列之九:lua服务

文章目录一、nginx请求处理流程1.1 nginx 11 个处理阶段1.1.1 接收到完整的HTTP头部后处理的阶段1.1.2 URI与location匹配前,修改URI的阶段1.1.3. 根据URI寻找匹配的location块配置项阶段1.1.4 上一阶段找到location块后再修改URI,location级别的uri重写阶段1.1.5 防止重写URL后导致的死循环,location级别重写...

王道长的技术博客 1881

Nginx-详解其原理

  前面介绍了很多Nginx实战方面的内容,本文我们来介绍下Nginx的原理。 Nginx进程模型分析   在介绍Nginx的进程模型之前我们先来给大家解释下一些常见的名词,这能辅助我们更好的了解Nginx的进程模型。作为Web服务器,设计的初衷就是为了能够处理更多的客户端的请求,一般来说,完成并行处理请求工作有三种方式可以选择,多进程、多线程、异步方式。 多进程方式   服务器每接收到一个客户端请求,就会由主进程生成一个子进程出来和该请求建立连接进行交互,直到连接断开以后子进程也就结束了   优点在于各个

波波烤鸭的博客 9505

深入理解Nginx工作原理及优化技巧

NGINX以高性能的负载均衡器,缓存,和web服务器闻名,驱动了全球超过 40% 最繁忙的网站。在大多数场景下,默认的 NGINX 和 Linux 设置可以很好的工作,但要达到最佳性能,有些时候必须做些调整。NGINX被广泛应用于大规模网站、Web应用和移动应用等领域,以其卓越的性能、高并发处理能力和低内存消耗而闻名。以下是NGINX的一些特点:高性能:通过采用事件驱动架构和异步非阻塞处理方式,使得NGINX在面对高并发请求时具备出色的性能表现。反向代理:可以作为反向代理服务器,将客户端请求转发给后端的多个

jj1245_的博客 1088

Nginx 安装及原理

对于句柄事件的选择不是遍历的,是事件响应的,就是句柄上事件来就马上选择出来,不需要遍历整个句柄链表,因此效率非常高。是由内核和模块组成,其中内核的设计非常微小和简洁,完成的工作也比较简单,通过查找配置文件将客户端请求映射到一个。左右,模块非常丰富,系统非常稳点,可移植性好,但比较消耗内存。服务器:是一种功能完善、开放的web应用服务器,是IBM电子商务计划的核心部分,它是基于。:是德国人写的一个开源软件,目前是提供一个高性能的网站,具有内存消耗低,选择句柄的时候,是遍历所有句柄,也就是说句柄有事件响应时,

程序猿进阶 1404

Nginx学习之Nginx高性能的实现原理

Nginx master-worker进程机制。IO多路复用机制。Accept锁及REUSEPORT机制。sendfile零拷贝机制1、Nginx进程机制1.1、Nginx进程机制概述许多web服务器和应用服务器使用简单的线程的(threaded)、或基于流程的(process-based)架构, NGINX则以一种复杂的事件驱动(event-driven)的架构脱颖而出,这种架构能支持现代硬件上成千上万的并发连接。

人工智能全栈工程师 | 智能算法研发与实战落地​专注于人工智能算法研究、代码实现与工程落地,提供从模型设计到部署应用的全流程解决方案。 2349

nginx原理总结

1、Nginx是如何处理一个请求的呢? 首先,nginx在启动时,会解析配置文件,得到需要监听的端口与ip地址,然后在nginx的master进程里面 先初始化好这个监控的socket,再进行listen 然后再fork出多个子进程出来, 子进程会竞争accept新的连接。 此时,客户端就可以向nginx发起连接了。当客户端与nginx进行三次握手,与nginx建立好一个连接后 此时,某一个子...

进化的深山猿 7920

nginx工作原理与配置

nginx工作原理与配置 文章目录nginx工作原理与配置nginx的模块与工作原理nginx的模块分类nginx的工作原理nginx的安装与配置nginx安装nginx配置nginx的配置文件详解nginx.conf配置详解用于调试、定位问题的配置参数 nginx的模块与工作原理 ​ nginx由内核和模块组成。其中,内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过查找配置文件将客户端请求映射到一个location block(location是nginx配置中的一个指令,用于URL匹配),而在这

西北连天一片云,乌鸦落在凤凰群 5003

Nginx(七):nginx原理解析

前面我们讲到了nginx的反向代理、负载均衡、动静分离以及高可用,本篇我们来了解一下nginx的原理,看一下nginx是怎么执行的。 1、mater和worker

栗筝i的博客 3333

探秘 Nginx 的工作原理

Nginx 是一个高性能的HTTP和反向代理 Web 服务器,处理高并发能力十分强大,能经受高负载的考验。首先我们理解 Web 服务器是互联网基础设施的核心组件,负责通过 HTTP/HTTPS 协议接收、处理和响应客户端(如浏览器)的请求,向用户提供网页、图像、视频等资源。

2303_77100822的博客 1214
上一篇: Nginx(八):nginx配置实例之高可用(主从)
下一篇: Git(一):Git简介
红枫忆梦
博客等级 码龄8年 117粉丝 279原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值