一种基于团队模式的业务通知方法及装置制造方法及图纸

技术编号:34082536 阅读:59 留言:0更新日期:2022-07-11 19:13
本申请实施例公开了一种基于团队模式的业务通知方法及装置,应用于服务器,其中方法包括:接收所述多个浏览器客户端中每个浏览器客户端发送的请求消息;根据所述团队的第一ID和所述每个浏览器客户端的第二ID建立与所述每个浏览器客户端之间的单向连接通道;根据所述团队的第一ID和所述每个浏览器客户端的第二ID建立针对所述多个浏览器客户端的监听队列;若通过所述监听队列接收到第一浏览器客户端发送的订阅请求,则通过所述与所述每个浏览器客户端之间的单向连接通道向所述每个浏览器客户端发送订阅消息。本申请实施例能够实现基于团队模式下的业务通知的目的,且能够节约带宽资源。带宽资源。带宽资源。

【技术实现步骤摘要】
一种基于团队模式的业务通知方法及装置


[0001]本申请涉及互联网技术,应用于通信等领域,尤其涉及一种基于团队模式的业务通知方法及装置。

技术介绍

[0002]随着公司的业务发展,越来越多的实训教学软件采用了团队模式来考核学生之间的合作精神以及业务理解,目前现有技术为了解决实现团队模式下的广播通知问题,通常采用的方案有两种。
[0003]方案一:采用轮询的方式,由浏览器客户端定时向服务器发送请求,服务器接收到请求后则立即查找消息返回给浏览器客户端。这种传统模式的缺点是浏览器需要不断的向服务器发送请求,然而HTTP请求包含较长的头部,其中真正有效的数据可能只是很小的一部分,显然这种方式会浪费带宽等很多资源。
[0004]方案二:采用WebSocket的技术建立双向连接通道,一旦服务器接收到消息,则立即通过建立的双向连接通道将消息推送给浏览器客户端。但Websocket技术要求全双工连接,而建立双向连接通道会导致服务器资源的浪费。

技术实现思路

