0%

【Nginx】Nginx原理

关于Nginx简单的工作原理


1 工作原理

1.1 Nginx工作架构

  • 一个Nginx项目的启动,至少有两个进程,一个master,一个woker
  • 当一个请求发送到nginx中,该请求先给master,然后多个worker来争抢此请求,对此请求进行反向代理

1.2 一master多worker好处

  • (1)利于使用nginx -s reload操作,如果执行此操作时,正好有worker在处理请求,则此woker暂时不变,其余空闲woker发生变化,无需停到nginx服务器再启动
  • (2)每个多个worker时独立的进程,其中worker出现问题,不影响其余worker

1.3 worker数

  • 每个worker,能把一个CPU的性能发挥到极致。所以worker和CPU相等即可
  • worker数量的设置在nginx.conf文件全局块中设置
    1
    worker_process worker数;

1.4 worker连接数

  • 一个请求会占用woker2/4个连接数
  • 直接请求nginx中的静态资源,request和response2个连接
  • 如果请求动态资源文件,需要与后端服务器进行交互,额外多2个连接,共4个
  • woker连接数配置
    1
    2
    3
    events {
    worker_connections worker连接数;
    }