`
albertlee
  • 浏览: 35903 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
文章分类
社区版块
存档分类
最新评论

使用erlang 开发 web的选择

阅读更多
    最近看 Joe 的blog,并且研读他的那个  wiki 的例子程序。Joe就是那篇著名的  Yaws vs Apache的作者。不过, yaws 我始终还没有搞太明白,毕竟多了一层template,erlang程序本身还没搞熟呢。
    在那个wiki里面, Joe用了pico 这个 erlang web server,想来和 RoR 中的 webrick 角色类似。这个 pico 就是一个小的web服务器,erlang程序启动它之后,通过 event_handler 的方式处理 url dispatch,这里用了 pattern match 的方式,url 对应 erlang函数,处理起来倒也自然。
    现在还没有看到关于 pico 的性能测试方面的数据。

    其他通过Erlang开发web的方式还有: CGI,  yaws, erlyweb ,另外还可以作为 PHP等脚本的后台,通过socket进行通讯。现在 erlang的大型站点还真没有听说过,估计比 django的还要稀缺。
    考虑到 erlang 在并发性能上的优势,比较适合做大型的论坛社区。
分享到:
评论
11 楼 pi1ot 2007-05-14  
erlang的优势是分布和并发,适用的范围是计算密集型的,比如搜索引擎后端,或者按我的理解网游server端也应该是,没做过网游不是很肯定。
bbs的根本瓶颈在于io,或者在前端cache,或者在后端db,如果这个bbs的访问量足以使系统显现出性能瓶颈的话。
10 楼 wzgme 2007-05-14  
turing 写道
像Second Life那样的虚拟社区,大家有没有关注过?它的后台语言好像叫Linden。


确定?

只知道Linden Lab是一个公司.

从招聘来看底层是C++/OpenGL,Web是PHP
9 楼 yueliangdao0608 2007-05-14  
turing 写道
像Second Life那样的虚拟社区,大家有没有关注过?它的后台语言好像叫Linden。
哥们给介绍一下把。
8 楼 turing 2007-05-08  
像Second Life那样的虚拟社区,大家有没有关注过?它的后台语言好像叫Linden。
7 楼 Tin 2006-11-24  
erlang这种面向并发的语言,因为以前没有接触过,所以编程模型看起来比较难懂,可能一时半会儿在Web开发不会流行起来吧。那么代码开发估计也不过要想老了不失业还真要好好学学。
6 楼 clamp 2006-11-23  
象javaeye服务器这样的,跑经过优化的firebird bbs系统,最起码可以支持3000人以上的在线用户数,瓶颈主要是在I/O上。


5 楼 albertlee 2006-11-23  
(on a LiveCD linux, no chinese input mothod)

I read the yaws doc again, now I get more clearly of it.

Yaws can build MVC structure applications. and ErlyWeb is a framework of it (but I won't use it now, it is too young.)

so maybe:
  M - Mnesia database
  V - yaws file or erlyTL?
  C - yaws appmod


jackyz has said some advantage of app use erlang, maybe, plus the power of Ajax.
T1 has an article on zhe <Programmer> magzine about it.


4 楼 jackyz 2006-11-23  
albertlee 写道
考虑到erlang在并发性能上的优势,比较适合做大型的论坛社区。


前几天看到一个博客上说“这年头搞IT的英雄可真多啊”(注意:是“英雄所见略同”的英雄,不是“张艺谋的那个英雄”)。

真是有同感。

robbin 写道
个人以为Erlang用来做网络游戏的服务器端比较有前途。


robbin的看法也是有道理的。实际上,在一个高度社会化的论坛社区中,很多功能就类似于网络游戏。

我们姑且把这个叫做bbs2,或者说,是真正的基于web的bbs,而不是在现在的技术面前多方妥协的forum。

不知道这里多少人用过telnet协议的bbs(或者文字mud)。在那个世界中,几乎所有的功能都是“联机”的。比如:可以看到另一个用户在某个版发呆,可以即时收到站内短信,可以直接和在线的用户聊天,可以玩消耗积分的小游戏……。

这些功能在web的论坛中,要么是彻底砍掉,要么是“变通解决”,因为做过web论坛的人都知道,这些功能难以模拟,而且消耗巨大,访问量一上去,就会把系统拖垮。

有了erlang/comet技术的支持,web终于有可能支持大量的并发长连接,从而使得跨越这些技术障碍成为可能。而作为erlang语言基础架构的消息机制,使得上述功能的实现变得既简单又自然。

怎么说呢,我个人也是很看好这个方向的。
3 楼 albertlee 2006-11-22  
hehe~~ 孤陋寡闻了,连erlang的祖师爷都不认得了

选择BBS社区,是因为这个离自己现实工作比较接近一些,游戏方面暂时接触不到阿,而且还要涉及到client开发,不是一个人可以搞定的。所以选择bbs作为实验学习之用还是比较合适
2 楼 cookoo 2006-11-22  
呵呵,你应该介绍说Joe Armstrong是Erlang的创始人。
1 楼 robbin 2006-11-22  
Erlang的优势是并发能力,所以可以单机提供非常高的并发负载能力,号称C100K,即单机负载10万并发请求。个人以为Erlang用来做网络游戏的服务器端比较有前途。即服务器端代码量不大,有一定的逻辑复杂度,然后要求极高的并发负载能力(大量长连接)。

论坛社区用Erlang并不划算,论坛代码量很大,逻辑不复杂,负载能力也不算高(都是短连接)。

相关推荐

    erlang_web_development

    这些软件层面的要求与基于互联网的应用非常相似,因此Erlang成为了开发Web服务的有力候选者。 2. **WebPlatform框架**:基于Erlang内部开发Web应用程序的经验,开发了一套名为WebPlatform的框架。该框架采用设计...

    使用Erlang和Yaws开发REST式的服务

    在本文中,我们将探讨如何使用Erlang编程语言和Yaws Web服务器开发RESTful服务。Erlang是一种面向并发和分布式系统的语言,以其高可靠性而著称,而Yaws是由Claes Wikström用Erlang编写的高性能Web服务器,能够处理...

    erlang写的一个特别的web服务器

    在Web服务器领域,Erlang由于其天然的并发处理能力和强大的错误恢复机制,成为了构建高效服务器的理想选择。 这个特别的Web服务器可能是用Erlang编写的Mongrel2的Erlang实现,名为emongrel2。Mongrel2是一款由Zed ...

    Building Web Applications with Erlang

    首先,我们需要了解Erlang语言的特性和优势,然后逐步探索如何使用Erlang构建可扩展的系统,并通过RESTful架构提供Web服务。在此基础上,我们将进一步了解如何与Yaws服务器交互以及相关的Web开发技术。 Erlang是一...

    Building Web Applications with Erlang.2012.英文

    综上所述,文件描述了通过Erlang及其生态系统中的一系列工具和框架(包括OTP和Yaws)来开发Web应用的方法。涉及到了如何通过RESTful设计来增加Web服务的可扩展性和弹性,以及如何利用Yaws服务器来启动和管理Web服务...

    erlang中文基础教程

    3. **Web开发**:Erlang框架如YAWS和Chicago Boss为构建高性能Web应用提供了可能。 **学习资源与进阶** - 《Erlang编程》一书是学习Erlang的入门经典,适合初学者阅读。 - OTP(Open Telecom Platform)是Erlang的...

    erlang9.rar

    RabbitMQ是一款使用Erlang开发的消息队列服务,它是开源的、基于AMQP(Advanced Message Queuing Protocol)的代理,用于路由和分发消息。Erlang的强大并发处理能力和内置的分布式特性使得RabbitMQ成为处理大量并发...

    Erlang开发电信网管项目实践.ppt

    标题中的“Erlang开发电信网管项目实践”指的是使用Erlang编程语言来构建电信网络管理系统的过程和经验。在电信行业中,网管系统对于监控、维护和优化网络至关重要,而选择Erlang作为开发语言主要是因为它在并发处理...

    JavaScript + Delphi + ErLang讲座内容(4)

    erlang + delphi demo with Web UI`可能是通过Web界面展示Erlang和Delphi的集成,这可能使用了Erlang的Web开发框架,如Yaws或Mochiweb,与Delphi后端进行交互。 - `12. erlang demo with hot update`可能展示了...

    erlang web frame

    Erlang Web框架,如标题所示,是一种基于Erlang编程语言构建的Web开发框架,用于构建高效、可扩展和高并发的Web应用程序。Erlang因其强大的并发处理能力和容错性,在分布式系统和实时通信领域备受推崇。而Erlang Web...

    RabbitMQ和Erlang开发应用

    **RabbitMQ与Erlang开发应用** 在IT行业中,消息队列系统是分布式系统间进行异步通信的重要工具,而RabbitMQ作为一款广泛使用的开源消息代理,扮演着核心角色。RabbitMQ允许应用程序之间通过发布/订阅、路由、队列...

    erlang 框架

    Erlang框架是一种基于Erlang编程语言的全功能Web框架,主要设计用于构建高度并发、可扩展且容错...不过,Erlang和其框架的学习成本相对于传统Web开发语言可能较高,因此在选择时应根据项目需求和技术团队的背景来评估。

    ChicagoBoss, Erlang web MVC,现在有Comet.zip

    ChicagoBoss, Erlang web MVC,现在有Comet 芝加哥老板:开始小,梦想大 注意这是一个支持 Erlang 18的主分支。 对于旧的Erlang版本使用遗留分支。芝加哥老板是一个由 Rails 启发并用Erlang编写的服务器框架。 它...

    building_web_applications_with_erlang.pdf

    根据给出的文件信息,我们可以...以上所述内容提供了对Erlang在Web应用开发中角色的深刻理解,特别是使用Yaws Web服务器的相关知识和实践。这些知识对于想要深入学习Erlang在Web开发中应用的开发者来说是非常重要的。

    Erlang官网下载过慢

    RabbitMQ,一个基于Erlang开发的消息队列系统,是实现异步通信的关键组件。 标题中提到的“Erlang官网下载过慢”可能是因为网络问题或者官方服务器的繁忙导致的,这对于急需安装或更新Erlang的开发者来说是一个常见...

    erlang资源

    Erlang是一种面向并发的、函数式编程语言,由瑞典电信设备制造商Ericsson开发,用于构建高可用性、分布式和实时系统。这个“erlang资源”包含两本PDF书籍——《Erlang并发编程》和《Erlang入门手册》,它们是深入...

    [Erlang] 网络应用开发 (Erlang 实现) (英文版)

    [奥莱理] Building Web Applications with Erlang Working with REST and Web Sockets on Yaws (E-Book) ☆ 出版信息:☆ [作者信息] Zachary Kessin [出版机构] 奥莱理 [出版日期] 2012年06月14日 [图书页数] ...

    基于Erlang VM的语言

    3. **ErlyJS**: ErlyJS是一个纯Erlang实现的JavaScript编译器,它面向Erlang VM,旨在提供高性能的服务器端JavaScript,简化Ajax和Comet Web应用的开发。ErlyJS可以与CouchDB的JSON API无缝对接。 【代码层面的结合...

    erlang23.2版windows64位.zip

    Erlang是一种面向并发的、函数式编程语言,由瑞典电信设备制造商Ericsson...同时,Erlang社区还提供了一系列框架,如 Cowboy(Web服务器),Ecto(ORM),Phoenix(Web应用框架)等,帮助开发者更高效地开发应用程序。

Global site tag (gtag.js) - Google Analytics