nginx源码学习资源(不断更新)转
原文地址:http://www.cnblogs.com/yjf512/archive/2012/06/13/2548515.html
nginx源码学习是一个痛苦又快乐的过程,下面列出了一些nginx的学习资源。
首先要做的当然是下载一份nginx源码,可以从nginx官方网站下载一份最新的。
看了nginx源码,发现这是一份完全没有注释,完全没有配置文档的代码。
现在你最希望要的是一份注释版的nginx源码,可以从下面的链接中下载一份:
https://github.com/jianfengye/nginx-1.0.14_comment
这份注释版源码会不断进行更新的
好了,第一个问题, nginx的main函数在哪里呢?
src/core/nginx.c
第二个问题,nginx启动的时候都做了哪些事情呢?参考下面两篇文章:
http://www.pagefault.info/?p=188
http://www.pagefault.info/?p=201&cpage=1
nginx启动的命令是nginx,重启的命令是nginx -s reload, nginx有master和worker进程,他们之间是怎么通信的呢?可以参考下面的文章:
http://simohayha.iteye.com/blog/467940
好了,是不是手痒痒了?希望对nginx进行调试?
你是Linux程序员? 使用gdb调试吧。
nginx如何调试 http://doyoueat.iteye.com/blog/1291164
gdb调试nginx:
http://www.cnblogs.com/yjf512/archive/2012/05/10/2494635.html
你是windows程序员?想使用vs调试nginx?行
这有个可调试工程:
http://liyongping.sinaapp.com/?p=116
如何编写nginx的第三方模块?miller的文章很好,codinglabs的文章也不错,推荐
http://www.codinglabs.org/html/intro-of-nginx-module-development.html
http://www.evanmiller.org/nginx-modules-guide.html
nginx的基本类型有非常多,那些类型各个类型是那些意思
这类的文章有很多很多,google一下能找出很多
推荐几个人的博客:
http://blog.csdn.net/livelylittlefish/article/details/7262750
http://blog.csdn.net/dingyujie/article/details/7162919
nginx开发从入门到精通 http://tengine.taobao.org/book/
注:淘宝一批大牛做的,很多东西讲的非常详细。也很系统,强烈推荐
nginx模块开发入门 http://www.162cm.com/p/ngx_ext.html
注:入门教程
教程书:
《深入理解Nginx -- 模块开发与架构解析》 陶辉
注:非常系统的讲了nginx的模块开发与架构
《深入剖析Nginx》 高群凯
nginx源码学习资源(不断更新)转的更多相关文章
- nginx源码学习资源(不断更新)
nginx源码学习是一个痛苦又快乐的过程,下面列出了一些nginx的学习资源. 首先要做的当然是下载一份nginx源码,可以从nginx官方网站下载一份最新的. 看了nginx源码,发现这是一份完全没 ...
- nginx源码学习资源
http://www.cnblogs.com/yjf512/archive/2012/06/13/2548515.html nginx源码学习是一个痛苦又快乐的过程,下面列出了一些nginx的学习资源 ...
- nginx源码学习_源码结构
nginx的优秀除了体现在程序结构以及代码风格上,nginx的源码组织也同样简洁明了,目录结构层次结构清晰,值得我们去学习.nginx的源码目录与nginx的模块化以及功能的划分是紧密结合,这也使得我 ...
- nginx源码学习 资料
首先要做的当然是下载一份nginx源码,可以从nginx官方网站下载一份最新的. 看了nginx源码,发现这是一份完全没有注释,完全没有配置文档的代码. 现在你最希望要的是一份注释版的nginx源码, ...
- nginx源码学习----内存池
最近在进行监控平台的设计,之前一直觉得C/C++中最棘手的部分是内存的管理上,远不止new/delete.malloc/free这么简单.随着代码量的递增,程序结构复杂度的提高.各种内存方面的问题悄然 ...
- nginx源码学习_数据结构(ngx_pool_t)
nginx中关于ngx_pool_t的数据结构位于src/core/ngx_palloc.c和src/core/ngx_palloc.h中,该数据结构主要是和内存池相关的,写下这篇博客前参考了网上很多 ...
- nginx源码学习_数据结构(ngx_int_t)
nginx中关于整型的数据结构位于src/core/ngx_config.h中 结构比较简单,就是一个typedef的操作,具体如下: typedef intptr_t ngx_int_t; type ...
- nginx源码学习_数据结构(ngx_str_t)
nginx中关于字符串的数据结构位于src/core/ngx_string.c和src/core/ngx_string.h中 先来看一下数据结构: typedef struct { size_t le ...
- Java并发包源码学习系列:CLH同步队列及同步资源获取与释放
目录 本篇学习目标 CLH队列的结构 资源获取 入队Node addWaiter(Node mode) 不断尝试Node enq(final Node node) boolean acquireQue ...
随机推荐
- C#在透明窗体WinForm上面画图(电子尺小工具的实现)
前几天要做一个微信调一调的外挂,里面用到了尺子测量距离,然后就自己下载了一个电子尺,最近要升级我的跳一跳外挂,然后就准备自己做一个电子尺,嵌入到我的外挂里面,在嵌入到我的外挂之前,我自己做了一个完整版 ...
- shell脚本,通过一个shell程序计算n的阶乘。
[root@localhost ~]# cat jiechen.sh #!/bin/bash #设计一个shell程序计算n的阶乘,要求: #.从命令行接收参数n; #.在程序开始后立即判断n的合法性 ...
- C++的反射
写得挺不错,支持转帖下 C++语言本身是不支持反射的,但实际应用中总是会有将对象序列化的需求,总不可能C++不支持,我们就不用C++了,既然发明C++的大师们没有考虑这个,那我们只有自己动手了,毛主席 ...
- WYS APP
UI图:http://modao.io/app/H8eZCQdV1pskjQ7z8bLh 四个tab:我要赛.赛事.运动吧.个人中心 赛事页面 1.主要是个NavigationController 2 ...
- js基本语法之 值类型(数据类型)(变量类型)
一.不可改变的原始值(栈数据)(五个) 数字(number),字符串(string),布尔值(boolean),undefined,null 其中;undefined是未定义的意思,而null是空的意 ...
- PHP必知必会
MQ(消息队列) 消息队列主要用于以下场景: 1. 上传图片,用户需要迅速反馈,把上传图片的后续操作交给consumer 2. A用户对B用户发消息 3. 日志记录,APP发生的任何警告错误日志都要被 ...
- 【dp 状态压缩 单调栈】bzoj3591: 最长上升子序列
奇妙的单调栈状压dp Description 给出1~n的一个排列的一个最长上升子序列,求原排列可能的种类数. Input 第一行一个整数n. 第二行一个整数k,表示最长上升子序列的长度. 第三行k个 ...
- (19)zabbix Applications使用介绍
介绍 Applications(我们翻译为应用程序)是item的一个组. 例如我们要监控MySQL,我们可以将所有和MySQL相关的item放到这个应用程序中. 例如MySQL的availabilit ...
- CSS3的背景background
CSS3中的Background属性 background: background-image || background-position/background-size || background ...
- Canal的安装与使用
一.Canal介绍 Canal的原理就是它自己伪装成slave, 向mysql发送dump协议,MySQL master接收到dump请求之后推送binlog文件给slave, 也就是canal. 二 ...