科技创新网 我要投稿   登录   注册
科技创新网
 
  科技创新您当前位置:首页 > 科技创新  
使用环信MQTT打造一款程序员debug必备神器(附源码)
发布时间:2021-12-21 13:52:04  来源:环信

基于MQTT订阅/发布模型,可以快速实现一对多在线推送功能,并且推送内容可根据自己业务自定义。本次项目“每日Bug看板”选择实现任务看板中的消息推送,推送内容包括:任务创建、任务认领、任务释放、任务完成等消息,从而快速实现团队云协作。

image.png


方案背景

随着数字化服务的发展,应用系统与终端用户之间需要构建稳定消息通道,且消息的灵活性与实效性决定了消息的价值,尤其对于下述场景,皆需要即时下发业务状态变更通知。

→开发测试:

Bug创建、认领、修复等记录通知

→在线选座:

在线选座、预定、取消等状态变更通知

→会议室预定

会议室预定、释放等状态变更通知

→工单处理

工单录入、认领、处理等流程通知

→个人待办

未完成、进行中、已完成等办理状态通知

综上所述,当接入端在近百万、千万级的情况下,需要选择一种安全,稳定,可靠的在线推送方案。

产品设计

基于MQTT订阅/发布模型,可以快速实现一对多在线推送功能,并且推送内容可根据自己业务自定义。

本次项目选择实现任务看板中的消息推送,推送内容包括:任务创建、任务认领、任务释放、任务完成等消息,从而快速实现团队云协作。

image.png

技术优势

针对一对多在线推送场景,选择MQTT订阅/发布模型具备以下优势:

高并发,可以允许海量客户端同时在线;

低延时,通过中间件进行分发,减少消息复制成本;

高可用,服务器支持水平扩展,满足性能要求;

易集成,已具备多端开源SDK,可快速上线;

轻量级,MQTT客户端SDK简洁,连接消耗低(保活心跳报文2个字节)

功能介绍

1)创建Bug

直接在输入框输入Bug描述信息

回车即可添加到未解决目录下

创建成功后团队其他用户均可收到创建提醒

同时所有打开Bug看板的成员均会自动更新看板

2)认领/取消认领Bug

认领Bug

查看未解决的Bugs

选择要认领的Bug,点击认领

认领后可以看到该Bug上显示自己用户名

团队其他用户均可收到认领提醒(该项不需要可以关闭)

取消认领bug

查看未解决的Bugs

选择要取消认领的Bug,点击自己用户名标签

取消认领后即可释放该Bug,用户名标签自动改回认领

团队其他用户均可收到释放提醒

同时所有打开Bug看板的成员均会自动更新看板

解决Bug

查看未解决的Bugs

选择自己已解决的Bug

点击前面的方框,将其状态改为已解决

该Bug将从未解决列表转移到已解决列表

团队其他用户均可收到解决提醒(该项不需要可以关闭)

同时所有打开Bug看板的成员均会自动更新看板

Bug复测不过

对于复测不过的Bug,需要将其从已解决列表移回未解决列表

在已解决列表选择复测不通过的Bug

点击前面勾选状态的方框,将其状态改为未解决

团队其他用户均可收到提醒

同时所有打开Bug看板的成员均会自动更新看板

删除Bug

对于录入错误或复测通过的Bug,可执行删除操作

选择要删除的Bug

点击最后的删除框,将其从列表删除

团队其他用户均可收到删除提醒

同时所有打开Bug看板的成员均会自动更新看板

异常提示

认领他人Bug

已被认领的Bug不允许认领

提示“已被xxx认领…”,须释放后才能认领

该操作仅本人提示,不会推送给认领人

解决未认领Bug

未认领的Bug不允许改为已完成

提示“请先认领…”,认领后才可解决

该操作仅本人提示,不会推送给他人

技术实现

本次MQTT服务器选择环信MQTT消息云,服务器除了消息路由外,还支持消息存储、在线状态查询、客户端消息轨迹查询等功能。

除此以外,还提供了长期免费版,节省了自己搭建服务器的时间(目前市面上没有免费的MQTT服务器,薅羊毛,不薅白不薅~)

在环信注册成功后,即可登录环信MQTT消息云控制台,【创建应用】并开通MQTT服务,获取图中关键信息。

image.png

image.png

image.png

示例说明

连接环信MQTT服务并发送消息

image.png

MQTT服务订阅

image.png

MMQTT服务取消订阅

image.png

发送消息

image.png

部署说明

