考虑一个Erlang Web框架来学习和使用在生产中

我前几天开始学习Erlang,这绝对是一个非常有趣的语言,非常适合web开发(至less后端)。 我将尝试并最终解决一个Erlang的web框架用于我的下一个项目。 由于Erlang是“ 新 ”,很难决定使用哪个框架(即缺乏文档和博客文章)。 到目前为止,我的googleing已经返回了我的3个结果,我想知道任何有Erlang经验的人(特别是Erlang网站开发),请评论每个框架的优缺点,并添加任何缺less的框架。

项目要求:

  1. Web应用程序
  2. 数据库
  3. HTTPs的
  4. 存储文件(例如图像)
  5. PDF操作
  6. dynamic逻辑比较(例如LHS == RHS等)

Erlang的web框架:

  1. 氮 (迄今为止首选)
  2. Erlyweb
  3. 哔哔
  4. 芝加哥老板
  5. Erlang Web
  6. webmachine

Erlang数据库:

  1. Mnesia (首选到目前为止)
  2. CouchDB的
  3. MongoDB的

Concrns:

    • JavaScript的一代

      由于氮生成并embedded到增加页面大小的页面上的JavaScript代码。 我不知道是否甚至有可能以某种方式从原始的HTML中“生成”JavaScript代码(以某种方式它可以被浏览器caching),以便减less传输到networking上的数据。 但我认为在一般事件模型和汽车线事件非常适合应用程序types,而不是太多的内容/公众面向types。

谢谢!

这篇博文比较了一些Erlang的web框架。

就我个人而言,我与mongodb(因为它具有本地erlang驱动程序和其他优点)和webmachine去URL调度。 我喜欢有非常简单的线框HTML的想法,主要是从webmachine和mongodb到前端的JSONpipe道处理或任何其他。 然而,另一个有趣的前端将是卡布奇诺咖啡。

我正在与CouchDb合作。 这是我写的一个快速入门指南 。 这是俄语,但代码样本是清楚的。 我select了这个数据库引擎,因为它是用Erlang编写的,并且在不同的开发语言上有很好的文档,示例和库。

而且我使用的是BeepBeep,因为它是我find的最轻量级的框架。 Earlyweb对于我的任务来说太大了。

VoltDB( http://voltdb.com/ )是一个开源和商业数据库,ACID,可扩展性和非常高的吞吐量(来自领先的OLTP DBMS的50倍)。 VoltDB最近开发了Henning Deidrich开发的erlang客户端API。 只要join论坛,findhenning。

正如前面的回答所述,VoltDB在规模上提供了极高性能的OLTPfunction(事务和ACID)。 在http://community.voltdb.com/getinvolved#svn上有一个Erlang客户端库;