開源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/