我应该为 Lua Web 开发使用什么 Web 服务器(以及为什么)?
6 回答
周围有一些基于 Lua 的网络服务器:
- Xavante似乎是最受欢迎的。
- Haserl又好又小。
- Nanoki并不是严格意义上的网络服务器,而是一个不错的小型纯 Lua wiki 引擎,值得研究。至于 Lua wiki,还有Sputnik,它功能齐全且非常灵活,但速度有点慢。
- 如果您更喜欢 Apache,可以使用 mod_lua (ex mod_wombat ) 。看起来它将作为核心模块进入下一个 Apache 发行版。
- 请注意,编写FastCGI Lua 模块并不难。
- 还有Luv Lua MVC 网络框架项目(GitHub 页面)。它还不成熟,但可能包含一些有趣的见解。
更新。还有一些要检查的框架:
- Luvit:http ://luvit.io/ (对我来说太像节点了)
- nginx 的 ngx_lua 模块:http ://wiki.nginx.org/HttpLuaModule
- mongrel2 的 TIR:http: //tir.mongrel2.org/
- Ophal:http ://ophal.org (网络平台)
- 列夫:https ://github.com/connectFree/lev
- 涡轮增压:https ://github.com/kernelsauce/turbo
我们一直在为 nginx 开发 ngx_lua 模块,它支持到 mysql、PostgreSQL、memcached、其他 http 服务等的 100% 非阻塞网络流量,因此具有出色的并发级别和整体性能:)
http://github.com/chaoslawful/lua-nginx-module
我们在生产中使用它:)
对于开发,运行小型测试服务器会很方便。Lua Web 开发的一个很好的候选者是Xavante服务器,它是 Kepler 项目的一部分。除了一些支持的 Kepler 模块,Xavante 本身是用纯 Lua 编写的。
对于生产来说,在Apache 上运行的新的(在 Apache 团队将其纳入核心模块集之前mod_lua
就被称为)似乎是一个备受推崇的选择。mod_wombat
还有 LuCI 项目 [1]。这是 LuaConfigurationInterface,基于 Web 的 OpenWRT(嵌入式 Linux)管理前端。
LuCI 的人还编写了一个非常小的网络服务器,称为 lucittpd。LuCI 也是一个 MVC。并处于生产状态;)
最近,Lua 支持被添加到http://github.com/valenok/mongoose Web 服务器,在http://code.google.com/p/mongoose/downloads/list查看预构建的 windows 二进制文件