gtalk使用http trunck结合浏览器ajax实现了基于server push的技术,最近山寨了一把。
客户端: Firefox,使用XMLHttpRequest对象以及,xmlHttp.readyState == 3来接收
server的数据, (IE实现机制有点不一样,需要使用ActiveXObject("htmlfile")来实现),
服务器设计:
chat_session _rver:gen_server实现,主要考虑浏览器的重连,用于标识用户
chat_server: gen_server实现,控制创建聊天室以及加入聊天室
chat_rootm: 一个room一个进程
caht_user_proxy:代理用户加入聊天室进程
模板技术:erlydtl
mysql驱动: http://code.google.com/p/erlang-mysql-driver/(utf有点问题,没找到配置的地方)
mochiweb_socket_server.erl 对链接数有限制,默认是2048
在一台512内存,Intel(R) Pentium(R) 4 CPU 2.80GHz机器上,链接1万个客户端,性能不错。
分享到:
相关推荐
**基于Mochiweb的聊天室** 在信息技术领域,构建实时通信系统,如聊天室,是常见的需求。这里我们探讨的是一个使用Erlang编程语言和Mochiweb框架实现的聊天室。Erlang是一种面向并发、分布式计算的语言,因其在处理...
这个实例将帮助我们理解Mochiweb是如何工作的,并如何使用它来构建一个简单的Web服务器。Erlang是一种并发性极强、容错性高的语言,特别适合构建分布式系统,而Mochiweb则是Erlang生态系统中的一个重要组件。 首先...
这个 "erlang mochiweb-test demo" 压缩包很可能是为了展示如何使用 Mochiweb 在 Erlang 中构建一个简单的 Web 应用程序或测试环境。 Mochiweb 的核心组件包括以下几个部分: 1. **HTTP 服务器**:Mochiweb 提供了...
MochiWeb 的最新版本可在MochiWeb 的邮件列表位于 设置 MochiWeb 环境需要 Erlang OTP,可在使用项目创建一个新的 mochiweb:make app PROJECT=project_name 要使用特定目录中的项目创建新的 mochiweb: make app ...
描述中的“erlang web frame”可能指的是Erlang生态系统中的多个Web框架,其中包括了Mochiweb和Cowboy这两个著名的名字。它们都是轻量级、高性能的HTTP服务器实现,常被用作构建Web应用的基础。 1. **Mochiweb**:...
NoticeSystem则利用了mochiweb的高效通信特性,采用了Erlang编程语言。MQserver使用了RabbitMQ作为基础的异步消息队列服务,而FileStoreServer结合了Varnish和MongoDB来实现静态资源的存储。 具体服务与应用的设计...
MochiWeb的邮件列表位于 R12B兼容性:MochiWeb的母版已通过R14A及更高版本进行了测试。 与R12B兼容的分支在单独维护。为方便起见,该存储库的R12B分支有时会在官方存储库中进行镜像。 要使用项目创建新的mochiweb,...
很棒的网络刮板 支持 令人敬畏的Web scaper,爬虫的集合。 Java ...开源Web爬虫,建立在nosql数据库(apacheouchdb,riak),AMQP数据库(rabbitmq),webmachine和mochiweb之上。 Python scrap
- WebIM服务器使用Erlang的“mochiweb”实现,可以支持大量的并发长连接,从而确保系统的高可用性和扩展性。 - **消息接口设计**: - AJAX POST消息:用户通过POST方式向SNS主服务器发送消息。 - 主服务器处理并...
- Erlang有许多Web开发框架,如Yaws、Mochiweb和Cowboy等。"web1"项目可能采用了其中一种,这些框架提供了HTTP服务器、路由处理和模板渲染等功能,帮助快速构建Web应用。 6. **数据持久化与数据库集成**: - ...
Erlang 是一种面向并发和分布式系统的编程语言,特别适合构建高可靠性、容错性强的系统,如Web服务器。在上述代码中,我们看到的...在实际开发中,通常会使用像YAWS、Mochiweb或Cowboy这样的成熟Erlang Web服务器框架。
erlang + delphi demo with Web UI`可能是通过Web界面展示Erlang和Delphi的集成,这可能使用了Erlang的Web开发框架,如Yaws或Mochiweb,与Delphi后端进行交互。 - `12. erlang demo with hot update`可能展示了...
RPSSL彗星 RPSSL-Rock-Paper-Scissors-Spock-Lizard是一款简单但着名的2人游戏。 通常,它是第一人称自己玩的,但这是网络版本。 Web版本使用,该是运行时间很长的HTTP请求,可用于将服务器立即...webserver:start("9
- Mochiweb: 一种轻量级的Erlang Web服务器,可通过SVN检出并放置于 `$ERL_LIB` 目录下自动加入至编译路径。 - GeoIP数据库: 通过脚本从MaxMind获取并解压,存储于`priv`目录下。 - egeoip: 从Google Code获取,...
2. **Erlang实现Websocket**:在Erlang中,可以使用如`cowboy`或`mochiweb`这样的Web框架来处理Websocket连接。它们提供了方便的中间件,使得在Erlang进程中直接处理Websocket连接成为可能。例如,`cowboy`中的`...
elli相比其他Erlang Web服务器(如Yaws、Mochiweb、Cowboy)更专注于HTTP API服务,其设计更简洁,对于API开发更为友好。然而,不同的服务器在性能、功能和灵活性方面各有特点,选择哪一款取决于具体项目需求。 总...
Webmachine 是一个应用层,为 mochiweb 提供 HTTP 语义的特性,定义一个简单而清晰的连接应用的方式。 标签:Webmachine Web框架
SimpleBridge用作两个最受欢迎的Erlang Web框架到Web服务器的桥梁: 和 从某种意义上讲,它类似于 ,除了具有一些关键的改进/不同之处: 轻松扩展-需要200到400行,以增加对新HTTP服务器的支持,包括网桥模块本身...
核心功能目的:高性能协议中继端点:WebSocket,MQTT,TCP 代码库:700 LOC(Erlang),500 LOC(JavaScript) 透析仪:REBAR,REBAR3,MAD,MIX 主机:COWBOY,EMQ,MOCHIWEB,RING,TCP,UDP协议扩展模板:DTL,...
Webmachine是一个应用程序层,它在mochiweb提供的出色的按位和HTTP语法管理的基础上增加了HTTP语义意识,并提供了一种简单明了的方式将其连接到应用程序的行为。 可获得更多信息。 您还可以阅读有关Webmachine的...