nginx模型设计和进程讲解

news/2024/5/20 5:36:09

一. Nginx进程模型解析

1. master主进程 和 worker工作进程

[root@localhost sbin]# ps -ef|grep nginx
root      15411      1  0 21:08 ?        00:00:00 nginx: master process ./nginx
nobody    15412  15411  0 21:08 ?        00:00:00 nginx: worker process
root      57119   1533  0 21:44 pts/0    00:00:00 grep --color=auto nginx
[root@localhost sbin]# 

worker进行可以在nginx.config进行配置多个worker
在这里插入图片描述
nginx进行模型图:
在这里插入图片描述

二.Nginx处理Web请求机制解析

1.worker抢占机制


在这里插入图片描述

2.nginx worker工作进程是异步非阻塞


在这里插入图片描述

在nginx.conf中的配置案例
在这里插入图片描述

三.总结为什么nginx可以支持这么大的并非

1.设置模型(1个master主进程 和 多个worker工作进程)设计

2.work工作进程抢占机制,异步非阻塞[events{ use epoll;} ];


http://www.mrgr.cn/p/64740888

相关文章

干货分享-策划人都在用的活动策划网站

职场上,学会借力,学会‘抄’,比辛辛苦苦做老黄牛,更能事倍功半,不仅自己省事省力,还能获得更多升职加薪的机会。 那么,职场新人如何快速的写出一份领导满意的方案? 今天分享的‘抄…

ue引擎游戏开发笔记(33)——武器与角色的匹配,将新武器装备到角色身上

1.需求分析: 武器能出现在世界中,完成了第一步,下一步需要角色和武器适配,即不论角色跑动,射击等,武器和角色都相匹配,将武器装备到角色身上。 2.操作实现: 1.首先先把角色原有的武…

C语言栈的含义与栈数据操作代码详解!

引言:在本篇博客中,我们将学到数据结构——栈,讲到栈的含义与关于栈的数据操作代码。栈可以在顺序表、双向链表以及单链表的基础上实现,而于本篇博客中,我们选择在顺序表的基础上实现栈。 更多有关C语言和数据结构知识…

Shell编程规范与变量

目录1.Shell脚本概述2.Shell编程规范(1)编写脚本代码(2)脚本编写结构(3)Shell脚本的运行3.重定向与管道(1)交互式硬件设备(2)重定向操作(3)管道操作“|”4.Shell脚本变量(1)自定义变量(1)定义一个新的变量(2)赋值时使用引号(3)设置变量的作用范围(4)整数…

SpringBoot3项目打包和运行

六、SpringBoot3项目打包和运行 6.1 添加打包插件 在Spring Boot项目中添加spring-boot-maven-plugin插件是为了支持将项目打包成可执行的可运行jar包。如果不添加spring-boot-maven-plugin插件配置,使用常规的java -jar命令来运行打包后的Spring Boot项目是无法找…

C++面试题(三)

1、程序有哪些section,分别的作用?程序启动的过程?怎么判断数据分配在栈上还是堆上?如上图,从低地址到高地址,一个程序由代码段、数据段、 BSS 段组成。 \1. 数据段:存放程序中已初始化的全局变量和静态变量的一块内存区域。 \2. 代码段:存放程序执行代码的一块内存区域…

珂朵莉树/颜色段均摊

名称简介 珂朵莉树(Chtholly Tree),又名老司机树 ODT(Old Driver Tree)。起源自 CF896C。 注意,这种想法的本质是基于数据随机的「颜色段均摊」,而不是一种数据结构,下文介绍的操作是这种想法的具体实现方法。 前置知识 会用 STL 的 set 就行。 核心思想 把值相同的区间…

1、数仓基础

1、数据仓库的概念 数据仓库(英语:Data Warehouse,简称数仓、DW),是一个用于存储、分析、报告的数据系统。数据仓库的目的是构建面向分析的集成化数据环境,为企业提供决策支持(Decision Support)。数据仓库本身并不“生产”任何数据,其数据来源于不同外部系统;…

第七章——程序设计语言基础知识

基本概念,编译与解释,文法,有限自动机。正规式,表达式,传值与引用(传值),各种程序语言特点第七章——程序设计语言基础知识 7.1 基本概念 7.1.1 低级语言和高级语言 通常称机器语言和汇编语言为低级语言。机器语言是指用0、1字符串组成的机器指令序列,是最基本的计算机语…

