安恒信息范渊在乌镇峰会谈AI:以工具视之、以工具用之、以工具治理之诺基亚与微软再合作,为 Azure 数据中心供货延长五年天岳先进发布业界首款 300mm(12 英寸)N 型碳化硅衬底三星介绍内部安全团队 Project Infinity 攻防演练项目,高效修复 Galaxy 手机平板漏洞上海市将推进低空飞行服务管理能力建设,2027 年底前累计划设相应航线不少于 400 条岁末,海尔给您备好一套“小红花”为什么说Q10K Pro是今年最值得入手的电视?看完这几点就明白了!“小墨方·大不凡”!Brother“小墨方”系列彩喷一体机全新上市黄仁勋:AI智能需求强劲,“物理定律”限制英伟达芯片增长诺基亚与微软再合作,为Azure数据中心供货延长五年国家数据局:到2029年基本建成国家数据基础设施主体结构中国已发展成为全球最大的互联网市场,拥有全球最多的网民和移动互联网用户中国铁塔:计划按照10:1的比例合股美国FCC正式划定5.9GHz频段用于C-V2X技术在AI领域奋起直追!苹果要对Siri大革新 2026年正式发布日本机构公布量子专利榜单:本源量子、国盾量子位居全球第1中国联通:拟向华为、中兴展开5G网络设备竞争性谈判采购京东“先人一步”预约OPPO Reno13系列 1元锁定腾讯视频VIP会员季卡万兆光网中国行:以应用为牵引,上海万兆加速启航消息称芯片制造商铠侠12月18日上市,将通过IPO筹资总计700亿日元
  • 首页 > 数据存储频道 > 数据库频道 > 编程开发

    使用环信MQTT打造一款程序员debug必备神器(附源码)

    2021年12月21日 09:44:21   来源:中文科技资讯

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

      方案背景

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

      →开发测试:

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

      文章内容仅供阅读,不构成投资建议,请谨慎对待。投资者据此操作,风险自担。

    [No. X016-1]
    分享到微信

    即时

    新闻

    明火炊具市场:三季度健康属性贯穿全类目

    奥维云网(AVC)推总数据显示,2024年1-9月明火炊具线上零售额94.2亿元,同比增加3.1%,其中抖音渠道表现优异,同比有14%的涨幅,传统电商略有下滑,同比降低2.3%。

    企业IT

    重庆创新公积金应用,“区块链+政务服务”显成效

    “以前都要去窗口办,一套流程下来都要半个月了,现在方便多了!”打开“重庆公积金”微信小程序,按照提示流程提交相关材料,仅几秒钟,重庆市民曾某的账户就打进了21600元。

    3C消费

    华硕ProArt创艺27 Pro PA279CRV显示器,高能实力,创

    华硕ProArt创艺27 Pro PA279CRV显示器,凭借其优秀的性能配置和精准的色彩呈现能力,为您的创作工作带来实质性的帮助,双十一期间低至2799元,性价比很高,简直是创作者们的首选。

    研究

    中国信通院罗松:深度解读《工业互联网标识解析体系

    9月14日,2024全球工业互联网大会——工业互联网标识解析专题论坛在沈阳成功举办。