二、Nginx目录结构与基本运行原理

目录

一、目录结构

二、运行原理


一、目录结构

我们使用tree 命令查看nginx的目录。如果tree 命令失效,需要安装tree工具

[root@localhost local]# yum install -y tree[root@localhost /]# tree /usr/local/nginx
/usr/local/nginx
├── client_body_temp  # POST 大文件暂存目录
├── conf    # Nginx 所有配置文件目录
│   ├── fastcgi.conf    # fastcgi 相关参数的配置文件
│   ├── fastcgi.conf.default
│   ├── fastcgi_params
│   ├── fastcgi_params.default
│   ├── koi-utf
│   ├── koi-win
│   ├── mime.types
│   ├── mime.types.default
│   ├── nginx.conf  # Nginx的核心配置文件,其他文件基本都在这里引用
│   ├── nginx.conf.default
│   ├── scgi_params
│   ├── scgi_params.default
│   ├── uwsgi_params
│   ├── uwsgi_params.default
│   └── win-utf
├── fastcgi_temp
├── html
│   ├── 50x.html    # 访问失败后的页面
│   └── index.html    # 默认的首页文件
├── logs    #Nginx的日志目录
│   ├── access.log    # 访问的日志文件,每次请求都会记录
│   ├── error.log     # 错误日志文件
│   └── nginx.pid     # pid文件,Nginx启动后,会把主进程的进程号写进该文件
├── proxy_temp
├── sbin
│   └── nginx
├── scgi_temp
└── uwsgi_temp

二、运行原理

  1. 启动Nginx时,Nginx会启动一个Master进程,这个进程负责管理其他Worker进程。
  2. Worker进程处理实际的请求,每个Worker进程可以同时处理多个请求。
  3. Nginx使用epoll模型来处理连接,这是Linux下高性能网络I/O模型之一。
  4. 配置文件中定义的指令会指导Nginx如何监听端口、处理请求、以及如何将请求转发给上游服务器。
  5. 当请求发起之后呢,nginx在响应请求时候,主目录下有个sbin,是可执行文件。
  6. nginx 起来之后,会开启两个进程 一个master 主进程 和 一个worker 子进程。
  7. 主进程里边会把配置文件读取出来,也会做一个检验,检查配置文件是否有错误,如果没错误,会开启子进程
  8. 主进程是不工作的。他是协调这些子进程。都启动之后,就会等待用户的请求。
  9. 用户的请求进来之后,是由worker子进程来响应并解析的。

 

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

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

相关文章

C语言 | Leetcode C语言题解之第129题求根节点到叶节点数字之和

