博客专栏  >  互联网   >  Nginx模块开发与原理剖析

Nginx模块开发与原理剖析

主要记录了Nginx的模块开发的常用方法及流程,架构解析,源码阅读。希望能和大家相互交流~望通过~

关注
57 已关注
15篇博文
  • Nginx学习之十四-GDB调试Nginx初试

    本文的测试环境: Win7+虚拟机VMWareVMware-workstation-full-7.1.4-385536+Ubuntu12.04 Nginx-1.4.0 要想有效的研究Ng...

    2013-07-19 18:11
    10856
  • Nginx学习之十三-负载均衡-IP哈希策略剖析

    前面介绍过nginx负载均衡的加权轮询策略(http://blog.csdn.net/xiajun07061225/article/details/9318871),它是Nginx负载均衡的基础策略,...

    2013-07-15 17:29
    17930
  • Nginx学习之十二-负载均衡-加权轮询策略剖析

    本问介绍的是客户端请求在多个后端服务器之间的均衡,注意与客户端请求在多个nginx进程之间的均衡相区别(Nginx根据每个工作进程的当前压力调整它们获取监听套接口的几率,那些当前比较空闲的工作进程有更...

    2013-07-13 15:52
    29584
  • Nginx学习之十一-Nginx启动框架处理流程

    Nginx启动过程流程图 下面首先给出Nginx启动过程的流程图: ngx_cycle_t结构体 Nginx的启动初始化在src/core/nginx.c的main函数中完成,当然mai...

    2013-07-12 11:24
    12463
  • Nginx学习之十-超时管理(定时器事件)

    Nginx事件管理主要是网络事件和定时器事件。下面介绍定时器事件管理,即超时管理。 为什么要进行超时管理 Nginx有必要对可能发生超时的事件进行统一管理,并在事件超时时作出相应的处理,比如...

    2013-07-09 19:03
    9692
  • Nginx学习之九-负载均衡(客户端请求与Nginx进程间负载均衡)

    负载均衡问题的产生 在nginx中,建立连接的时候,会设计负载均衡问题。在多个子进程争抢处理一个新连接事件时,一定只有一个worker子进程最终会成功建立连接,随后它会一直处理这个连接直到连接关闭...

    2013-07-08 15:19
    5447
  • Nginx学习之八-惊群问题

    惊群问题(thundering herd)的产生 在建立连接的时候,Nginx处于充分发挥多核CPU架构性能的考虑,使用了多个worker子进程监听相同端口的设计,这样多个子进程在accep...

    2013-07-06 21:37
    8773
  • 【Linux学习】epoll详解

    什么是epoll epoll是什么?按照man手册的说法:是为处理大批量句柄而作了改进的poll。当然,这不是2.6内核才有的,它是在2.5.44内核中被引进的(epoll(4) is a new ...

    2013-07-05 11:50
    88390
  • Nginx学习之七-模块ngx_epoll_module详解(epoll机制在nginx中的实现)

    本文结合实际代码介绍事件驱动模块接口与epoll用法是如何结合起来发挥作用的。Nginx中ngx_epoll_module模块基于epoll实现了Nginx的事件驱动。 模块定义(src/e...

    2013-07-05 11:30
    11360
  • Nginx学习之六-nginx核心进程模型

    一、Nginx整体架构 正常执行中的nginx会有多个进程,最基本的有master process(监控进程,也叫做主进程)和woker process(工作进程),还可能有cache相关进程。 一个...

    2013-07-04 11:22
    12861
  • Nginx学习之五-nginx基础架构设计

    一、优秀的模块化设计 (1)高度抽象的模块接口 所有的模块都遵循着同样的ngx_module_t接口设计规范。 (2)模块接口简单,灵活性高 模块的基本接口ngx_module_t足够简单,只涉及...

    2013-07-03 20:31
    7082
  • Nginx学习之四-Nginx进程同步方式-自旋锁(spinlock)

    自旋锁简介 Nginx框架使用了三种消息传递方式:共享内存、套接字、信号。 Nginx主要使用了三种同步方式:原子操作、信号量、文件锁。 基于原子操作,nginx实现了一个自旋锁。自旋锁...

    2013-07-02 10:27
    6286
  • Nginx学习之三-ngx_http_request_t结构体

    ngx_http_request_s是nginx中非常重要的一个结构体,贯穿于htpp请求处理的整个过程中。 下面解释了ngx_http_request_s结构体中与HTTP框架相关的重要的成员...

    2013-06-27 16:41
    13450
  • Nginx学习之二-配置项解析及编程实现

    在开发功能灵活的Nginx模块时,需要从配置文件中获取特定的信息。不过,我们并不需要再编写一套读取配置的系统,Nginx已经为用户提供了强大的配置项解析机制,同时还支持“-s reload”命令,可以...

    2013-06-21 17:36
    12057
  • Nginx学习之一-第一个程序Hello World

    本例子实现了一个简单的hello world程序。运行效果: 虚拟机Ubuntu中: win7中chrome浏览器: 一、config文件编写 Nginx提供了一种...

    2013-06-19 16:50
    20639

img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部