嵌入式服务器的Web技术

时间:2010-06-28 20:05:58

标签: php c embedded lua

我最近为嵌入式设备启动了一个新的Web开发项目,并希望征求一些使用技术的建议。该设备将提供HTML页面,其中包含用于从JSON服务器检索数据的AJAX代码。我们暂时使用切诺基作为网络服务器,但我们并不依赖它。

目前,我正在考虑以下技术:

  • 用PHP编写所有内容。我知道它很大,很慢,而且很臃肿,但我有大约10MB可用于网络界面(对于嵌入式系统来说很多),我们不会在任何这些设备上看到很多流量。但它确实需要对用户做出响应(页面应该在不到一秒的时间内加载)。

  • FastCGI +一个C程序 - 我们正在使用内存数据库,因此C程序可以直接通过API与数据库交互。这将比PHP有更好的性能,但开发时间和可靠性是一个问题,因为C不太适合Web开发。

  • Lua + Kepler - 这似乎是性能和开发时间之间的良好中间立场。但是,我从未与Lua合作过,所以我不确定如何在嵌入式Web项目中实现它。我也不确定它与Cherokee网络服务器的集成程度。

那么对上述技术的任何意见或过去经验如何?我应该列入名单中的其他任何人吗?

谢谢, 亚历

3 个答案:

答案 0 :(得分:9)

当我在这个区域时,我使用了Lua和一个简单的FastCGI跑步者(Luaetta [因为我确定如果你问那个家伙的话,最新的来源是否可用],尽管我我也确定那不是唯一的,当然还有开普勒,由lighttpd产生。

它在嵌入式媒体播放器上表现很好,用于远程访问内容和控制设备。虽然我不再维护它,但您可以在http://matthewwild.co.uk/projects/wooble找到更多相关信息。如果您认为源代码可以帮助我找到它,它目前只能通过包管理器获得,但我可以根据动机解决这个问题。

该领域的另一个(再次Lua)项目是LuCI。这些人致力于为嵌入式设备(特别是路由器)创建一个Web界面,并且已经生成了一个很好的框架,其中包含许多面向这种系统的支持库。

我不会担心不认识Lua。如果您知道任何语言,那么您可以在一两天内学习Lua,该手册记录整个语言并且很短。

答案 1 :(得分:0)

如何看待Facebook的PHP编译器HipHop?

http://wiki.github.com/facebook/hiphop-php/

这样你就可以用PHP编写代码并有效地将其编译为C ++。

答案 2 :(得分:-1)

ASP.NET。假设您对Embedded Windows Server 2008不感兴趣,您仍然可以通过合并Mono into Cherokee来利用ASP.NET。您可以将Visual Studio用作RAD开发环境并使用ASP.NET MVC 2之类的东西。很多第三方用户控件也只能与Mono(Telerik Announces Support for their ASP.NET controls on Mono!)一起使用。