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

news2024/9/21 22:55:48

下面内容整理自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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1925453.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于matlab的SVR回归模型

1 原理 SVR(Support Vector Regression)回归预测原理,基于支持向量机(SVM)的回归分支,其核心思想是通过寻找一个最优的超平面来进行回归预测,并处理非线性回归问题。以下是SVR回归预测原理的系统…

猴子吃桃(迭代算法)

猴子与桃纠缠 传说很久很久以前,一只小猴子听妈妈的话,不远万里,爬山涉水专门跑到王母娘娘的蟠桃园里偷桃子吃,小猴子趁王母娘娘闭关修炼,偷了许多桃子,直到被蟠桃园的守卫发现,才恋恋不舍的逃走…

AWS-S3实现Minio分片上传、断点续传、秒传、分片下载、暂停下载

文章目录 前言一、功能展示上传功能点下载功能点效果展示 二、思路流程上传流程下载流程 三、代码示例四、疑问 前言 Amazon Simple Storage Service(S3),简单存储服务,是一个公开的云存储服务。Web应用程序开发人员可以使用它存…

oracle数据库的plsql免安装版安装

这个是连接oracle数据库的,注意安装不能有中文路径。以下只是示例。 1、打开D:\ruanjian\plsql\plsql\plsql,发送plsqldev.exe快捷方式到桌面。 2、新弹出的页面填写cancel,什么也不写。 3、将instanceclient解压,并复制文件路径。 修改tool…

mysql5.7版本字符集编码

默认character_set_databaselatin1 当你字段插入中文值的时候,会报错。 所以修改为了character_set_databaseutf8既可以。 character_set_server他的范围更大,属于服务器级别。

非常好的新版网盘系统,是一款PHP网盘与外链分享程序,支持文件预览

这是一款PHP网盘与外链分享程序,支持所有格式文件的上传, 可以生成文件外链、图片外链、音乐视频外链,生成外链同时自动生成相应的UBB代码和HTML代码, 还可支持文本、图片、音乐、视频在线预览,这不仅仅是一个网盘&a…

【Java】 条件与选择

文章目录 1.关系操作符2.逻辑操作符3.if语句3.1常见的问题3.2 两个浮点数值的相等测试3.3 简化布尔赋值 4.switch语句5.三元操作符 1.关系操作符 Java 提供六种关系操作符(relational operator)(也称为比较操作符(comparison operator)) 操作符名称<小于<小于等于>大…

张雪峰高考志愿填报

描述 张雪峰&#xff0c;一个富有才华的老师&#xff01; 对于大家的学习有不可多得的帮助。 内容 目前主要的内容以自愿填报为主&#xff0c;对于学习自愿填报有比较大的帮助&#xff01; 但是网络上面错综复杂&#xff0c;很多老旧的版本影响学习&#xff01; 而这里我整…

现在有哪些微服务解决方案?

Dubbo&#xff1a;是一个轻量级的Java微服务框架&#xff0c;最初由阿里巴巴在2011年开源。它提供了服务注册与发现、负载均衡、容错、分布式调用等。Dubbo更多的被认为是一种高性能的RPC框架&#xff08;远程过程调用&#xff09;&#xff0c;一些服务治理功能依赖第三方组件完…

极速狂飙,激情重燃 ——《极品飞车:集结》删档公测,你准备好了吗?

亲爱的赛车迷们&#xff0c; 当引擎的轰鸣声再次响起&#xff0c;我的心脏仿佛被注入了肾上腺素&#xff0c;那一刻&#xff0c;我知道——属于我们的时刻到了&#xff01;《极品飞车&#xff1a;集结》删档公测的消息如同一道闪电&#xff0c;划破了平凡的日子&#xff0c;将…

爬虫管理:开启企业大数据时代的智能信息搜集

