首页 > 系统相关 >Nginx

Nginx

时间:2022-08-29 16:59:44浏览次数:75  
标签:请求 listenfd worker Nginx master 进程 连接

Nginx中有一个 master 进程和多个 worker 进程,master 进程主要用来管理 worker 进程, worker用于处理网络请求。通过向master发送信号,就可以管理master和worker,如./nginx -s reload就是向master发送了reload信号。

一个连接请求过来,每个进程worker都有可能处理这个连接,怎么做到的呢?首先,每个 worker 进程都是从 master 进程 fork 过来,在 master 进程里面,先建立好需要 listen 的 socket(listenfd)之后,然后再 fork 出多个 worker 进程。所有 worker 进程的 listenfd 会在新连接到来时变得可读,为保证只有一个进程处理该连接,所有 worker 进程在注册 listenfd 读事件前抢 accept_mutex,抢到互斥锁的那个进程注册 listenfd 读事件,在读事件里调用 accept 接受该连接。当一个 worker 进程在 accept 这个连接之后,就开始读取请求,解析请求,处理请求,产生数据后,再返回给客户端,最后才断开连接,这样一个完整的请求就是这样的了。我们可以看到,一个请求,完全由 worker 进程来处理,而且只在一个 worker 进程中处理。
使用epoll等实现高并发。

参考:https://www.w3cschool.cn/nginx/sd361pdz.html

标签:请求,listenfd,worker,Nginx,master,进程,连接
From: https://www.cnblogs.com/codingbigdog/p/16636443.html

相关文章

  • 【k8s】使用k8s部署一个简单的nginx应用
    1、创建命令空间kubectlcreatenamespacetest  2、编辑nginx-deployment.yaml---apiVersion:apps/v1kind:Deploymentmetadata:name:nginxname......
  • nginx安全配置
    #safe_config_staradd_headerX-Xss-Protection"1;mode=block";add_headerX-Content-Type-Optionsnosniff;#add_headerX-Frame-OptionsDEN......
  • nginx http code
    301:永久重定向,表示请求的资源分配了新的url,以后应使用新url302:临时重定向,请求的资源临时分配了新的url(response中location所指的地址),本次请求暂时使用新url304:自从上次......
  • nginx 搭建脚本
    vimnginx.shmkdir-p/data/software/init_installcd/data/software/init_install/tar-zxvfnginx-1.4.4.tar.gztar-zxvfpcre-8.20.tar.gzcdnginx-1.4.4#在......
  • 服务器安装Nginx
     1、解压1tar-zxvfnginx-1.13.7.tar.gz---解压nginx安装包 2、cdnginx-1.13.7,然后执行下面命令./configure---用来检测安装平台的目标特征make......
  • Nginx分布式框架详解46-56nginx静态资源部署02
    error_page指令error_page指令是设置网站的错误页面。语法默认值位置error_page......[=[response]];—http、server、location......code是响应......
  • Nginx分布式框架详解-基础37-45nginx静态资源部署01
    nginx静态资源概述上网去搜索访问资源对于我们来说并不陌生,通过浏览器发送一个HTTP请求实现从客户端发送请求到服务器端获取所需要内容后并把内容回显展示在页面的一个......
  • nginx 配置说明
    Nginx配置文件的整体结构全局块该部分配置主要影响Nginx全局,通常包括下面几个部分:配置运行Nginx服务器用户(组)workerprocess数Nginx进程PID存放路径错误日志的存放......
  • Nginx分布式框架详解-基础32-36nginx基础配置实例
    nginx基础配置实例需求分析前面我们已经对Nginx服务器默认配置文件的结构和涉及的基本指令做了详细的阐述。通过这些指令的合理配置,我们就可以让一台Nginx服务器正常......
  • Nginx分布式框架详解-基础22-31nginx核心配置文件
    nginx配置文件nginx.conf的文件结构从前面的内容学习中,我们知道Nginx的核心配置文件默认是放在/usr/local/nginx/conf/nginx.conf,本次我们就来学习下nginx.conf的内......