一个nginx_reuseport 简单补丁实现

本文提供了一个简单的Nginx REUSEPORT补丁的diff文件链接,并介绍了补丁的基本思想,包括延迟监听socket的创建、工作进程在bind前设置SO_REUSEPORT选项以及不再需要Accept mutex。补丁旨在演示效果,后续已提交正式版本。
摘要由CSDN通过智能技术生成

补丁的diff文件在这里

http://leaf.dragonflybsd.org/~sephe/ngx_soreuseport.diff

该补丁只是一个简单实现演示,很多东西没有考虑到,作者也只是简单验证了使用REUSEPORT后的效果

(正式补丁后来正式提交了 见我的博客: http://blog.csdn.net/mumumuwudi/article/details/47051235 )


------------------------------------------------------------------------------------------

The basic idea of the above patch is:
    - Defer the listen socket creation until work processes are forked
    - Work process creates listen socket, and set SO_REUSEPORT before bind(2)
    - Accept mutex is no longer needed, since worker process is not contended on the single
      listen socket anymore

基本实现思想:
    ----等工作进程创建后才开始监听listen socket
    ----工作进程创建listen socket,  在bind调用之前设置SO_REUSEPORT选项
    ----Accpet_mux互斥锁已经不需要了,因为所有工作进程不在使用同一个listensocket

    ----------------------------------------------------------------------------------------

下面主要对该diff文件加了一下注释:

# HG changeset patch
# User Sepherosa Ziehau <sepherosa@gmail.com>
# Date 1374824628 -28800
#      Fri Jul 26 15:43:48 2013 +0800
# Node ID 55ad072b8934d3eea6d84c3c694c5f8bd7b37a70
# Parent  6d73e0dc4f647afd13a9daafc7cc7b061b2689dc
#Initial SO_REUSEPORT support


//**配置相关,不详细解释**
static ngx_conf_enum_t  ngx_d
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值