摘要 在数据驱动的时代&#xff0c;精准高效的信息搜集成为企业决策的黄金钥匙。本文深入探讨爬虫管理如何助力企业开启大数据智能搜集的新篇章&#xff0c;通过优化策略、技术实践与成功案例&#xff0c;揭示其对企业发展的重大意义。我们不仅会探讨其技术实现的奥秘&#xf…

【机器学习】精准农业新纪元:机器学习引领的作物管理革命

&#x1f4dd;个人主页&#x1f339;&#xff1a;Eternity._ &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; ❀目录 &#x1f50d;1. 引言&#x1f4d2;2. 精准农业的背景与现状&#x1f341;精准农业的概念与发展历程&#x1f342;国内外精准农业实践案…

Milvus 核心设计 (3) ---- metric及index原理详解与示例(1)

目录 背景 Floating point embeddings 特点 适用场景 丈量方式 Euclidean distance (L2) Inner product (IP) Cosine similarity (COSINE) 代码写法 索引类型 In-Memory FLAT 索引 IVF_FLAT IVF_FLAT的工作流程 平衡准确性与速度 性能考虑 代码写法 IVF_SQ8 …

Linux下的C++编程(2)——动态库

为什么要使用动态库&#xff1f; 在实际工作工作&#xff0c;常常需要给予其他人自己的库文件&#xff0c;但是&#xff0c;我们只想让其他人使用我们的库文件&#xff0c;而不想让其他人知道我们具体代码&#xff0c;所以就引入了动态库的概念&#xff0c;使用动态库可以让使…

C++编程小游戏------斗罗大陆(1)魂力测评和武魂觉醒

#include <bits/stdc.h> #include <windows.h> using namespace std; string name,wh; int hl,wh1; int gj50,fy50,jy5000,hp60; int main() { // 共十个武魂["昊天锤","蓝电霸王龙","七杀剑","火凤凰","尖尾雨燕&qu…

Python爬虫:基础爬虫架构及爬取证券之星全站行情数据!

爬虫成长之路&#xff08;一&#xff09;里我们介绍了如何爬取证券之星网站上所有A股数据&#xff0c;主要涉及网页获取和页面解析的知识。爬虫成长之路&#xff08;二&#xff09;里我们介绍了如何获取代理IP并验证&#xff0c;涉及了多线程编程和数据存储的知识。此次我们将在…

YOLOv8-OBB 旋转目标检测训练自己的数据

数据集制作 标注工具&#xff1a;X-AnyLabeling https://github.com/CVHub520/X-AnyLabeling 下载链接&#xff1a;https://pan.baidu.com/s/1UsnDucBDed8pU1RtaVZhQw?pwd5kel 数据标注可以参考&#xff1a;https://zhuanlan.zhihu.com/p/665036259 1. 选择导出方式为…

用户登陆实现前后端JWT鉴权

目录 一、JWT介绍 二、前端配置 三、后端配置 四、实战 一、JWT介绍 1.1 什么是jwt JWT&#xff08;JSON Web Token&#xff09;是一种开放标准&#xff08;RFC 7519&#xff09;&#xff0c;用于在各方之间以安全的方式传输信息。JWT 是一种紧凑、自包含的信息载体&…

【论文速读】《面向深度学习的联合消息传递与自编码器》,无线AI的挑战和解决思路

这篇文章来自华为的渥太华无线先进系统能力中心和无线技术实验室&#xff0c;作者中有大名鼎鼎的童文。 一、自编码架构的全局收发机面临的主要问题 文章对我比较有启发的地方&#xff0c;是提到自编码架构的全局收发机面临的主要问题&#xff1a; 问题一&#xff1a;基于随…

godis源码分析——database存储核心1

前言 redis的核心是数据的快速存储&#xff0c;下面就来分析一下godis的底层存储是如何实现&#xff0c;先分析单机服务。 此文采用抓大放小原则&#xff0c;先大的流程方向&#xff0c;再抓细节。 流程图 源码分析 现在以客户端连接&#xff0c;并发起set key val命令为例…