开源WebSocket服务器项目CshBBrain第一版发布
转自http://cshbbrain.iteye.com/blog/1685217
通过1年多的努力,今天终于发布了开源WebSocket服务器项目CshBBrain.由于本人比较懒,就使用了我的网名作为项目的名称。项目诞生于公司以前的一个股指推送服务器(见博客http://cshbbrain.iteye.com/blog/1207471),股指推送服务器每5秒就向手机、平板电脑上的网页推送最新的股指信息。由于当时本人对java NIO 研究不过深入,所以一直没有写出满意的基于NIO的websocket服务器。通过1年多的努力研究基于NIO的高性能的WebSocket服务器CshBBrain终于诞生了。
CshBBrain服务器的实现参考了Mina,Netty等NIO框架的实现;CshBBrain服务器的特点是小巧,灵活和高性能。学习曲线低。目前源代码已经释放到google code上。使用文档后续会慢慢补充和完善。
CshBBrain 是一个来自中国的简单的轻量级的高性能的WebSocket服务器。基于JAVA实现的,充分运用了java的多线程技术,线程池,NIO,缓冲区池等技术。项目从技术架构上采用了分层思想,分为网络传输层,协议解析层和业务层共3层。适合用于数据推送(股票行情),游戏,聊天/im等服务器程序的构建。
网络传输层封装了网络连接的请求建立,数据读写监听,为协议解析层提供服务;协议解析层专门负责具体的协议解析,如果你有兴趣,你也可以在协议层编写自己的协议编码解码器来构建基于你自己协议的服务器;业务层在协议解析层之上做具体的业务处理,这部分的工作就是你要开发具体服务所要编写的业务代码了。
如果你觉得Mina,Netty太复杂,庞大,难于上手,CshBBrain也许是适合你的选择。
项目源代码托管在google code上面,项目地址:http://code.google.com/p/cshbbrain/