微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