考虑一个Erlang Web框架来学习和使用在生产中
我前几天开始学习Erlang,这绝对是一个非常有趣的语言,非常适合web开发(至less后端)。 我将尝试并最终解决一个Erlang的web框架用于我的下一个项目。 由于Erlang是“ 新 ”,很难决定使用哪个框架(即缺乏文档和博客文章)。 到目前为止,我的googleing已经返回了我的3个结果,我想知道任何有Erlang经验的人(特别是Erlang网站开发),请评论每个框架的优缺点,并添加任何缺less的框架。
项目要求:
- Web应用程序
- 数据库
- HTTPs的
- 存储文件(例如图像)
- PDF操作
- dynamic逻辑比较(例如LHS == RHS等)
Erlang的web框架:
- 氮 (迄今为止首选)
- Erlyweb
- 哔哔
- 芝加哥老板
- Erlang Web
- webmachine
Erlang数据库:
- Mnesia (首选到目前为止)
- CouchDB的
- 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客户端库;