zoukankan      html  css  js  c++  java
  • Nginx事件类配置项

    事件类配置项

    是否打开accept

    语法: accept_mutex[on|off]
    默认: accept_mutext on;

    accept_mutexNginx的负载均衡锁 ,accept_mutex这把锁可以让多个worker进程轮流地、序列化地与新的客户端建立TCP连接。

    当某一个worker进程建立的连接数量达到worker_connections配置的最大连接数的7/8时, 会大大地减小该worker进程试图建立新TCP接的机会, 以此实现所有worker进程之上处理的客户端请求数尽量接近。

    accept锁默认是打开的,如果关闭它, 那么建立TCP连接的耗时会更短, 但worker进程之间的负载会非常不均衡, 因此不建议关闭它

     

    lock文件的路径

    语法: lock_file path/file;
    
    默认: lock_file logs/nginx.lock;

    accept锁可能需要这个lock文件, 如果accept锁关闭, lock_file配置完全不生效。

    如果打开了accept锁,并且由于编译程序、操作系统架构等因素导致Nginx不支持原子锁, 这时才会用文件锁实现accept锁,这样lock_file指定的lock文件才会生效。

     

    使用accept锁后到真正建立连接之间的延迟时间

    语法: accept_mutex_delay Nms;
    默认: accept_mutex_delay 500ms;

    在使用accept锁后, 同一时间只有一个worker进程能够取到accept锁。 这个accept锁不是阻塞锁, 如果取不到会立刻返回。

    如果有一个worker进程试图取accept锁而没有取到, 它至少要等accept_mutex_delay定义的时间间隔后才能再次试图取锁。

     

    选择事件模型 

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

     epoll的性能最高

     

    每个worker的最大连接数

    语法: worker_connections number;

    定义每个worker进程可以同时处理的最大连接数。

  • 相关阅读:
    阅读Unity官方技术blog笔记
    设计模式-具有Model-View-ViewModel设计模式的WPF应用
    关于PureMVC的一点想法
    管窥WOWUIInterface代码
    Lua 5.4引入的新变动
    Unity手册SpriteAtlasManager翻译
    2D向量的数学计算
    提前编译(AOT编译)Wiki翻译
    Lua5.3手册标准库拾遗
    C#异步语法糖的苦与甜
  • 原文地址:https://www.cnblogs.com/zh-dream/p/12909263.html
Copyright © 2011-2022 走看看