Mongrel2 Web服务器

程序名称:Mongrel2

授权协议: BSD

操作系统: 跨平台

开发语言: C/C++

Mongrel2 介绍

Mongrel2是一个基于ZeroMQ的Web服务器,语言独立,可以用17种语言编写应用,还有更多非常奇特的地方:
What makes Mongrel2 special is how it satisfies these requests in a language
agnostic andasynchronous way using a simple messaging protocol to talk to
applications; not just serve files. Mongrel2 is also designed to be incredibly
easy to automatically manage it as part of your infrastructure.
Other web servers do some of these things, but they either do them in a
bastardized way or not all of them at once. Plenty of language specific web
servers like Node.js and Jetty have asynchronous operation, but they’re not
language agnostic1 . Other web servers will let you talk to any language as a
backend, but they insist on using HTTP proxying or FastCGI, which is not
friendly to asynchronous operations.

基本架构是:
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管理状态机来实现的

Mongrel2 官网

http://mongrel2.org/

相关编程语言

memcached-session-manager 将session存储到memchac...
Tomcat Native 这个项目可以让 Tomcat 使用 Apache ...
EasyTomcat 是一个用来帮助简化 Tomcat 和MySQL 管理...
riak-session-manager 是使用 Riak 来存储Tomcat se...
tomcat-redis-session-manager 是一个用来将 Tomcat...
这是一款在 Oracle 的 JDeveloper 开发环境下管理To...