• 高性能Web服务器Nginx的配置与部署研究(8)核心模块之事件模块


    一、事件模块的作用是什么?


    用来设置Nginx处理链接请求。


    二、相关指令


    1. accept_mutex

    含义:设置是否使用连接互斥锁进行顺序的accept()系统调用。

    语法:accept_mutex <on|off>;

    缺省:on

    示例:accept_mutex off;


    2. accept_mutex_delay

    含义:设置获得互斥锁的最少延迟时间。

    语法:accpet_mutex_delay <number of millisecs>

    缺省:500ms

    示例:accpet_mutex_delay 1000ms;


    3. debug_connection

    含义:设置指定的clients产生debug日志。

    语法:debug_connection [ip|CIDR];

    缺省:none

    示例:debug_connection 172.16.44.96;

    一段较完整的事件模块代码如下:

    error_log /data/nginx/log/error.log;

    events {

    debug_connection172.16.44.96;

    }


    4. multi_accept

    含义:设置是否允许,Nginx在已经得到一个新连接的通知时,接收尽可能更多的连接。

    语法:multi_accept <on|off>;

    缺省:off

    示例:multi_accept on;


    5. rtsig_signo


    6. rtsig_overflow_threshold


    7. use

    语法:use [kqueue | rtsig | epoll | /dev/poll | select | poll | eventport];

    注意:如果在./configure的时候指定了不止一种事件模型,那么可以设置其中一个,告诉Nginx使用哪种事件模型。默认情况下,Nginx会在./configure时找出最适合系统的事件模型。


    8. worker_connections

    语法:worker_connection <number>;

    注意:

    最大连接数的计算公式如下:

    max_clients = worker_processes * worker_connections;

    如果作为反向代理,因为浏览器默认会开启2个连接到server,而且Nginx还会使用fds(file descriptor)从同一个连接池建立连接到upstream后端。则最大连接数的计算公式如下:

    max_clients = worker_processes * worker_connections / 4;


  • 相关阅读:
    vue-实践1
    node 基本使用
    vue通信
    初始AMD和Common.js
    vue正确引入第三方包
    常见的java设计模式
    springboot加ES实现全局检索
    Cookie丢失的原因
    动态SQL
    用Java实现给图片添加文字
  • 原文地址:https://www.cnblogs.com/breg/p/4043772.html
Copyright © 2020-2023  润新知