js浏览器请求,post请求中的参数形式和form-data提交数据时数据格式问题(2024-05-06)

浏览器几种常见的post请求方式 Content-Type 属性规定在发送到服务器之前应该如何对表单数据进行编码。 默认表单数据会编码为 "application/x-www-form-urlencoded" post请求的参数一般放在Body里。 Content-Type(内容类型),一般…

软件设计师:软件工程基础知识

能力模型 CMM(能力成熟度模型)初始级:没明确定义 可重复级:建立基本的项目管理过程和实践 已定义级:文档化、标准化 已管理级:管理层制定了软件过程和产品质量的详细度量标准 优化级:不断持续地改进CMMI(能力成熟度模型集成)基本不考已执行的:可标识的输入转换为可标…

rust使用Atomic创建全局变量和使用

Mutex用起来简单,但是无法并发读,RwLock可以并发读,但是使用场景较为受限且性能不够,那么有没有一种全能性选手呢? 欢迎我们的Atomic闪亮登场。 从 Rust1.34 版本后,就正式支持原子类型。原子指的是一系列…

2.2 Java全栈开发前端+后端(全栈工程师进阶之路)-前端框架VUE3-基础-Vue基本语法

文本渲染指令 文本渲染指令-v-html与v-text Vue使用了基于HTML的模板语法,允许开发者声明式地将DOM绑定至底层Vue实例的数据。所有Vue的模板都是 合法的HTML,所以能被遵循规范的浏览器和HTML解析器解析。 在前面,我们一直使用的是字符串插…

C语言阶段性测试错题纠正与拓展

引言:在2024年4月26日,我进行了C语言知识的“期末考试”。通过这次考试,我发现了我的知识漏洞。所以,我写下这篇博客来记录我的错题,并进行纠正,然后对于以前遗忘知识的回顾。 更多有关C语言的知识详解可前…

TextMeshPro - 富文本标签

初始文本 粗体<b></b> 斜体<i></i> 颜色<#ff0000></color> 大小<size></size> <size=60%>中</size><size=1.2em>中</size> 下划线<u></u> 删除线<s></s> 上标<sup…

通信录的动态版本

一. 增加需求 在学习了动态开辟内存之后 我们对于通讯录产生了新的需求 要求我们做出一个动态增长的版本 即 随着我们储存联系人的增加 储存的空间增加 要求 &#xff1a; 1 初始空间为3 2 每次达到上限之后 扩容两个内存 二. 动手实施 我们首先要创建一个结构体 结构体…

C#中.net8WebApi加密解密

尤其在公网之中&#xff0c;数据的安全及其的重要&#xff0c;除过我们使用jwt之外&#xff0c;还可以对传送的数据进行加密&#xff0c;就算别人使用抓包工具&#xff0c;抓到数据&#xff0c;一时半会儿也解密不了数据&#xff0c;当然&#xff0c;加密也影响了效率&#xff…

Linux 中 2>1 解释

在Linux系统中: 0 表示标准输入; 1表示标准输出; 2表示标准错误输出; 2>&1 表示将标准错误输出重定向到标准输入; 举一个例子: a、不将标准错误输出 重定向到标准输入中。[root@PC1 gffread-0.12.7.Linux_x86_64]# xxx ## 在终端随机输入一个命…

基于SpringBoot的饭店外卖平台的设计与实现

项目描述 这是一款基于SpringBoot的饭店外卖平台的系统 模块描述 用户端 登录 首页 商家信息 点餐 菜品列表 下单 订单列表 账号下单列表 个人中心 个人资料 修改信息 评论管理 评论菜品 查看评论 打赏骑手 打赏骑手 管理员 登录 菜品管理 修改 下架 订单列表 下单记录 菜品管理…

用Docker 创建并运行一个MySQL容器

可以在DockerHub官网上荡:mysql - Official Image | Docker Hub 指令是:docker pull mysql; 因为文件比较大可能时间比较长&#xff0c;我是跟着黑马的课走的 课程提供的有文件&#xff0c;我就用已有的资源了。 在tmp目录里放入mysql.tar包 然后cd进去 输入指令:docker lo…