代码改变世界

随笔分类 -  源码剖析:Mongoose

Mongoose源码剖析:核心处理模块

2010-07-25 16:41 by 吴秦, 8642 阅读, 收藏, 编辑
摘要: 引言 前面我们介绍了Mongoose所有的几个主要的数据结构mg_context、mg_connection、mg_request_info,还有Mongoose的生命主线。有了这些基础就可以来看看Mongoose的核心处理工作是怎样的。如果你还没有阅读前面的文章,你可以通过下面的隧道直通: Mongoose源码剖析:外篇之web服务器 Mongoose源码剖析:Introduction and... 阅读全文

Mongoose源码剖析:mongoose的工作模型

2010-07-24 22:23 by 吴秦, 12604 阅读, 收藏, 编辑
摘要: 引言 我看一个项目的时候,比较喜欢首先看它的架构和设计。因为这样在研读源码的时候,有一个指导作用,不会迷失于具体细节,并能够引导我如何去将点串成线,将线串成面。而且一个软件怎么样,很大程度上取决于它采用的架构。 本文主要介绍Mongoose的工作模型,及根据这个模型将代码大致串起来,找出主线。内容框架如下: 1、线程模型 2、从程序入口着手 3、Mongoose的生命旅程 1、线程模型 Mo... 阅读全文

Mongoose源码剖析:数据结构篇

2010-07-24 21:08 by 吴秦, 9027 阅读, 收藏, 编辑
摘要: 引言 Mongoose中有几个数据结构扮演着重要的角色,它们分别是: struct mg_context:保存Mongoose的上下文,几乎每个函数都有mg_context参数 struct mg_connection:保存HTPP连接信息 struct mg_request_info:保存HTTP请求的信息,这个结构体传递给URL处理函数 我之所以现在这里介绍它,因为之后的分析工作中要用到它们... 阅读全文

Mongoose源码剖析:Introduction and Installation

2010-07-24 14:52 by 吴秦, 14367 阅读, 收藏, 编辑
摘要: 引言 要剖析Mongoose的源码,首先你得知道它的一些基本情况和特性、并去使用它。本文就是介绍Mongoose是个什么东西?及如何安装和使用?这里假设你知道什么web服务器软件、web服务器使用什么协议、怎么提供服务等,如果你还不知道建议首先阅读:《Mongoose源码剖析:外篇之web服务器》。 本文主要内容如下: 1、Mongoose介绍 2、Mongoose的编译和使用 3、Makef... 阅读全文

Mongoose源码剖析:外篇之web服务器

2010-07-24 06:34 by 吴秦, 16554 阅读, 收藏, 编辑
摘要: 引言 在深入Mongoose源码剖析之前,我们应该清楚web服务器是什么?它提供什么服务?怎样提供服务?使用什么协议?客户端如何唯一标识web服务器的资源?下面我们抛开Mongoose,来介绍一个web服务的这些通性。 web服务器:通常是指一个计算机程序(web服务器是什么?),在World Wide Web上提供诸如web页面的服务(提供什么服务?),使用HyperText Transfe... 阅读全文