java技术实现视频聊天室的服务器端

04-08-30 onlyliuxin
受朋友之托,要做一个视频、语音聊天室,支持多人在线聊天(最多支持10万人同时在线)我在这方面经验不足,没有实际经验 对服务器端的技术选择比较为难,我想使用j2ee相关的技术,稳定性、可扩展性都比较好,但是速度、效率上可能会有不小的损失。用C++的话需要做的基础工作太多了,但是效率可能很高,不知道使用java来完成服务器端有没有相关成功案例,望各位大虾指教.

2
Azure_2003
2004-08-31 10:52
你大约有多少人?开发期大约要多久?

banq
2004-08-31 19:55
可以使用非堵塞IO来基于Socket开发聊天室,关键技术是在多台机器上集群聊天室,JavaSpace技术比较适合。

J2EE技术不是很适合这样实时性极高的系统。

onlyliuxin
2004-08-31 20:33
时间大概有半年,人数还没有确定,现在关键是选择一个技术方案

onlyliuxin
2004-08-31 20:40
to Banq:这么说java技术是可行了? 能不能详细介绍一下集群聊天室的实现?多谢

banq
2004-09-01 10:14
当然可行,我两年前做的一个无线系统,它是一个游戏聊天的平台,虽然说是无线,但是使用PC客户端等各种客户端。

这个系统我们是基于J2SE和J2EE,包括EJB RMI远程调用;JSP模板特定标识,基于Socket的编程,使用了Pool和缓存,制造了自己的JavaBeans容器,使用Command模式实现界面交互等等。可以说,现在Spring那些东西(包括out of box)我们都自己实现或相近实现过。

我们是在集群这个环境卡住的,由于主逻辑不在EJB中运行,所以,我们必须自己做集群,方案是基于Jgroup,但是大量底层工作要做,后投资方等不及,选择了其他方向。

所以,聊天室集群当时我们没有探索成功。这也是我一直注重集群概念的缘故,对于一个需要发展的大型项目,如果事先没有可伸缩性的规划设计,最好会损失惨重。

Azure_2003
2004-09-01 11:18
请问banq的那个游戏聊天系统的客户端使用什么语言做的客户端?是java做的吗?

Azure_2003
2004-09-01 11:25
> 最多支持10万人同时在线)我在这方面经验不足,没有实际经?

这个系统的性能要求比较高,最好能找到经验非常丰富的技术高手帮忙。

> 对服务器端的技术选择比较为难,我想使用j2ee相关的技术?> 稳定性、可扩展性都比较好,但是速度、效率上可能会有不小

> 乃鹗АSC++的话需要做的基础工作太多了,但是效率可能很

用java做服务器端是最适合的。

时间半年可以够用,如果你的团队的经验都比较丰富的话。最关键的人是项目开发中的管理,系统的架构,就是banq说的集群、扩展是非常重要的。

Azure_2003
2004-09-01 11:30
架构和底层是最重要的,可能要花2/3的时间在系统设计和底层编码上,上层的编码量大但是需要的时间不会很多。

Azure_2003
2004-09-01 12:42
哦,用的是jsp

banq
2004-09-01 14:11
客户端任何语言都可以 ,支持J2mE sybian Linux/C等等都可以。

onlyliuxin
2004-09-01 20:34
看来集群是关键啊,我现在的情况是,硬件包括带宽都不成问题,

资金也比较充足,这个项目在技术上具有很大挑战性,哪位高手能给出一个解决方案?

我在北京,邮箱是onlyliuxin@yahoo.com.cn,采用以后报酬绝对很优厚.

猜你喜欢