[0005]本申请实施例提供了一种基于团队模式的业务通知方法及装置,能够实现基于团队模式下的业务通知的目的,且能够节约带宽资源。
[0006]第一方面,本申请实施例提供了一种基于团队模式的业务通知方法,应用于服务器,所述服务器属于业务系统,所述业务系统包括所述服务器和多个浏览器客户端,所述多个浏览器客户端用于多个开发人员协作进行项目开发,所述方法包括:接收所述多个浏览器客户端中每个浏览器客户端发送的请求消息,其中,所述请求消息包括团队的第一ID和所述每个浏览器客户端的第二ID,所述团队包括所述多个浏览器客户端;根据所述团队的第一ID和所述每个浏览器客户端的第二ID建立与所述每个浏览器客户端之间的单向连接通道,其中,所述单向连接通道用于在所述第一ID的所述团队内发送订阅消息;根据所述团队的第一ID和所述每个浏览器客户端的第二ID建立针对所述多个浏览器客户端的监听队列;若通过所述监听队列接收到第一浏览器客户端发送的订阅请求,则通过与所述每个浏览器客户端之间的单向连接通道向所述每个浏览器客户端发送订阅消息,其中,所述第一浏览器客户端为所述多个浏览器客户端中的任意一个浏览器客户端。
[0007]在现有技术中,为了解决实现团队模式下的广播通知,通常采用建立双向连接通道的方式,一旦服务器接收到消息,立即通过建立的双向连接通道推送给浏览器客户端,或者是轮询的方式,由浏览器客户端定时发送请求给服务器,服务器接收到请求则立即查找
消息,返回给浏览器客户端,而本申请根据团队的第一ID和每个浏览器客户端的第二ID建立与每个浏览器客户端之间的单向连接通道的方式,并根据团队的第一ID(如团体“工程项目三组”)和每个浏览器客户端的第二ID(如浏览器客户端1的ID为“秦总监”、浏览器客户端2的ID为“周工”、浏览器客户端3的ID为“李工”)建立针对多个浏览器客户端的监听队列,若通过监听队列接收到第一浏览器客户端发送的订阅请求(如秦总监完成了相应的业务,需要将项目开发信息广播通知项目组其他成员,则可以向服务器发送订阅请求,该订阅请求是为使得服务器向每个浏览器客户端发送订阅消息的请求消息),则通过与每个浏览器客户端之间的单向连接通道向每个浏览器客户端发送订阅消息(服务器不会将项目开发消息直接发送给特定的浏览器客户端,而是需要先通过与每个浏览器客户端之间的单向连接通道向每个浏览器客户端发送订阅消息,该订阅消息用于多个浏览器客户端确认是否需要接受该项目开发消息),本申请通过建立的监听队列接收到第一浏览器客户端发送的订阅请求后,通过与每个浏览器客户端之间的单向连接通道向每个浏览器客户端发送订阅消息,能够实现基于团队模式下的业务通知的目的,且相较于现有技术而言,能够节约带宽资源。
[0008]在一种可能的实施方式中,所述接收所述多个浏览器客户端中每个浏览器客户端发送的请求消息之前,还包括:通过Python的Flask搭建轻量级别的通信接口,其中,所述通信接口还用于通过所述监听队列接收所述第一浏览器客户端发送的订阅请求。
[0009]在上述方法中,搭建轻量级别的服务器的方式可以是利用编程语言Python 的Flask编写的轻量级 Web 应用框架,但本申请并不限于上述方式为搭建服务器的唯一方式。在服务器搭建好后,在搭建好的服务器内暴露一个接口,该接口用于接收多个浏览器客户端中每个浏览器客户端发送的请求消息、与浏览器客户端建立单向连接通道、建立监听队列以及通过监听队列接收第一浏览器客户端发送的订阅请求,本申请主要是通过浏览器客户端调用服务器暴露的接口来接收/发送相关的数据信息。本申请利用编程语言Python的Flask编写的轻量级 Web 应用框架能够使得服务器搭建的精度更高、速度更快。
[0010]在另一种可能的实施方式中,所述订阅请求包括所述第一浏览器客户端提供的项目开发信息;所述通过与所述每个浏览器客户端之间的单向连接通道向所述每个浏览器客户端发送订阅消息之后,还包括:检测所述多个浏览器客户端是否返回针对所述订阅消息的确认消息;若检测到第二浏览器客户端发送的所述确认消息,则向所述第二浏览器客户端发送所述第一浏览器客户端提供的项目开发信息,所述第二浏览器客户端为所述多个浏览器客户端中的任意一个浏览器客户端。
[0011]在上述方法中,服务器可以根据每个浏览器客户端发送的个人第二ID以及所在的团队的第一ID(如ID为“秦总监”的浏览器客户端1所在的团队为“工程项目三组”、ID为“周工”的浏览器客户端2所在的团队为“工程项目三组”、ID为“李工”的浏览器客户端3所在的团队为“工程项目三组”、...、ID为“王工”的浏览器客户端n所在的团队为“工程项目三组”,其中,n为大于3的正整数),将团队的第一ID相同的浏览器客户端划分为同一个团体区域(如将同属于“工程项目三组的浏览器客户端”划分为同一个团体区域),在确定多个浏览器客户端的团队区域(如团队ID为“工程项目三组”)后,再根据团队的第一ID(“工程项目三组”团队)分别与浏览器客户端1(如ID为“秦总监”)、浏览器客户端2(如ID为“周工”)、浏览
器客户端3(如ID为“李工”)、...、浏览器客户端n(如ID为“王工”)建立针对每个浏览器客户端的监听队列,每个团队主题相当于一个消息队列,订阅者(如订阅消息的浏览器客户端2、浏览器客户端3、...、浏览器客户端n)在接收消息之前需要先订阅一系列相关的主题(每个团队主题都生成并维护一个订阅者列表),该监听队列用于接收第一浏览器客户端发送的订阅请求。若存在针对多个浏览器客户端的监听队列,则服务器可以直接监听第一浏览器客户端是否向服务器发送订阅请求。本方案通过建立监听队列,能够使得及时接收第一浏览器客户端发送的订阅请求,实现基于团队模式下广播通知消息的目的。
[0012]在又一种可能的实施方式中,还包括:若未检测到所述第二浏览器客户端发送的所述确认消息,则与所述第二浏览器客户端建立仿双向连接通道;通过所述仿双向连接通道接收所述第二浏览器客户端发送的针对所述订阅消息本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于团队模式的业务通知方法,其特征在于,应用于服务器,所述服务器属于业务系统,所述业务系统包括所述服务器和多个浏览器客户端,所述多个浏览器客户端用于多个开发人员协作进行项目开发,所述方法包括:接收所述多个浏览器客户端中每个浏览器客户端发送的请求消息,其中,所述请求消息包括团队的第一ID和所述每个浏览器客户端的第二ID,所述团队包括所述多个浏览器客户端;根据所述团队的第一ID和所述每个浏览器客户端的第二ID建立与所述每个浏览器客户端之间的单向连接通道,其中,所述单向连接通道用于在所述第一ID的所述团队内发送订阅消息;根据所述团队的第一ID和所述每个浏览器客户端的第二ID建立针对所述多个浏览器客户端的监听队列;若通过所述监听队列接收到第一浏览器客户端发送的订阅请求,则通过与所述每个浏览器客户端之间的单向连接通道向所述每个浏览器客户端发送订阅消息,其中,所述第一浏览器客户端为所述多个浏览器客户端中的任意一个浏览器客户端。2.根据权利要求1所述的方法,其特征在于,所述接收所述多个浏览器客户端中每个浏览器客户端发送的请求消息之前,还包括:通过Python的Flask搭建轻量级别的通信接口,其中,所述通信接口还用于通过所述监听队列接收所述第一浏览器客户端发送的订阅请求。3.根据权利要求1或2所述的方法,其特征在于,所述订阅请求包括所述第一浏览器客户端提供的项目开发信息;所述通过与所述每个浏览器客户端之间的单向连接通道向所述每个浏览器客户端发送订阅消息之后,还包括:检测所述多个浏览器客户端是否返回针对所述订阅消息的确认消息;若检测到第二浏览器客户端发送的所述确认消息,则向所述第二浏览器客户端发送所述第一浏览器客户端提供的项目开发信息,所述第二浏览器客户端为所述多个浏览器客户端中的任意一个浏览器客户端。4.根据权利要求3所述的方法,其特征在于,还包括:若未检测到所述第二浏览器客户端发送的所述确认消息,则与所述第二浏览器客户端建立仿双向连接通道;通过所述仿双向连接通道接收所述第二浏览器客户端发送的针对所述订阅消息的提醒消息,其中,所述提醒消息用于提醒所述第二浏览器客户端未接收到所述订阅消息;通过所述仿双向连接通道向所述第二浏览器客户端发送所述第一浏览器客户端提供的项目开发信息。5.根据权利要求1或2所述的方法,其特征在于,所述根据所述团队的...

【专利技术属性】
技术研发人员:吕奎叶振东
申请(专利权)人:深圳希施玛数据科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1