最近在做一些实时web相关的项目,实时web相对传统web来说,很多方面都是格格不入的,要在传统的web server上直接支持实时web会比较麻烦,当然最近很多web server也在做这方面的工作,但我始终觉得这类需求较为特别,做成一独立的服务较为合适,于是开发了一个基于web的message queue,也就是在浏览器端可能直接订阅和发送信息。
项目特点:
1.支持websocket(基于浏览器原生支持或flash socket)、httpstreaming(基于hidden ifame)、longpolling(基于jsonp script tag)。
2.较为全面 的浏览器支持,做过测试的浏览器:IE6、IE8、FF3.6、chrome5、chrome6、safari5,还有一些浏览器没做过测试,有时间再补上。
3.准实时信息交互,从发送到接收一般都在20ms以内,当然这个还看网络状况。
4.高并发的tcp连接支持,轻松上十万甚至百万并发连接,只要内存足够大。
5.支持两种消息模式:topic和queue。
6.支持嵌入式开发
7.消息非持久化
8.开源的
使用例子请看
http://42.121.57.116:8080/sample.html(默认使用websocket)
http://42.121.57.116:8080/sample.html?(使用httpstreaming)
http://42.121.57.116:8080/sample.html?uselp(使用longpolling)
如果你想在你的网站里使用webmq服务来实现一些实时web推送功能(比如:webIM、webGame、web协作、实时监控系统等),使用非常简单,以下就是一个使用的例子。
使用简介
1.
在你的html页面引用 以下的JS:
<script type="text/javascript" src="http://42.121.57.116/static?webmq.all.js"></script>
2.
创建webmq的客户端,指定ip与端口,还有domain,domain是用来区分不同使用站点,原来想把它做成一个通用独立服务

