1-1.客户端-AIM即时通信软件
美国在线推出了Flash版AIM即时通信软件,并把这个服务的名字叫做“AIM Express”.以前美国在线也开发了网页版的AIM,但需要JAVA支持,但IE一直对JAVA不太友好,导致不具有普遍性。现在采用Flash技术,因此在用户体验性方面也很好,甚至支持手机短信。同样支持声音提示,可以添加好友,从试用的过程来看,速度非常流畅,和一般的即使通信软件没有区别。
官方网站 :
通信协议(私有):OSCAR 立即传讯协议和TOC 协议
2-1.服务器-ejabberd
ejabberd是基于Jabber/XMPP协议的即时通讯服务器,由GPLv2授权(免费和开放源码),采用Erlang/OTP开发。它的特点是,跨平台,容错,集群和模块化。
Ejabberd目前是可扩展性最好的一种Jabber/XMPP服务器,支持分布多个服务器,并且具有容错处理,单台服务器失效不影响整个cluster运作。
2-2.服务器-Openfire
Openfire开源系列包括
Openfire服务器
一个跨平台,采用Java开发,开源的实时协作(RTC)服务器基于XMPP(Jabber)协议。Openfire安装和使用都非常简单,并利用Web进行管理。单台服务器可支持上万并发用户。
Spark安装客户端
Openfire的客户端为spark,Spark支持聊天,语音,视频,会议,文件收发,截屏,连接msn等功能。
Spark WEB客户端
基于WEB的客户端,不支持保存聊天记录,不能传递文件,不支持声音视频等。
Tinder 类库
将Openfire, Whack和 ConnectionManager项目中的部分代码独立出来,提供一个轻量级的 XMPP 运行,让开发人员复用Openfire的基本功能。
XIFF类库
XIFF框架是一个flash类库,通过XMPP协议连接服务器。
smack类库
Smack类库可以模拟客户端与服务器进行通信。
源代码下载地址:
安装及源代码下载地址:
安装文档:
3-1 Hemlock多框架
Hemlock使用XMPP MUC chatroom作为多人交互应用的通道,通过flash长连到XMPP Server上。由于XMPP Server(如openfire, ejabberd等)本身就支持多服务器,因此使用默认的版本就可以支持上十万的并发,如果稍加优化,同时支持上百万用户也不会有太大问题。
3-2 Mina
Mina是一个高性能的Java异步网络通讯框架。当前发行的 MINA 版本支持基于 Java NIO 技术的 TCP/UDP 应用程序开发、串口通讯程序(只在最新的预览版中提供),MINA 所支持的功能也在进一步的扩展中。
阅读(1082) | 评论(1) | 转发(0) |