打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
nginx源码分析(4)

nginx源码分析(4)-方法(1)

分类: nginx 2088人阅读 评论(0) 收藏 举报

看了几天的源码,进度很慢,过于关注代码实现的细节了,反而很难看清整体结构。于是问诸google寻找方法。大体上分析源代码都要经历三遍过程,第一遍是浏览,通过阅读源码的文档和注释,阅读接口,先弄清楚每个模块是干什么的而不关心它是怎么做的,画出架构草图;第二遍是精读,根据架构草图把系统分为小部分,每个部分从源码实现自底向上的阅读,更深入细致的理解每个模块的实现方式以及与模块外部的接口方式等,弄明白模块是怎么做的,为什么这样做,有没有更好的方式,自己会如何实现等等问题;第三遍是总结回顾,完善架构图,把架构图中那些模糊的或者空着的模块重新补充完善,把一些可复用的实现放入自己的代码库中。

现在是浏览阶段,并不适合过早涉及代码的实现细节,要借助nginx的文档理解其整体架构和模块划分。经过几年的发展,nginx现在的文档已经是很丰富了,nginx的英文wiki上包含了各个模块的详细文档,faq也涵盖了很丰富的论题,利用这些文档足以建立nginx的架构草图。所以浏览阶段主要的工作就是阅读文档和画架构草图了。

对于源码分析,工具是相当关键的。这几天阅读源码的过程,熟悉了三个杀手级的工具:scrapbook离线文件管理小程序、graphviz图形生成工具、leo-editor文学编程理念的编辑器。

scrapbook是firefox下一款轻量高效的离线文件管理扩展程序,利用scrapbook把nginx的wiki站点镜像到本地只需要几分钟而已,管理也相当简单,和书签类似。

graphviz是通过编程画图的工具集合,用程序把图形的逻辑和表现表示出来,然后通过命令行执行适当的命令就可以解析生成图形。

leo-editor与其说是一个工具平台,不如说是一套理念。和其他编辑器ide不同的是,leo关注的是文章内容的内在逻辑和段落层次,文章的表现形式和格式是次要的。用leo的过程,其实就是在编程,虽然刚开始有些不适应,但习惯之后确实很爽,杀手级的体验感,很听话。

btw,充实的8天长假结束了,总结一下,这个假期没有出去玩,做了三件事情,第一件事情是基本完成了房子的装修,墙面、地板、家具,都是亲力亲为的成果,虽然没有节省多少开支,却增添了动手的乐趣;第二件事情是溜冰,体会了平衡的力量;第三件事情是练习画画,锻炼了观察与概括的能力。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
也谈高效的阅读源码
nginx源码学习资源(不断更新)
Nginx从入门到实践|Nginx视频教程
varnish,squid,apache,nginx缓存区别
都要2020年了你还没弄懂Nginx吗?高薪架构师必备技能之一
千锋云计算毕业设计论文:高并发大型互联网站架构设计(三)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服