有没有人用Lua构建Web应用程序?

Ted*_*dyK 7 php java lua

我来自Java和PHP背景来构建Web应用程序.

有没有人在使用Lua之前构建Web应用程序

问题:如果是这样,那么在Web应用程序中使用Lua与PHP或Java有什么关系?(例如,Web服务器支持,性能,代码维护等).

Ily*_*nov 8

正如其他人所说,Lua是"自己动手"的一种环境.与Perl/PHP/Python/Ruby相比,它非常快且内存效率非常高,特别是如果您使用的是LuaJIT.并且很容易与C/C++代码集成.通常这些点与典型的Web应用程序无关,其中性能通常受数据库限制.此外,您并不真正关心C/C++集成以及您不希望自己做什么,而是希望在现有框架之上构建.出于这个原因,我认为Lua不适合典型的Web应用程序.与此同时,Lua也有一些利基应用.例如,我们公司专门构建用于保存的高性能HTTP服务器.所以我们使用的是我们在C++中从头开始编写的自己的HTTP服务器,它将Lua集成为我们业务逻辑的脚本语言.这使得我们可以快速定制Lua中的业务逻辑,与我们在纯C++时必须做的相比.与此同时,我们总是可以选择在C++中执行性能关键部分.如果我们使用任何其他脚本语言我们肯定会更慢,它将使用更多内存,并且通常更难与C++代码集成.与此同时,如果我们使用其他脚本语言,我们并不太关心丢失大量的库支持,因为我们正在使用的域非常专业,所以通常这些库无论如何都与它无关.这使得我们可以快速定制Lua中的业务逻辑,与我们在纯C++时必须做的相比.与此同时,我们总是可以选择在C++中执行性能关键部分.如果我们使用任何其他脚本语言我们肯定会更慢,它将使用更多内存,并且通常更难与C++代码集成.与此同时,如果我们使用其他脚本语言,我们并不太关心丢失大量的库支持,因为我们正在使用的域非常专业,所以通常这些库无论如何都与它无关.这使得我们可以快速定制Lua中的业务逻辑,与我们在纯C++时必须做的相比.与此同时,我们总是可以选择在C++中执行性能关键部分.如果我们使用任何其他脚本语言我们肯定会更慢,它将使用更多内存,并且通常更难与C++代码集成.与此同时,如果我们使用其他脚本语言,我们并不太关心丢失大量的库支持,因为我们正在使用的域非常专业,所以通常这些库无论如何都与它无关.它将使用更多内存,并且通常更难与C++代码集成.与此同时,如果我们使用其他脚本语言,我们并不太关心丢失大量的库支持,因为我们正在使用的域非常专业,所以通常这些库无论如何都与它无关.它将使用更多内存,并且通常更难与C++代码集成.与此同时,如果我们使用其他脚本语言,我们并不太关心丢失大量的库支持,因为我们正在使用的域非常专业,所以通常这些库无论如何都与它无关.


asm*_*ino 6

我现在正在使用Lua来构建一个Web应用程序!无论软件开发人员发生什么事情,"自己动手"都有一个坏名字 - 太懒了,断断续续的兆字节支持库,或者是什么?实际上,正如其他人所指出的那样,有不错的支持,而不是像Python一样.Lua是迄今为止最快的脚本语言(特别是www.luajit.org),并且语言设计比其他联盟中的任何其他语言设计清晰.这对于长期维护至关重要.

对于那些使用lighttpd作为他们的网络服务器(包括我)的人来说,额外的好处是Lua的全部功能可用于mod_magnet脚本,对于同步请求处理/重写类固醇非常有用.

  • "自己动手"并没有什么本质上的错误,但如果你必须自己实施一切,那么你将不得不花费大量时间在这些事情上,而众所周知,时间就是金钱.还有一个问题是您需要考虑库为您处理的许多安全问题 - 但作为交换,如果存在错误,您可以立即做出反应,而库通常并非如此 - 您经常会这样做必须等待它更新. (3认同)

小智 5

我用 Lua 编写了一些网站。第一个是我的魔兽世界公会的突袭计划员(这通常是你开始在 Lua 中编程的方式......)。为此,我将 mod_lua 与 Apache 2.4 的 alpha 版本一起使用。另外两个是面向客户的小型竞赛网站,由 WSAPI、Nginx、Spawn-fcgi 和 Orbit 开发。这个设置非常快,比 mod_lua 和我见过的其他任何东西都快。页面会立即显示,就好像它们在缓存中一样!体验非常愉快,Lua 让您快速高效。但你最好有条不紊。Lua 在 Web 开发方面缺少很多电池,因此您经常必须实现自己的,并且它可能会变得混乱。所以我建议你在开始之前计划你需要什么。我在 MySQL 中使用了自己的 Lua “ORM”,并使用了 Lua Pages 的分叉版本作为模板。http://mascarenhas.github.com/2009/10/24/wsapi-nginx-fcgi.html 我认为这是最好的设置。


use*_*084 5

我们使用 lua 进行后端实现并取得了巨大成功。您还可以查看适用于嵌入式设备的 JUCI webgui。它使用lua进行后端实现。您可以查看代码如何与 lua/C 后端交互: https: //github.com/mkschreder/juci

但请注意,这个后端是一个纯 jsonrpc 后端,因此它不会创建任何像 php 或 cgi 页面这样的 html。如果您所做的只是处理和响应 json 请求,那么 Lua 是完美的。您还可以在 php 中创建主应用程序,并使用 lua 在后端编写应用程序。或者完全用 javascript 编写主应用程序。

我认为如果你打算在想要生成html的地方使用lua那么你会发现它缺乏很多功能,但是如果你将它限制为纯功能性后端实现那么你会发现它工作得很好。


小智 4

有相当多的项目使用 Lua 进行 Web 开发。

例如Nanoki,一个用纯 Lua 开发的 HTTP 和 wiki 引擎。

或者 Sputnik,它是建立在开普勒之上的。

也就是说,Lua 很大程度上是一种“自己动手”的环境。