阅读更多

1顶
0踩

开源软件
CshBBrain是一个简单的、轻量级的、高性能的WebSocket服务器,基于Java实现的,适合用于数据推送(股票行情)、游戏、聊天/IM等服务器程序的构建。

该项目充分运用了Java的多线程技术、线程池、NIO、缓冲区池等技术,实现参考了Mina、Netty等NIO框架的实现。技术架构上采用了分层思想,分为网络传输层、协议解析层和业务层共3层:

  • 网络传输层封装了网络连接的请求建立,数据读写监听,为协议解析层提供服务;
  • 协议解析层专门负责具体的协议解析,如果你有兴趣,你也可以在协议层编写自己的协议编码解码器来构建基于你自己协议的服务器;
  • 业务层在协议解析层之上做具体的业务处理,这部分的工作就是你要开发具体服务所要编写的业务代码了。
最新版本为CshBBrain 1.0.2版,添加了推送类应用实例——股指推送应用,优化了客户端超时检测机制。

详细信息见博客:http://cshbbrain.iteye.com/blog/1207471

GitHub下载地址:https://github.com/CshBBrain/CshBBrain/downloads

GoogleCode下载地址:http://code.google.com/p/cshbbrain/downloads/list
1
0
评论 共 10 条 请登录后发表评论
10 楼 CshBBrain 2012-10-15 12:57
lqixv 写道
websocket 协议需要浏览器支持才行,目前感觉限制还比较大

目前在中国桌面浏览器支持的的程度不高,但在移动领域基本上都支持,智能手机和平板电脑应用都支持挺好的。
9 楼 CshBBrain 2012-10-15 12:56
youarestupid 写道
CshBBrain 写道
youarestupid 写道
是否可以方便地集成入Web Server,如tomcat

暂时不能集成进去,你可以自己写个servlet启动CshBBrain即可。但建议不要集成进去进去,因为没有必要,在客户端通过websocket api与CshBBrain交互不存在跨域问题。其实我最近也在构思一个新的web应用的框架,就是应用中所有html,js,css等资源文件都交给web 服务器,所有动态内容(数据的交互)都交给websocket来完成。客户端通过websocket的api和websocet服务器交换数据,也许会带给用户更棒的体验。

但是交互数据与触发事件,很多都是从web server发起的,难道还要写个web server和cshbbrain之间的socket通信服务?

目前我们开发手机和平板电脑上的模式就是我所说的模式,其实web服务器在我们的架构中就只从当了资源下载的角色,所有业务都通过websocket api 和websocket服务器交互。
8 楼 lqixv 2012-10-15 12:53
websocket 协议需要浏览器支持才行,目前感觉限制还比较大
7 楼 youarestupid 2012-10-15 12:50
CshBBrain 写道
youarestupid 写道
是否可以方便地集成入Web Server,如tomcat

暂时不能集成进去,你可以自己写个servlet启动CshBBrain即可。但建议不要集成进去进去,因为没有必要,在客户端通过websocket api与CshBBrain交互不存在跨域问题。其实我最近也在构思一个新的web应用的框架,就是应用中所有html,js,css等资源文件都交给web 服务器,所有动态内容(数据的交互)都交给websocket来完成。客户端通过websocket的api和websocet服务器交换数据,也许会带给用户更棒的体验。

但是交互数据与触发事件,很多都是从web server发起的,难道还要写个web server和cshbbrain之间的socket通信服务?
6 楼 CshBBrain 2012-10-15 12:29
youarestupid 写道
是否可以方便地集成入Web Server,如tomcat

