Web服务器:Mongrel2 简介

jopen 12年前

Web服务器:Mongrel2 简介
Mongrel2 是一个与应用程序、语言,网络架构无关的Web服务器。它具有以下特性:

支持大量编程语言

当前支持17种编程语言。包括:

还有Web开发框架:

  • Tir is a Lua framework written to show how to do direct frameworks with Mongrel2.
  • Brubeck is an asynchronous, non-blocking web framework written in Python.
  • Bamboo is a Tir derivative with a bunch more features.
  • Photon is a PHP framework similar to Tir and way faster than PHP.
操作友好

您可以从任何支持的语言来控制Mongrel2几乎所有的方面。

多协议支持

支持 HTTP 1.1 and 1.0, Flash JSON Sockets, Flash XML Sockets, WebSockets (hybi).

现代设计

采用简洁,易于使用C语言开发,基于内部事件+协作的设计方式。

基本架构是

a、非阻塞IO
b、通过libtask实现event IO和每Connection一个coroutine
c、和Mongrel一样用Ragel实现HTTP协议解析
d、将Request编码为JSON或TNetString发送到ZeroMQ
e、ZeroMQ的客户端作为Handler接收Request进行处理
f、Handler将响应写回ZeroMQ
g、Mongrel2将Response写回给Http Connection
h、这整个过程又是通过Ragel管理状态机来实现的


项目主页:http://www.open-open.com/lib/view/home/1348934401650

</div>