代码改变世界

随笔分类 -  开源阅读

淘宝的Tengine都改了什么

2012-02-13 15:41 by Sun Yongyue, 6951 阅读, 收藏,
摘要: Tengine是由淘宝Servers Platform Team基于Nginx修改的一个服务器,中午趁着大家都在睡觉,粗粗地拿了代码看下都修改了哪些东西。个人认为里边比较有用的修改是input filter和sysguard,由于只是粗看,没有留意细节,可能有错漏。以下是分代码目录的修改记录笔记:0. others1) 配置默认值的修改ON->OFF之类的2) bug/logic相关的修改,还细看就不细说了。1. core1) 增加configure的dump2) 增加一此log方式或方法3) 增加内存池管理realloc4) 增加字符串处理ngx_atoll,修改unescape_ur 阅读全文

Nginx开发小记

2012-01-05 16:43 by Sun Yongyue, 3580 阅读, 收藏,
摘要: 关于Nginx开发,应属官网推荐的两篇文章最为经典,相当多的国内文章都是用这两篇文章作为蓝本,翻译修改。这里不重复,本来是想写个系列的,列好提纲发现来来去去都是那些基础知识,木有什么好说的。不如直接对着提纲简单说一说就行了,浅尝辄止。这里不讲什么细节的,另一篇开发细节指南在准备中,会有一些细节。一、Phase与状态机 Nginx的HTTP服务,跟众多其他的网络服务一样,就是一个状态机。状态机中的各个状态/阶段在Nginx中定义为各种各样的phase,细数一下达到了11个之多。各个phase与形形色色的钩子、异步机制协作,成就了nginx的高效、稳定与强大功能。 状态机本身并不是Nginx... 阅读全文

nginx http子模块conf的初始化

2011-09-05 22:34 by Sun Yongyue, 1411 阅读, 收藏,
摘要: nginx.conf文件中有http这个模块,里边可以加入各种子模块ngx_http_module_t ,这些子模块自定义conf的初始化过程如下??一、几个结构ngx_conf_t // 路人甲ngx_http_XXX_(main|srv|loc)_conf_t // 自定义的conf结构ngx_command_t // 各个Directivesngx_http_module_t// http中的子modulengx_module_t// 高层module二、一些函数http中子module初始化的过程:main -> ngx_init_cycle -> ngx_conf_par 阅读全文