,
var webmq = new Webmq("42.121.57.116", "80", "test.com");
3.
指定要监听的queue或topic和相关的回调函数
webmq.subscribe("destName", function(message) {alert(message.message);}, "queue");
4.
发送消息到指定的queue或topic
webmq.publish("destName", "test-message", "queue");
5.
注销监听的queue或topic
webmq.unSubscribe("destName", "queue");
6.
不用的时候关闭
webmq.close();
下一步的计划
1.webmq server支持scale out和failover,解决高并发下的可扩展性的问题
2.提供一种可靠的消息确收机制,提高消息传输可靠性
3.解决基于flash的websocket的事件通知延迟的问题和提供一个无flash依赖的可选版本
4.提供安全认证机制
5.提供可插拨的消息存储机制,默认提供基于kahadb(activeMQ5.x默认使用的)
6.详细的网络通信接口文档说明
最近项目动态请关注作者微博:http://weibo.com/1462962703
分享到:
相关推荐
Web质量控制 Web界面和服务器,用于使用Node.js和Socket.io发布/订阅MQTT消息,以实现家庭自动化。... 服务器创建与MQTT代理的连接,并从/向连接的客户端页面传递消息。 ###结构概述 结构和布局非常适合我的用例,对于...
内容概要:本文详细介绍了CTF-Misc题型的应用指南,涵盖文件隐写、内存取证、数据修复等方面的核心技术。文件操作与隐写部分,讲述了文件类型识别方法(如使用file命令、010 Editor等工具查看文件特征),以及文件分离与合并的方法(如Binwalk自动化工具、dd命令手动操作)。图片隐写技术方面,包括颜色通道分析(如使用Stegsolve)、帧差异对比、Exif信息读取等。内存取证则主要围绕Volatility框架展开,介绍其基础命令(如imageinfo、pslist)和特殊场景处理(如加密文档爆破)。此外,还提供了若干工具推荐,如十六进制编辑器、自动化分离工具、OCR识别库等,并分享了实战技巧,如逆向思维应用和隐蔽信息挖掘。 适合人群:对CTF比赛感兴趣的安全研究人员、网络安全爱好者及有一定计算机基础知识的学习者。 使用场景及目标:①掌握文件隐写与修复技术,能够识别和处理各种文件类型的隐写和损坏问题;②学会使用Volatility进行内存取证,提取关键信息;③提高对隐蔽信息的敏感度,培养解决复杂问题的能力。 阅读建议:本文内容丰富,涉及多个技术领域,建议读者先熟悉基本概念和常用工具的使用,再逐步深入理解各个技术细节,在实践中不断积累经验。
CSAPP程序人生大作业
基于python+树莓派图像识别的智能循迹避障小车+源码+项目文档,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用,详情见md文档 具体原理 道路检测 本程序所使用的道路检测算法为最基础的检测算法,可升级至深度学习算法,但是没时间搞主要是不会 对于道路检测而言,最基本的就是在图像上随机抽取图像上下部等宽区域,将图像的灰度中心计算出来,由此可以看出,当上半部图像的灰度中心与下半部图像中心的位置差超出阈值时,判定道路出现了转弯,以图像中心为坐标原点,当插值大于0时说明要右转,反之左转。可自由设置。 标识牌检测 使用opencv自带的训练网络,虽然实际训练了,但是结果较差,采用了国外训练好的图像模型,在代码中提供了。 障碍物检测 超声波检测,虽然没啥用,毕竟我们的障碍物是停止标志,图像的精度目前看来比超声波准,不过本着买了就要用的原则,用了 距离测算 采用单目视觉,首先对相机进行标定,然后利用角度计算得出前方的实际距离。但是相机在运动过程晃动较大,最后还是热熔胶枪粘的,这个功能的演示就弃了。
内容概要:本文探讨了在深度学习框架下,通过在神经网络的层结构中引入自注意力机制来提升模型性能的方法。首先介绍了自注意力机制的基本概念及其在序列数据处理中的优势,然后详细阐述了如何在每一层中添加自注意力层以及如何融合不同层次的自注意力输出。最后,通过一系列实验验证了这种方法在自然语言处理和计算机视觉任务中的有效性,证明了其能够显著提高模型的表现。 适合人群:从事深度学习研究和技术开发的专业人士,尤其是对自注意力机制感兴趣的科研人员和工程师。 使用场景及目标:适用于需要改进现有神经网络模型性能的项目,特别是在处理复杂序列数据的任务中,如文本分类、图像识别等。目标是通过引入自注意力机制优化模型架构,增强模型对不同层次特征的理解能力。 阅读建议:对于希望深入了解自注意力机制并将其应用于实际项目的读者来说,本文提供了详细的理论背景和实现步骤。建议读者结合自己的应用场景,尝试复现文中提到的实验,以便更好地掌握这一技术。
拷贝到Auto CAD的Fonts下
单级蜗轮蜗杆减速器的设计.rar
ZL15型轮式装载机.rar
2024工业5G LAN网络安全技术报告.pdf
内容概要:本文详细介绍了模块化多电平直流变压器(MMC-based DC Transformer)的仿真模型,重点探讨了三相MMC面对面配置的设计与实现。该模型适用于40kV至60kV电压范围,额定输出功率为15MW,运行频率为250Hz。通过单移相控制策略,实现了输出电压电流波形的完美控制,交流侧对地相电压为准两电平方波。文章还讨论了模块化设计的优势以及如何通过Python编程实现单移相控制。 适合人群:从事电力电子领域的研究人员和技术人员,尤其是关注高电压、大功率电力传输和配电系统的专业人士。 使用场景及目标:①用于电力传输和配电系统的仿真和优化;②帮助研究人员和技术人员理解并掌握MMC的工作原理和控制策略;③提供一种高效可靠的解决方案来实现高电压、大功率电力设备的精准控制。 其他说明:本文不仅提供了理论分析,还包括具体的代码实现,有助于读者更好地理解和应用相关技术。
电饭煲传感器外壳冲压工艺与模具设计.rar
拷贝到Auto CAD的Fonts下
催化裂化图纸cad+pdf.rar
OK6410开发资料光盘.7z
内容概要:本文深入探讨了五相SVPWM(4矢量+双空间调制)技术在反电势正弦与非正弦五相电机矢量控制中的应用。首先介绍了五相电机相较于三相电机的优势及其控制复杂性,然后详细讲解了五相Clarke变换的实现方式,将五相电流投影到α-β平面上。接着阐述了双空间调制的概念,即电压矢量被分解到两个正交子空间,分别处理基波和谐波分量,并讨论了解耦问题以及调制比超过0.5时的解决方案。随后介绍了四矢量选择策略的具体实施方法,包括扇区划分、作用时间计算等步骤。针对非正弦反电势情况,提出了谐波补偿措施,尤其是对3次谐波的特殊处理。最后给出了实验数据对比,证明该技术能够显著降低总谐波失真率,但也指出开关损耗有所增加的问题。 适合人群:从事电机控制系统设计的研究人员和技术工程师,尤其关注高精度、高性能电机控制领域的专业人士。 使用场景及目标:适用于需要精确控制五相电机的应用场合,如工业自动化设备、精密仪器等领域。主要目标是提高电机运行效率,减少谐波干扰,优化系统性能。 其他说明:文中提供了详细的数学模型和代码示例,有助于读者更好地理解和掌握相关理论与实践技巧。同时提醒读者注意调参过程中x-y子空间电流分量的变化,确保系统稳定性和可靠性。
盖板冲孔拉深冲压模具设计.rar
拷贝到Auto CAD的Fonts下
运用delphi程序设计和数据库相关知识编写的学生成绩管理系统,主要包含SQL语句使用的相关内容.zip
内容:浮游生物学Plankton(英文版本) 密码:123***(你猜)