Jan6

nginx中有关进程的概念

Author: leeon  Click: 8550   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

    评论
    • 提交

    分类

    标签

    归档

    最新评论

    Abyss在00:04:28评论了
    Linux中ramdisk,tmpfs,ramfs的介绍与性能测试
    shallwe99在10:21:17评论了
    【原创】如何在微信小程序开发中正确的使用vant ui组件
    默一在09:04:53评论了
    Berkeley DB 由浅入深【转自架构师杨建】
    Memory在14:09:22评论了
    【原创】最佳PHP框架选择(phalcon,yaf,laravel,thinkphp,yii)
    leo在17:57:04评论了
    shell中使用while循环ssh的注意事项

    我看过的书

    链接

    其他

    访问本站种子 本站平均热度:8823 c° 本站链接数:1 个 本站标签数:464 个 本站被评论次数:94 次