题目: 题解: int sumNumbers(struct TreeNode* root) {if (root NULL) {return 0;}int sum 0;struct TreeNode* nodeQueue[2000];int numQueue[2000];int leftQueue 0, rightQueue 0;nodeQueue[rightQueue] root;numQueue[rightQueue] root->v…

Vue——初识组件

文章目录 前言页面的构成何为组件编写组件组件嵌套注册 效果展示 前言 在官方文档中,对组件的知识点做了一个很全面的说明。本篇博客主要写一个自己的案例讲解。 vue 官方文档 组件基础 页面的构成 说到组件之前,先大致说明下vue中页面的构成要素。 在…

手写数据集minist基于pytorch分类学习

1.Mnist数据集介绍 1.1 基本介绍 Mnist数据集可以算是学习深度学习最常用到的了。这个数据集包含70000张手写数字图片,分别是60000张训练图片和10000张测试图片,训练集由来自250个不同人手写的数字构成,一般来自高中生,一半来自工…

MTU相关随笔

一、MTU的概念 MTU(最大传输单元):用来通知对方所能接受数据服务单元的最大尺寸,说明发送方能够接受的有效载荷大小。MTU是包或帧的最大长度,一般以字节记,如果过大在碰到路由器时会被拒绝转发&#xff0c…

SpringBoot项目本地运行正常,jar包运行时前端报错403:No mapping for......

SpringBoot项目本地运行正常,jar包运行时前端报错403:No mapping for… 提示:在部署jar包到云服务器上之前,一定要在本地运行jar包,查看前端代码是否运行正常,若报错的话可以节省很多时间 方式:…

友顺科技(UTC)分立器件与集成IC产品选型和应用

友顺科技股份有限公司成立于1990年,是全球领先的集成电路与功率半导体厂商 ,集团总部位于台北,生产基地位于福州、厦门。 友顺科技具有完整模拟组件产品线,其中类比IC涵盖各种稳压器、PWM控制IC, 放大器、比较器、逻辑IC、Voltage Translato…

基于飞腾 D2000 8 核+ 32G DDR+板载 6 千兆电口+ 4 千兆光口高性能网络安全主板

第一章、产品介绍 1.1 产品概述 XM-D2000GW是一款基于飞腾 D2000 8 核X100 桥片高性能网络安全主板,D2000 为飞腾首款支持 8 核桌面平 台处理器,支持双通道 DDR4-2666 内存,芯片内置国密 SM2/SM3/SM4/SM9 加速引擎,支持单精度、双…

gitee和github的协同

假设gitee上zhaodezan有一个开发库,但是从andeyeluguo上拉取最新的(从github上同步过来最新的) git remote add dbgpt_in_gitee https://gitee.com/andeyeluguo/DB-GPT.git remote -v git pull --rebase dbgpt_in_gitee main 有冲突可能需要…

【调试笔记-20240603-Linux-在 OpenWrt-23.05 上运行 ipkg-build 生成. ipk 安装包】

调试笔记-系列文章目录 调试笔记-20240603-Linux-在 OpenWrt-23.05 上运行 ipkg-build 生成. ipk 安装包 文章目录 调试笔记-系列文章目录调试笔记-20240603-Linux-在 OpenWrt-23.05 上运行 ipkg-build 生成. ipk 安装包 前言一、调试环境操作系统:Windows 10 专业…

Android11 AudioTrack和Track建立联系

应用程序创建AudioTrack时,导致AudioFlinger在播放线程中,创建Track和其对应。那它们之间是通过什么来建立联系传递数据的?答案是共享内存。 创建Track时,导致其父类TrackBase的构造函数被调用 //frameworks/av/services/audiofl…

数字化时代还需要传统智慧图书馆吗

尽管以电子阅览室代表的数字化时代带来了许多便利和创新,但传统智慧图书馆依然具有重要的价值和意义。以下是一些原因: 1. 保存历史文化:传统智慧图书馆是保存历史文化遗产的重要载体,收藏了许多珍贵的古籍、手稿和纸质图书&#…

基于 Amazon EC2 快速部署 Stable Diffusion WebUI + chilloutmax 模型

自2023年以来,AI绘图已经从兴趣娱乐逐渐步入实际应用,在众多的模型中,作为闪耀的一颗明星,Stable diffusion已经成为当前最多人使用且效果最好的开源AI绘图软件之一。Stable Diffusion Web UI 是由AUTOMATIC1111 开发的基于 Stabl…

vue-cl-service不同环境运行/build配置

概述 在项目开发过程中,同一个项目在开发、测试、灰度、生产可能需要不同的配置信息,所以如果能根据环境的不同来设置参数很重要。 vue项目的vue-cl-service插件也支持不同环境的不同参数配置和打包。 实现 新建不同环境配置文件 vue项目中的配置文件以…

面向对象程序设计之从C到C++的初步了解

1. C语言 1. C的发展 C是从C语言发展演变而来的,首先是一个更好的C引入了类的机制,最初的C被称为“带类的C”1983年正式取名为C 从1989年开始C语言的标准化工作 于1994年制定了ANSIC标准草案 于1998年11月被国际标准化组织(ISO)批准为国际标准&#xf…

Ubuntu系统安装

目录 安装准备 安装步骤 虚拟机配置 系统安装 安装准备 Ubuntu系统镜像,虚拟机环境 虚拟机环境 使用的虚拟机软件为VMware Workstation 系统镜像 阿里镜像站:阿里巴巴开源镜像站-OPSX镜像站-阿里云开发者社区 (aliyun.com)https://developer.aliyun.com…

记一次使用mysql存储过程时,游标取值为空问题

call modify_collation(num,count_num) > 1146 - Table test.table_name doesnt exist > 时间: 0.009s 我在使用mysql存储过程时,打印时游标取值为空,报错找不到表。我的过程语句是这样的: drop procedure if exists modify_collation…

Redis中大Key与热Key的解决方案

原文地址:https://mp.weixin.qq.com/s/13p2VCmqC4oc85h37YoBcg 在工作中Redis已经成为必备的一款高性能的缓存数据库,但是在实际的使用过程中,我们常常会遇到两个常见的问题,也就是文章标题所说的大 key与热 key。 一、定义 1.1…

THS6011启动控制台后无法使用https访问控制台(by yz+lqw)

原因: 6011相对于6010版本,多了一个ssl的开关,下图是6010版本的参考配置: 而6011版本下的conf目录下的http.yaml,里面的ssl开关,默认是关闭的,也就是enable:false. 所以需要把enable&#xf…

构建LangChain应用程序的示例代码:9、使用Anthropic API生成结构化输出的工具教程

使用Anthropic API生成结构化输出的工具 Anthropic API最近增加了工具使用功能。 这对于生成结构化输出非常有用。 ! pip install -U langchain-anthropic可选配置: import osos.environ[LANGCHAIN_TRACING_V2] true # 启用追踪 os.environ[LANGCHAIN_API_KEY…

echarts-series的x,y轴的规则

series的data与x,y轴的匹配规则 如果series的data为[1,2,3,4,5,6] 1.如果x,y轴都是类目轴,且data没有与x,y轴的值匹配上,则无效。 2.如果x,y轴都为类目,data中能够跟类目轴上的字符串对应上,轴,有效。 3.如果都为value.,则按数值…