暂时不能集成进去,你可以自己写个servlet启动CshBBrain即可。但建议不要集成进去进去,因为没有必要,在客户端通过websocket api与CshBBrain交互不存在跨域问题。其实我最近也在构思一个新的web应用的框架,就是应用中所有html,js,css等资源文件都交给web 服务器,所有动态内容(数据的交互)都交给websocket来完成。客户端通过websocket的api和websocet服务器交换数据,也许会带给用户更棒的体验。
5 楼 youarestupid 2012-10-15 12:22
是否可以方便地集成入Web Server,如tomcat
4 楼 CshBBrain 2012-10-15 11:18
贴张消息实时推送类应用实例截图:
3 楼 CshBBrain 2012-10-15 11:16
开源Websocket服务器CshBBrain使用交流讨论专栏:
2 楼 CshBBrain 2012-10-15 11:16
贴张消息实时推送类应用实例截图:http://dl.iteye.com/upload/attachment/0075/0144/01228c7d-6cae-3157-8648-81bca31ee359.png
1 楼 CshBBrain 2012-10-15 11:15
开源Websocket服务器CshBBrain使用交流讨论专栏:http://www.iteye.com/blogs/subjects/CshBBrain

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 将数字金额转换为中文大写金额

    将数字金额转换为中文大写金额将数字金额转换为中文大写金额将数字金额转换为中文大写金额

  • 帆软函数:阿拉伯数字转中文、阿拉伯数字转人民币大写

    一、阿拉伯数字转人民币大写 CNMONEY(number,unit) number:数字。 unit:单位,“s”,“b”,“q”,“w”,“sw”,“bw”,“qw”,“y”,“sy”,“by”,“qy”,"wy"分别代表“拾”,“佰”,“仟”,“万”,“拾万”,“佰万”,“仟万”,“亿”,“拾亿”,“佰亿”,“仟亿”,“万亿”。如果为空,则直接将 number 转换大写,否则先将 number 与单位的进制相乘,然后再将相乘的结果转换为大写。 如:CNMONEY(1200)等于壹仟贰佰圆整 二、阿拉伯数

  • 阿拉伯数字转换为简写汉字 JS

    //阿拉伯数字转换为简写汉字 function ArabiSimplified(Num) { for (var i = Num.length - 1; i >= 0; i--) { Num = Num.replace(",", "")//替换Num中的“,” Num = Num.replace(" ", "")//替换Num中的空格 } if

  • finereport 格式化金额函数_文本函数- FineReport帮助文档 - 全面的报表使用教程和学习资料...

    1.CHARCHAR(number):根据指定数字代码返回对应的字符。CHAR 函数可将计算机其他类型的数字代码转换为字符。Number:用于指定字符的数字,介于 1 和 65535 之间(包括 1 和 65535)。示例:CHAR(88)等于“X”。CHAR(45)等于“-”。2.CNMONEYCNMONEY(number,unit)返回人民币大写。number:需要转换的数值型的数。uni...

  • 报表中金额的数字转成大写

    报表制作中,有时候一些金额的数据需要显示为大写的形式, 这时候需要将数字一一的转成大小汉字,怎么做呢? 润乾提供了一个函数,将数字转换汉字, 例:     单价中,取出数据,int将数据转换为整型,在使用chn()函数,就讲数据转换成了对应的大写汉字, 这样就实现了大写的金额;效果如图:

  • finereport 格式化金额函数_报表软件FineReport各类函数大全

    常用函数…………………………………………………………………………2报表函数…………………………………………………………………………4数组函数…………………………………………………………………………6数学和三角函数…………………………………………………………………8文本函数…………………………………………………………………………16日期和时间函数…………………………………………………………………22...

  • 数字金额转化为中文大写

    /** *数字金额转换成中文大写金额的函数*String Int $num 要转换的小写数字或小写字符串 *return 大写字母*小数位为两位 **/function num_to_rmb($num){ $c1 = "零壹贰叁肆伍陆柒捌玖";$c2 = "分角元拾佰仟万拾佰仟亿"; //精确到分后面就不要了,所以只留两个小数位$num = round($num, 2);

  • .net rdlc 自定义函数"把数字转换为大写中文"

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/LOW584710047/article/details/35261193 在.net平台的rdlc中,可以使用自定义方法来扩充报表功能,比如常见的 ”把数字转换为大写中文“ 网上找了很久发现这篇不错 原文 后来细心测试发现存在一个b...

  • 将string的数据转为money类型

    将string的数据转为money类型 将string的数据转为money类型 decimal b=convert.todecimal(12212);

  • String类型特殊字符分割

    String money="200.30"; String[] moneyArray=money.split("\\."); //重点在这里,需要转义,否则会分割不成功,数组里面为空

  • C#中将数字金额转成英文大写金额的函数

    <span style="white-space:pre"> </span>/// <summary> /// 数字转金额大写 /// 调用示例:String desc = CommonUtils.convertEnDes(new Decimal("100.55"), "say", "RMB", "only")); ...

  • RDLC报表金额数字转大写

    1.在报表空白处先一点,右键选“报表属性”,在弹出的小窗口上,切换到“代码”标签页。在文本框内输入函数,我这里输入了一个CNMoney函数。 注意: (1)嵌入代码中的方法必须以 Microsoft Visual Basic 语法进行编写 (2)代码块可以包含多个方法。 (3)无法向函数传递数据值集,不支持自定义聚合。一般用于简单数据类型。 2. 使用。在报表上拖一个文本框,在上面点...

  • C++练习小写变大写

    // // 从cin读入一组词并把它们存入一个vector对象,然后设法把所有词 // 都改为大写形式。输出改变后的结果,每个词占一行 // #include <iostream> #include <string> #include <vector>using namespace std;int main(void) { vector <string> text; // 空 vector

  • C#中数字金额转换大写金额方法

    代码的主调函数为ConvertSum,它的参数是string类型的数字字符串。在ASP.NET中调用方式如下:         Label1.Text=ConvertSum("数字字符串");        其代码如下:            /// 转换数字金额主函数(包括小数)          ///          /// 数字字符串          /// 转

  • 经典数字转换成大写金额函数 (测试可用)

    // 数字转换成大写金额函数 function atoc(numberValue){ var numberValue=new String(Math.round(numberValue*100)); // 数字金额 var chineseValue=""; // 转换后的汉字金额 var String1 = "零壹贰叁肆伍陆柒捌玖"; // 汉字数字 var String2 = "万仟佰

  • 最精简的小写金额转大写的函数

     function Changdx2(mmje: Double): string;const s1: string = 零壹贰叁肆伍陆柒捌玖;  s2: string = 分角元拾佰仟万拾佰仟亿拾佰仟万;  function StrTran(const S, S1, S2: string): string;  begin    Result := Str

  • js千位符 | js 千位分隔符 | js 金额格式化

    js 千位分隔符 千位分隔符,其实就是数字中的逗号。依西方的习惯,人们在数字中加进一个符号,以免因数字位数太多而难以看出它的值。所以人们在数字中,每隔三位数加进一个逗号,也就是千位分隔符,以便更加容易认出数值。 效果图: 运行效果:http://dukecui1.oschina.io/jsthousandsseparator/ &lt;!...

  • 帆软文本函数

    1.CHAR CHAR(number):根据指定数字代码返回对应的字符。CHAR 函数可将计算机其他类型的数字代码转换为字符。 Number:用于指定字符的数字,介于 1 和 65535 之间(包括 1 和 65535)。 示例: CHAR(88)等于“X”。 CHAR(45)等于“-”。 2.CNMONEY CNMONEY(number,unit)返回人民币大写。 ...

  • 一个将小写金额转换为大写的C#函数

    //最大支持99,999,999.99元private string ChMoney(float Money){?string[] MChar={"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};?string[] MUnit = {"分","角","元","拾","佰","仟","万","拾","佰","仟"};?string strMoney = ((long)

Global site tag (gtag.js) - Google Analytics