修改配置

登录环信MQTT消息云控制台,获取上面 技术实现 图中的关键信息,配置在index.js以下参数即可:

image.png

服务部署

直接放到Nginx、Apache、IIS等web容器即可访问,目前已部署在服务器上,可直接打开链接访问。

在线体验地址:任务看板登录入口

代码下载

上文介绍了在线通知的实现和部署,这里附上整个方案的代码供大家学习参考,源码下载

总结

在任务管理这个场景中,会出现创建Bug、认领Bug、完成Bug等多个状态的频繁变更,所以高效、稳定的通知给所有关注者(订阅者)是关键。

接入基于订阅/发布模式的环信MQTT消息云,不仅可以支持海量客户端同时在线,还支持消息分发,减少消息复制成本,实时向在线客户端发送消息。另外开发过程中也不需要再关心弱网络环境、断线重连、异常处理、海量并发、系统高可用等复杂的技术问题,极大程度上降低了开发成本,一两天即可搭建一套完整的任务看板功能。

参考网址

1、MQTT其他场景介绍

http://www.easemob.com/product/mqtt

2、MQTT文档介绍

https://docs-im.easemob.com/mqtt/intro




[正文结束]
版权与免责声明:
    1. 本网注明来源为科技创新网的稿件,版权均属于科技创新网,未经科技创新网授权,不得转载、摘编使用。
    2. 本网注明“来源:XXX(非科技创新网)”的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。本网转载其他媒体之稿件,意在为公众提供免费服务。如稿件版权单位或个人不想在本网发布,可与本网联系,本网视情况可立即将其撤除。
    3. 如涉及作品内容、版权等其它问题,请在30日内同本网联系。邮箱:hnppxc @126.com
    特别提醒:本网刊发的所有商业信息,文章内容不代表本网观点,仅供参考。
上一篇:到河南的夜市街头走一走
下一篇:3D打印纳米磁铁揭示磁场中的图案世界
  头条推荐
  智能汽车
勇探山林路漫漫,狂飙前行矫如虎勇探山林路漫漫,狂飙前行矫如虎
“虎啸”一出平四野,锐骐7虎啸重“虎啸”一出平四野,锐骐7虎啸重
中原战贫 小康梦圆丨拂来春风化中原战贫 小康梦圆丨拂来春风化
淅川:炎炎夏日战酷暑 浓浓关怀送淅川:炎炎夏日战酷暑 浓浓关怀送
驻马店:美不胜收稻田画 驻马店:美不胜收稻田画 
新华保险召开寿险与康养业务协同新华保险召开寿险与康养业务协同
荥阳企业多举并措开足马力加盟中荥阳企业多举并措开足马力加盟中
总投资7亿元!信阳新县将建万博城,总投资7亿元!信阳新县将建万博城,
河南一民企现金紧张要拿存货筹资河南一民企现金紧张要拿存货筹资
第25届郑交会开幕 海淘爆款多多 第25届郑交会开幕 海淘爆款多多
  热文排行
河南质量工程职业学院舞钢校区开工仪式隆重河南质量工程职业学院舞钢校区开工仪式隆重
黄河水利职业技术学院入选《2021中职教报告黄河水利职业技术学院入选《2021中职教报告
黄河水利职业技术学院召开2022年工作会议黄河水利职业技术学院召开2022年工作会议
深夜救人火苗中最靓的仔深夜救人火苗中最靓的仔
黄河水利职业技术学院入选第三批全国党建工黄河水利职业技术学院入选第三批全国党建工
黄河水利职业技术学院在党组织建设成效排名黄河水利职业技术学院在党组织建设成效排名
黄河水利职业技术学院党委书记周保平带队访黄河水利职业技术学院党委书记周保平带队访
“预案式”帮扶确保一个都不少 黄河水利职“预案式”帮扶确保一个都不少 黄河水利职
黄河水利职业技术学院的“校长茶座”黄河水利职业技术学院的“校长茶座”
黄河水利职业技术学院:聚焦机制打造特色就业黄河水利职业技术学院:聚焦机制打造特色就业
网站首页  关于我们  合作发展  广告服务  版权说明  联系我们  我要投稿
电话: 400-0820-315 E-mail: zlbg110@126.com 客服QQ:1849 189 600
科技创新网版权所有,未经书面授权禁止使用! Copyright © 2015-2023
主办单位:河南省豫南人众创空间有限公司   ICP备案号:豫ICP备2022015378号 技术支持:河南科加