zoukankan      html  css  js  c++  java
  • Nginx:events块的相关指令

    accept_mutex

    用来设置Nginx网络连接序列化

    语法 accept_mutex on|off;
    默认值 accept_mutex on;
    位置 events

    这个配置主要可以用来解决常说的"惊群"问题。大致意思是在某一个时刻,客户端发来一个请求连接,Nginx后台是以多进程的工作模式,也就是说有多个worker进程会被同时唤醒,但是最终只会有一个进程可以获取到连接,如果每次唤醒的进程数目太多,就会影响Nginx的整体性能。如果将上述值设置为on(开启状态),将会对多个Nginx进程接收连接进行序列号,一个个来唤醒接收,就防止了多个进程对连接的争抢。

    image-20220109123338791

    multi_accept

    用来设置是否允许同时接收多个网络连接

    语法 multi_accept on|off;
    默认值 multi_accept off;
    位置 events

    如果multi_accept被禁止了,nginx一个工作进程只能同时接受一个新的连接。否则,一个工作进程可以同时接受所有的新连接

    worker_connections

    用来配置单个worker进程最大的连接数

    语法 worker_connections number;
    默认值 worker_commections 512;
    位置 events

    这里的连接数不仅仅包括和前端用户建立的连接数,而是包括所有可能的连接数。另外,number值不能大于操作系统支持打开的最大文件句柄数量。

    use

    用来设置Nginx服务器选择哪种事件驱动来处理网络消息。

    语法 use method;
    默认值 根据操作系统定
    位置 events

    注意:此处所选择事件处理模型是Nginx优化部分的一个重要内容,method的可选值有select/poll/epoll/kqueue等,之前在准备centos环境的时候,我们强调过要使用linux内核在2.6以上,就是为了能使用epoll函数来优化Nginx。

    另外这些值的选择,我们也可以在编译的时候使用

    --with-select_module--without-select_module

    --with-poll_module --without-poll_module来设置是否需要将对应的事件驱动模块编译到Nginx的内核。

    events指令配置实例

    打开Nginx的配置文件 nginx.conf,添加如下配置

    events{
    	accept_mutex on;
    	multi_accept on;
    	worker_commections 1024;
    	use epoll;
    }
    
    ./nginx -t
    ./nginx -s reload
    
  • 相关阅读:
    LinqToSQL4
    java 连接数据库操作
    javadoc生成文档报错 java.lang.IllegalArgumentException
    maven下载依赖jar包,Could not transfer artifact xxxxx
    关于meaven导入依赖出现Failed to read artifact descriptor for ***包
    mybatis-plus项目自动生成代码
    Spring boot 出现 "org.springframework.beans.factory.UnsatisfiedDependencyException" 错误
    vs 调试显示用户关闭隐式函数计算
    vue api排放顺序及属性,用于理解vue
    vue 拦截器
  • 原文地址:https://www.cnblogs.com/wwjj4811/p/15780720.html
Copyright © 2011-2022 走看看