Jan6

nginx中有关进程的概念

Author: leeon  Click: 1506   Date: 2010.01.06 @ 00:15:06 am Category: 操作系统

Nginx是采用master进程 + 多个worker进程 +多路复用I/O事件处理器的架构


Master进程:
 创建监听socket
 创建worker子进程,之后的主要动作就是监控子进程的工作状态

Worker进程的主循环:
 更新当前时间
 查看当前监听的事件是否被触发,如有调用相应的处理函数进行处理
 处理超时连接

master负责创建监听套接字,同时也是worker的父进程
master进程直接控制worker进程 worker进程不受客户干预
master进程监控worker子进程之外,还处理客户的控制指令,统一由它分发给worker子进程

worker进程的负载均衡问题:
由于各个worker进程之间相互独立,由内核协议栈统一将接收的新连接分发给各个worker子进程进行处理,很可能出现有些子进程处理的连接多,有些处理的少----即负载不均衡
Nginx中,子进程每次接收一个新连接,会根据当前该进程的连接数量,更新一个阙值,由这个阙值决定是否该暂缓接收的连接 这样,各个子进程之间有一个相对的均衡Nginx中还对accept操作做了加锁,任意时刻只可能有一个子进程可以接收新的连接,避免惊群现象的出现。


TAG:   进程 nginx

    评论
    • 提交

    分类

    标签

    归档

    最新评论

    王爷在21:32:04评论了
    【原创】获取jQuery中Ajax函数的返回值的方法
    Funny在10:22:51评论了
    shell数组使用方法小记
    kevinems在11:30:08评论了
    【原创】使用gitosis和tortoisegit打造自己的git服务
    candy在13:11:40评论了
    【原创】beautifulsoup解析中文网页乱码解决
    thenbsp.com在16:17:48评论了
    中国邮政EMS就是一坨屎

    我看过的书

    链接

    其他

    访问本站种子 本站平均热度:1218 c° 本站链接数:55 个 本站标签数:250 个 本站被评论次数:33 次