CN106572146B - 消息发送方法及消息发送装置 - Google Patents
消息发送方法及消息发送装置 Download PDFInfo
- Publication number
- CN106572146B CN106572146B CN201510670259.1A CN201510670259A CN106572146B CN 106572146 B CN106572146 B CN 106572146B CN 201510670259 A CN201510670259 A CN 201510670259A CN 106572146 B CN106572146 B CN 106572146B
- Authority
- CN
- China
- Prior art keywords
- subscription
- message
- clients
- sending
- client
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/185—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供一种消息发送方法,其包括:接收订阅客户端的消息订阅请求;根据消息订阅请求的信息发送类型,对订阅客户端进行分组,以形成至少一个订阅客户端组;以及根据消息订阅请求的消息标识获取订阅消息,并按照订阅客户端组所对应的消息发送类型,对订阅客户端组中的订阅客户端进行所述订阅消息的发送。本发明还提供一种消息发送装置,本发明的消息发送方法及消息发送装置通过对不同订阅客户端组的订阅客户端使用不同的订阅消息的发送方法,从而可以有效的降低消息制作以及传输的成本。
Description
技术领域
本发明涉及通信领域,特别是涉及一种消息发送方法及消息发送装置。
背景技术
消息中间件是目前业界的通用组件之一,其可采用异步方式在消息发布服务器和接收客户端之间传送消息。由于采用异步方式发布,所以消息中间件需要将当前没有发送完的消息暂时存放在数据缓存单元中,在消息发送成功后再将消息从数据缓存单元中删除。
现有的消息中间件一般适用于以下几个场景:
一、广播订阅场景,消息中间件将消息发布服务器的消息广播给所有的接收客户端。
二、互斥订阅场景,消息中间件将消息发布服务器的消息发送至多个接收客户端中的一个;即一个接收客户端接收到了该消息后,消息中间件即将该消息从数据缓存单元中删除,以避免多个客户端重复接收到相同的消息。
但是随着用户对消息订阅的要求的提高以及消息发布量的提高,消息的发送已不仅仅局限于上述两种情况。对于同一消息,有些客户可能希望进行广播订阅,另一些客户可能希望进行互斥订阅,这样导致需要重复制作同一消息,以便满足不同的客户需要;从而提高了消息制作以及传输成本。
发明内容
本发明实施例提供一种消息制作以及传输成本较低的消息发送方法及消息发送装置;以解决现有的消息发送方法及消息发送装置的消息制作以及传输成本较高的技术问题。
本发明实施例提供一种消息发送方法,其包括:
接收订阅客户端的消息订阅请求;其中所述消息订阅请求包括消息标识和消息发送类型;
根据所述消息订阅请求的消息发送类型,对所述订阅客户端进行分组,以形成至少一个订阅客户端组;以及
根据所述消息订阅请求的消息标识获取订阅消息,并按照所述订阅客户端组所对应的消息发送类型,对所述订阅客户端组中的所述订阅客户端进行所述订阅消息的发送。
本发明实施例还提供一种消息发送装置,其包括:
请求接收模块,用于接收订阅客户端的消息订阅请求;其中所述消息订阅请求包括消息标识和消息发送类型;
分组模块,用于根据所述消息订阅请求的消息发送类型,对所述订阅客户端进行分组,以形成至少一个订阅客户端组;以及
发送模块,用于根据所述消息订阅请求的消息标识获取订阅消息,并按照所述订阅客户端组所对应的消息发送类型,对所述订阅客户端组中的所述订阅客户端进行所述订阅消息的发送。
相较于现有技术的消息发送方法及消息发送装置,本发明的消息发送方法及消息发送装置通过对不同订阅客户端组的订阅客户端使用不同的订阅消息的发送方法,从而可以有效的降低消息制作以及传输的成本;解决了现有的消息发送方法及消息发送装置的消息制作以及传输成本较高的技术问题。
附图说明
图1为本发明的消息发送方法的第一优选实施例的流程图;
图2为本发明的消息发送方法的第二优选实施例的流程图;
图3为本发明的消息发送装置的第一优选实施例的结构示意图;
图4为本发明的消息发送装置的第二优选实施例的结构示意图;
图5为本发明的消息发送装置的第二优选实施例的发送模块的结构示意图;
图6为本发明的消息发送方法及消息发送装置的具体实施例的消息发送示意图;
图7为本发明的消息发送装置所在的电子设备的工作环境结构示意图。
具体实施方式
请参照图式,其中相同的组件符号代表相同的组件,本发明的原理是以实施在一适当的运算环境中来举例说明。以下的说明是基于所例示的本发明具体实施例,其不应被视为限制本发明未在此详述的其它具体实施例。
在以下的说明中,本发明的具体实施例将参考由一部或多部计算机所执行之作业的步骤及符号来说明,除非另有述明。因此,其将可了解到这些步骤及操作,其中有数次提到为由计算机执行,包括了由代表了以一结构化型式中的数据之电子信号的计算机处理单元所操纵。此操纵转换该数据或将其维持在该计算机之内存系统中的位置处,其可重新配置或另外以本领域技术人员所熟知的方式来改变该计算机之运作。该数据所维持的数据结构为该内存之实体位置,其具有由该数据格式所定义的特定特性。但是,本发明原理以上述文字来说明,其并不代表为一种限制,本领域技术人员将可了解到以下所述的多种步骤及操作亦可实施在硬件当中。
本发明的消息发送装置可使用各种电子设备进行实施,该电子设备包括但不限于个人计算机、服务器计算机、手持式或膝上型设备、移动设备(比如移动电话、个人数字助理(PDA)、媒体播放器等等)、多处理器系统、消费型电子设备、小型计算机、大型计算机、包括上述任意系统或设备的分布式计算环境,等等。但该电子设备优选为包括消息中间件的消息发布服务器,以便有效的降低消息发布服务器的消息制作以及消息传输的成本。
请参照图1,图1为本发明的消息发送方法的第一优选实施例的流程图。本优选实施例的消息发送方法包括:
步骤S101,接收订阅客户端的消息订阅请求;
步骤S102,根据消息订阅请求的消息发送类型,对订阅客户端进行分组,以形成至少一个订阅客户端组;
步骤S103,根据消息订阅请求的消息标识获取订阅消息,并按照订阅客户端组所对应的消息发送类型,对订阅客户端组中的订阅客户端进行所述订阅消息的发送。
下面详细说明本优选实施例的消息发送方法的各步骤的具体流程。
在步骤S101中,位于消息发布服务器的消息发送装置接收订阅客户端的消息订阅请求,其中消息请阅请求包括消息标识以及消息发送类型。消息标识为订阅消息的唯一性编号或唯一性标识,以确保消息发送装置可以获取正确的订阅消息。消息发送类型为订阅消息发送至相应的订阅客户端的方式,如以广播的方式发送至订阅客户端或以互斥的方式发送至订阅客户端。随后转到步骤S102。
在步骤S102中,消息发送装置根据步骤S101获取的消息订阅请求的消息发送类型,对请求同一订阅消息的订阅客户端进行分组,以形成至少一个订阅客户端组。即对请求同一订阅消息,且消息发送类型相同的订阅客户端属于同一订阅客户端组。消息发送装置可使用同一种订阅消息的消息发送类型,对一订阅客户端组中的所有订阅客户端进行订阅消息的发送。随后转到步骤S103。
在步骤S103中,消息发送装置根据步骤S101接收的消息订阅请求的消息标识获取订阅消息,并按照订阅客户端组所对应的消息发送类型,对步骤S102获取的订阅客户端组中的订阅客户端进行订阅消息的发送。
具体的,如订阅消息请求的消息发送类型为广播类型,则消息发送装置按照订阅客户端组所对应的消息发送类型,对订阅客户端组中的订阅客户端进行订阅消息的广播;
如订阅消息请求的消息发送类型为互斥类型,则消息发送装置在订阅消息的读取位置设置订阅消息,以供相应的订阅客户端组中的订阅客户端读取订阅消息。这里的订阅消息的读取位置为消息发送装置在消息发布服务器上设置的订阅消息的存储位置,订阅客户端可从该存储位置下载相应的订阅消息。
这样即完成了本优选实施例的消息发送方法的订阅消息的发送过程。
本优选实施例的消息发送方法通过对不同订阅客户端组的订阅客户端使用不同的订阅消息的发送方法,从而可有效的降低消息制作以及消息传输的成本。
请参照图2,图2为本发明的消息发送方法的第二优选实施例的流程图。本优选实施例的消息发送方法包括:
步骤S201,接收订阅客户端的消息订阅请求,该消息订阅请求包括消息标识、消息发送类型以及订阅客户端的关联订阅客户端;
步骤S202,根据消息订阅请求的消息发送类型以及关联订阅客户端,对订阅客户端进行分组,以形成至少一个订阅客户端组;
步骤S203,对消息订阅请求对应的所有订阅消息进行打包处理;
步骤S204,根据消息订阅请求的消息标识获取订阅消息,并按照订阅客户端组所对应的消息发送类型,采用异步发送的方式,对订阅客户端组中的订阅客户端进行订阅消息的发送。
下面详细说明本优选实施例的消息发送方法的各步骤的具体流程。
在步骤S201中,位于消息发布服务器的消息发送装置接收订阅客户端的消息订阅请求,其中消息请阅请求包括消息标识、消息发送类型以及订阅客户端的关联订阅客户端。消息标识为订阅消息的唯一性编号或唯一性标识,以确保消息发送装置可以获取正确的订阅消息。消息发送类型为订阅消息发送至相应的订阅客户端的方式,如以广播的方式发送至订阅客户端或以互斥的方式发送至订阅客户端。订阅客户端的关联订阅客户端为与订阅客户端具有互斥关系的订阅客户端,如使用同一应用识别号(Appid,applicationidentification)的客户端,以避免将同一订阅消息重复发送给同一用户的多个订阅客户端。随后转到步骤S202。
在步骤S202中,消息发送装置根据步骤S201获取的消息订阅请求的消息发送类型以及关联订阅客户端,对订阅客户端进行分组,以形成至少一个订阅客户端组。及对请求同一订阅消息,消息发送类型相同且互为关联订阅客户端的订阅客户端属于同一订阅客户端组。随后转到步骤S203。
在步骤S203中,消息发送装置对步骤S201获取的消息订阅请求对应的所有的订阅消息进行打包处理,以便提高后续的订阅消息发送效率。随后转到步骤S204。
在步骤S204中,消息发送装置根据消息订阅请求的消息标识获取订阅消息,并按照订阅客户端组所对应的消息发送类型,采用异步发送的方式,对订阅客户端组中的订阅客户端进行订阅消息的发送。这里消息发送类型可包括广播类型和互斥类型。
当消息发送类型为广播类型时,消息发送装置根据消息订阅请求的消息标识,对相应的订阅客户端组中的订阅客户端进行订阅消息的广播。这里消息发送装置只负责发送订阅消息至相应的订阅客户端,并不关心订阅客户端是否接收以及处理该订阅消息。订阅客户端可根据用户的需要对该订阅消息进行异步的接收以及处理。
当消息发送类型为互斥类型时,消息发送装置根据消息订阅请求的消息标识获取订阅消息后,在订阅消息的读取位置设置订阅消息,以供相应的订阅客户端组中的订阅客户端读取订阅消息。这里的订阅消息的读取位置为消息发送装置在消息发布服务器上设置的订阅消息的存储位置,订阅客户端可从该存储位置下载相应的订阅消息。
随后消息发送装置判断读取订阅消息的相应的订阅客户端组中的订阅客户端的数量是否达到设定值,可使用订阅客户端发送的应用识别号对订阅客户端的数量进行统计,如读取订阅消息的相应的订阅客户端组中的订阅客户端的数量达到设定值,则消息发送装置对订阅消息进行删除或取消相应的订阅客户端的读取权限;如读取订阅消息的相应的订阅客户端组中的订阅客户端的数量未达到设定值,则不对订阅消息进行处理。
由于这里订阅客户端组中的订阅客户端为互斥关系,或互为关联订阅客户端,因此这里为了确保订阅客户端对订阅消息已经进行了异步的接收以及处理,订阅客户端需要向消息发送装置提出订阅消息读取请求,消息发送装置对有效的订阅消息的读取进行计数,达到设定值(如1或2等)后,即可将订阅消息进行删除,以避免将同一订阅消息重复发送给同一用户的多个订阅客户端。
这样即完成了本优选实施例的消息发送方法的订阅消息的发送过程。
本优选实施例的消息发送方法在第一优选实施例的基础上,对订阅消息使用广播或互斥的发送方式,在不需要重复制作同一消息的基础上,满足了用户的各种消息接收需求,可有效的降低消息制作以及消息传输的成本。
本发明还提供一种消息发送装置,请参照图3,图3为本发明的消息发送装置的第一优选实施例的结构示意图。本优选实施例的消息发送装置30包括请求接收模块31、分组模块32以及发送模块33。请求接收模块31用于接收订阅客户端的消息订阅请求;其中消息订阅请求包括消息标识和消息发送类型。分组模块32用于根据消息订阅请求的消息发送类型,对订阅客户端进行分组,以形成至少一个订阅客户端组。发送模块33用于根据消息订阅请求的消息标识获取订阅消息,并按照订阅客户端组所对应的消息发送类型,对订阅客户端组中的订阅客户端进行订阅消息的发送。
本优选实施例的消息发送装置30使用时,首先请求接收模块31接收订阅客户端的消息订阅请求,其中消息请阅请求包括消息标识以及消息发送类型。消息标识为订阅消息的唯一性编号或唯一性标识,以确保消息发送装置可以获取正确的订阅消息。消息发送类型为订阅消息发送至相应的订阅客户端的方式,如以广播的方式发送至订阅客户端或以互斥的方式发送至订阅客户端。
随后分组模块32根据请求接收模块31获取的消息订阅请求的消息发送类型,对请求同一订阅消息的订阅客户端进行分组,以形成至少一个订阅客户端组。即对请求同一订阅消息,且消息发送类型相同的订阅客户端属于同一订阅客户端组。消息发送装置30可使用同一种订阅消息的消息发送类型,对一订阅客户端组中的所有订阅客户端进行订阅消息的发送。
最后发送模块33根据请求接收模块31接收的消息订阅请求的消息标识获取订阅消息,并按照订阅客户端组所对应的消息发送类型,对分组模块32获取的订阅客户端组中的订阅客户端进行订阅消息的发送。
这样即完成了本优选实施例的消息发送装置30的订阅消息的发送过程。
本优选实施例的消息发送装置通过对不同订阅客户端组的订阅客户端使用不同的订阅消息的发送方法,从而可有效的降低消息制作以及消息传输的成本。
请参照图4,图4为本发明的消息发送装置的第二优选实施例的结构示意图。本优选实施例的消息发送装置40包括请求接收模块41、分组模块42、打包模块43以及发送模块44。请求接收模块41用于接收订阅客户端的消息订阅请求,其中消息订阅请求包括消息标识、消息发送类型以及关联订阅客户端。分组模块42用于根据消息订阅请求的消息发送类型以及关联订阅客户端,对订阅客户端进行分组,以形成至少一个订阅客户端组。打包模块43用于对消息订阅请求对应的所有订阅消息进行打包处理。发送模块44用于根据消息订阅请求的消息标识获取订阅消息,并按照订阅客户端组所对应的消息发送类型,采用异步发送的方式,对订阅客户端组中的订阅客户端进行订阅消息的发送。
请参照图5,图5为本发明的消息发送装置的第二优选实施例的发送模块的结构示意图。该发送模块44包括设置单元441、判断单元442以及删除单元443。设置单元441用于在订阅消息的读取位置设置订阅消息,以供相应的订阅客户端组中的订阅客户端读取订阅消息。判断单元442用于判断订阅消息的相应的订阅客户端组中的订阅客户端的数量是否达到设定值。删除单元443用于如相应的订阅客户端组中的订阅客户端的数量达到设定值,则对订阅消息进行删除。
本优选实施例的消息发送装置40使用时,首先请求接收模块41接收订阅客户端的消息订阅请求,其中消息请阅请求包括消息标识、消息发送类型以及订阅客户端的关联订阅客户端。消息标识为订阅消息的唯一性编号或唯一性标识,以确保消息发送装置可以获取正确的订阅消息。消息发送类型为订阅消息发送至相应的订阅客户端的方式,如以广播的方式发送至订阅客户端或以互斥的方式发送至订阅客户端。订阅客户端的关联订阅客户端为与订阅客户端具有互斥关系的订阅客户端,如使用同一应用识别号(Appid,application identification)的客户端,以避免将同一订阅消息重复发送给同一用户的多个订阅客户端。
随后分组模块42根据请求接收模块41获取的消息订阅请求的消息发送类型以及关联订阅客户端,对订阅客户端进行分组,以形成至少一个订阅客户端组。及对请求同一订阅消息,消息发送类型相同且互为关联订阅客户端的订阅客户端属于同一订阅客户端组。
然后打包模块43对请求接收模块41获取的消息订阅请求对应的所有的订阅消息进行打包处理,以便提高后续的订阅消息发送效率。
最后发送模块44根据消息订阅请求的消息标识获取订阅消息,并按照订阅客户端组所对应的消息发送类型,采用异步发送的方式,对订阅客户端组中的订阅客户端进行订阅消息的发送。这里消息发送类型可包括广播类型和互斥类型。
当消息发送类型为广播类型时,发送模块44根据消息订阅请求的消息标识,对相应的订阅客户端组中的订阅客户端进行订阅消息的广播。这里发送模块44只负责发送订阅消息至相应的订阅客户端,并不关心订阅客户端是否接收以及处理该订阅消息。订阅客户端可根据用户的需要对该订阅消息进行异步的接收以及处理。
当消息发送类型为互斥类型时,发送模块44的设置单元441根据消息订阅请求的消息标识获取订阅消息后,在订阅消息的读取位置设置订阅消息,以供相应的订阅客户端组中的订阅客户端读取订阅消息。这里的订阅消息的读取位置为消息发送装置在消息发布服务器上设置的订阅消息的存储位置,订阅客户端可从该存储位置下载相应的订阅消息。
随后发送模块44的判断单元442判断读取订阅消息的相应的订阅客户端组中的订阅客户端的数量是否达到设定值,可使用订阅客户端发送的应用识别号对订阅客户端的数量进行统计,如读取订阅消息的相应的订阅客户端组中的订阅客户端的数量达到设定值,则发送模块44的删除单元443对订阅消息进行删除或取消相应的订阅客户端的读取权限;如读取订阅消息的相应的订阅客户端组中的订阅客户端的数量未达到设定值,则发送模块不对订阅消息进行处理。
由于这里订阅客户端组中的订阅客户端为互斥关系,或互为关联订阅客户端,因此这里为了确保订阅客户端对订阅消息已经进行了异步的接收以及处理,订阅客户端需要向消息发送装置提出订阅消息读取请求,判断单元442对有效的订阅消息的读取进行计数,达到设定值(如1或2等)后,删除单元443即可将订阅消息进行删除,以避免将同一订阅消息重复发送给同一用户的多个订阅客户端。
这样即完成了本优选实施例的消息发送装置40的订阅消息的发送过程。
本优选实施例的消息发送装置在第一优选实施例的基础上,对订阅消息使用广播或互斥的发送方式,在不需要重复制作同一消息的基础上,满足了用户的各种消息接收需求,可有效的降低消息制作以及消息传输的成本。
下面通过一具体实施例说明本发明的消息发送方法以及消息发送装置的具体工作原理。请参照图6,图6为本发明的消息发送方法及消息发送装置的具体实施例的消息发送示意图。
订阅客户端A1、订阅客户端A2以及订阅客户端A3向消息发布服务器61发送广播类型的消息发送类型的消息订阅请求A。订阅客户端B1、订阅客户端A2以及订阅客户端B3向消息发布服务器61发送设定值为1的互斥类型的消息发送类型的消息订阅请求B。订阅客户端C1、订阅客户端C2以及订阅客户端C3向消息发布服务器61发送设定值为2的互斥类型的消息发送类型的消息订阅请求C。消息订阅请求A、消息订阅请求B以及消息订阅请求C对应的订阅消息均为订阅消息1、订阅消息2以及订阅消息3。这样订阅客户端A1、订阅客户端A2以及订阅客户端A3构成了订阅客户端组A,订阅客户端B1、订阅客户端B2以及订阅客户端B3构成了订阅客户端组B,订阅客户端C1、订阅客户端C2以及订阅客户端C3构成了订阅客户端组C。
本具体实施例的消息发布服务器61进行订阅消息的发布时,首先对订阅消息1、订阅消息2以及订阅消息3进行打包操作,以形成打包订阅消息。
随后消息发布服务器61对订阅客户端组A中的订阅客户端A1、订阅客户端A2以及订阅客户端A3进行订阅消息的广播,即将打包订阅消息分别发送至订阅客户端A1、订阅客户端A2以及订阅客户端A3,消息发布服务器并16不关心订阅客户端是否接收以及处理该打包订阅消息,订阅客户端A1、订阅客户端A2以及订阅客户端A3可根据用户的需要对该订阅消息进行异步的接收以及处理。
同时消息发布服务器61将打包订阅消息设置在订阅消息读取位置,从而订阅客户端组B的订阅客户端B1、订阅客户端B2以及订阅客户端B3可以使用相应的应用识别号从订阅消息读取位置下载上述打包订阅消息,消息发布服务器61对下载的订阅客户端的数量进行统计。由于订阅客户端组B对应的互斥类型的消息订阅请求的设定值为1,因此消息发布服务器61如发现订阅客户端B1、订阅客户端B2或订阅客户端B3从订阅消息读取位置下载上述打包订阅消息,则将打包订阅消息从订阅消息读取位置删除或取消订阅客户端组B中的订阅客户端的读取权限,以避免将同一订阅消息重复发送给同一用户的多个订阅客户端。
同时订阅客户端组C的订阅客户端C1、订阅客户端C2以及订阅客户端C3可以使用相应的应用识别号从订阅消息读取位置下载上述打包订阅消息,消息发布服务器61对下载的订阅客户端的数量进行统计。由于订阅客户端组C对应的互斥类型的消息订阅请求的设定值为2,因此消息发布服务器61如发现订阅客户端C1、订阅客户端C2以及订阅客户端C3中的任意两个从订阅消息读取位置下载上述打包订阅消息,则将打包订阅消息从订阅消息读取位置删除或取消订阅客户端组C中的订阅客户端的读取权限,以避免将同一订阅消息重复发送给同一用户的多个订阅客户端。
这样即完成了本优选实施例的消息发送方法以及消息发送装置的消息发送过程。
本发明的消息发送方法及消息发送装置通过对不同订阅客户端组的订阅客户端使用不同的订阅消息的发送方法,从而可以有效的降低消息制作以及传输的成本;解决了现有的消息发送方法及消息发送装置的消息制作以及传输成本较高的技术问题。
如本申请所使用的术语“组件”、“模块”、“系统”、“接口”、“进程”等等一般地旨在指计算机相关实体:硬件、硬件和软件的组合、软件或执行中的软件。例如,组件可以是但不限于是运行在处理器上的进程、处理器、对象、可执行应用、执行的线程、程序和/或计算机。通过图示,运行在控制器上的应用和该控制器二者都可以是组件。一个或多个组件可以有在于执行的进程和/或线程内,并且组件可以位于一个计算机上和/或分布在两个或更多计算机之间。
而且,要求保护的主题可以被实现为使用标准编程和/或工程技术产生软件、固件、硬件或其任意组合以控制计算机实现所公开的主题的方法、装置或制造品。本文所使用的术语“制造品”旨在包含可从任意计算机可读设备、载体或介质访问的计算机程序。当然,本领域技术人员将认识到可以对该配置进行许多修改,而不脱离要求保护的主题的范围或精神。
图7和随后的讨论提供了对实现本发明所述的消息发送装置所在的电子设备的工作环境的简短、概括的描述。图7的工作环境仅仅是适当的工作环境的一个实例并且不旨在建议关于工作环境的用途或功能的范围的任何限制。实例电子设备712包括但不限于个人计算机、服务器计算机、手持式或膝上型设备、移动设备(比如移动电话、个人数字助理(PDA)、媒体播放器等等)、多处理器系统、消费型电子设备、小型计算机、大型计算机、包括上述任意系统或设备的分布式计算环境,等等。
尽管没有要求,但是在“计算机可读指令”被一个或多个电子设备执行的通用背景下描述实施例。计算机可读指令可以经由计算机可读介质来分布(下文讨论)。计算机可读指令可以实现为程序模块,比如执行特定任务或实现特定抽象数据类型的功能、对象、应用编程接口(API)、数据结构等等。典型地,该计算机可读指令的功能可以在各种环境中随意组合或分布。
图7图示了包括本发明的消息发送装置的一个或多个实施例的电子设备712的实例。在一种配置中,电子设备712包括至少一个处理单元716和存储器718。根据电子设备的确切配置和类型,存储器718可以是易失性的(比如RAM)、非易失性的(比如ROM、闪存等)或二者的某种组合。该配置在图7中由虚线714图示。
在其他实施例中,电子设备712可以包括附加特征和/或功能。例如,设备712还可以包括附加的存储装置(例如可移除和/或不可移除的),其包括但不限于磁存储装置、光存储装置等等。这种附加存储装置在图7中由存储装置720图示。在一个实施例中,用于实现本文所提供的一个或多个实施例的计算机可读指令可以在存储装置720中。存储装置720还可以存储用于实现操作系统、应用程序等的其他计算机可读指令。计算机可读指令可以载入存储器718中由例如处理单元716执行。
本文所使用的术语“计算机可读介质”包括计算机存储介质。计算机存储介质包括以用于存储诸如计算机可读指令或其他数据之类的信息的任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。存储器718和存储装置720是计算机存储介质的实例。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字通用盘(DVD)或其他光存储装置、盒式磁带、磁带、磁盘存储装置或其他磁存储设备、或可以用于存储期望信息并可以被电子设备712访问的任何其他介质。任意这样的计算机存储介质可以是电子设备712的一部分。
电子设备712还可以包括允许电子设备712与其他设备通信的通信连接726。通信连接726可以包括但不限于调制解调器、网络接口卡(NIC)、集成网络接口、射频发射器/接收器、红外端口、USB连接或用于将电子设备712连接到其他电子设备的其他接口。通信连接726可以包括有线连接或无线连接。通信连接726可以发射和/或接收通信媒体。
术语“计算机可读介质”可以包括通信介质。通信介质典型地包含计算机可读指令或诸如载波或其他传输机构之类的“己调制数据信号”中的其他数据,并且包括任何信息递送介质。术语“己调制数据信号”可以包括这样的信号:该信号特性中的一个或多个按照将信息编码到信号中的方式来设置或改变。
电子设备712可以包括输入设备724,比如键盘、鼠标、笔、语音输入设备、触摸输入设备、红外相机、视频输入设备和/或任何其他输入设备。设备712中也可以包括输出设备722,比如一个或多个显示器、扬声器、打印机和/或任意其他输出设备。输入设备724和输出设备722可以经由有线连接、无线连接或其任意组合连接到电子设备712。在一个实施例中,来自另一个电子设备的输入设备或输出设备可以被用作电子设备712的输入设备724或输出设备722。
电子设备712的组件可以通过各种互连(比如总线)连接。这样的互连可以包括外围组件互连(PCI)(比如快速PCI)、通用串行总线(USB)、火线(IEEE1394)、光学总线结构等等。在另一个实施例中,电子设备712的组件可以通过网络互连。例如,存储器718可以由位于不同物理位置中的、通过网络互连的多个物理存储器单元构成。
本领域技术人员将认识到,用于存储计算机可读指令的存储设备可以跨越网络分布。例如,可经由网络728访问的电子设备730可以存储用于实现本发明所提供的一个或多个实施例的计算机可读指令。电子设备712可以访问电子设备730并且下载计算机可读指令的一部分或所有以供执行。可替代地,电子设备712可以按需要下载多条计算机可读指令,或者一些指令可以在电子设备712处执行并且一些指令可以在电子设备730处执行。
本文提供了实施例的各种操作。在一个实施例中,所述的一个或多个操作可以构成一个或多个计算机可读介质上存储的计算机可读指令,其在被电子设备执行时将使得计算设备执行所述操作。描述一些或所有操作的顺序不应当被解释为暗示这些操作必需是顺序相关的。本领域技术人员将理解具有本说明书的益处的可替代的排序。而且,应当理解,不是所有操作必需在本文所提供的每个实施例中存在。
而且,本文所使用的词语“优选的”意指用作实例、示例或例证。奉文描述为“优选的”任意方面或设计不必被解释为比其他方面或设计更有利。相反,词语“优选的”的使用旨在以具体方式提出概念。如本申请中所使用的术语“或”旨在意指包含的“或”而非排除的“或”。即,除非另外指定或从上下文中清楚,“X使用A或B”意指自然包括排列的任意一个。即,如果X使用A;X使用B;或X使用A和B二者,则“X使用A或B”在前述任一示例中得到满足。
而且,尽管已经相对于一个或多个实现方式示出并描述了本公开,但是本领域技术人员基于对本说明书和附图的阅读和理解将会想到等价变型和修改。本公开包括所有这样的修改和变型,并且仅由所附权利要求的范围限制。特别地关于由上述组件(例如元件、资源等)执行的各种功能,用于描述这样的组件的术语旨在对应于执行所述组件的指定功能(例如其在功能上是等价的)的任意组件(除非另外指示),即使在结构上与执行本文所示的本公开的示范性实现方式中的功能的公开结构不等同。此外,尽管本公开的特定特征已经相对于若干实现方式中的仅一个被公开,但是这种特征可以与如可以对给定或特定应用而言是期望和有利的其他实现方式的一个或多个其他特征组合。而且,就术语“包括”、“具有”、“含有”或其变形被用在具体实施方式或权利要求中而言,这样的术语旨在以与术语“包含”相似的方式包括。
本发明实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。上述提到的存储介质可以是只读存储器,磁盘或光盘等。上述的各装置或系统,可以执行相应方法实施例中的方法。
综上所述,虽然本发明已以优选实施例揭露如上,但上述优选实施例并非用以限制本发明,本领域的普通技术人员,在不脱离本发明的精神和范围内,均可作各种更动与润饰,因此本发明的保护范围以权利要求界定的范围为准。
Claims (14)
1.一种消息发送方法,其特征在于,包括:
接收订阅客户端的消息订阅请求;其中所述消息订阅请求包括消息标识和消息发送类型,所述消息发送类型包括广播类型和互斥类型;
根据所述消息订阅请求的消息发送类型,对所述消息订阅请求包括相同消息标识的订阅客户端进行分组,以形成至少一个订阅客户端组,一种消息发送类型对应一个订阅客户端组;以及
根据所述消息订阅请求的消息标识获取订阅消息,对广播类型对应订阅客户端组中的所述订阅客户端进行所述订阅消息的广播;在所述订阅消息的读取位置设置所述订阅消息,以供互斥类型对应订阅客户端组中的所述订阅客户端读取所述订阅消息。
2.根据权利要求1所述的消息发送方法,其特征在于,所述消息订阅请求还包括关联订阅客户端;所述订阅客户端的关联订阅客户端为与所述订阅客户端具有互斥关系的订阅客户端;
所述根据所述消息订阅请求的消息发送类型,对所述消息订阅请求包括相同消息标识的订阅客户端进行分组,以形成至少一个订阅客户端组的步骤具体为:
根据所述消息订阅请求的消息发送类型以及所述关联订阅客户端,对所述消息订阅请求包括相同消息标识的订阅客户端进行分组,以形成至少一个所述订阅客户端组。
3.根据权利要求2所述的消息发送方法,其特征在于,当所述消息发送类型为互斥类型时,所述在所述订阅消息的读取位置设置所述订阅消息,以供互斥类型对应订阅客户端组中的所述订阅客户端读取所述订阅消息的步骤具体为:
在所述订阅消息的读取位置设置所述订阅消息,以供相应的所述订阅客户端组中的所述订阅客户端读取所述订阅消息;
判断读取所述订阅消息的相应的所述订阅客户端组中的所述订阅客户端的数量是否达到设定值;以及
如相应的所述订阅客户端组中的所述订阅客户端的数量达到所述设定值,则对所述订阅消息进行删除。
4.根据权利要求3所述的消息发送方法,其特征在于,所述判断读取所述订阅消息的相应的所述订阅客户端组中的所述订阅客户端的数量是否达到设定值的步骤包括:
根据读取所述订阅消息的所述订阅客户端发送的应用识别号判断所述订阅客户端是否属于相应的所述订阅客户端组。
5.根据权利要求1所述的消息发送方法,其特征在于,还包括步骤:
对所述消息订阅请求对应的所有所述订阅消息进行打包处理。
6.根据权利要求1所述的消息发送方法,其特征在于,所述对广播类型对应订阅客户端组中的所述订阅客户端进行所述订阅消息的广播的发送的步骤具体为:
采用异步发送的方式,对所述对广播类型对应订阅客户端组中的所述订阅客户端进行订阅消息的广播。
7.一种消息发送装置,其特征在于,包括:
请求接收模块,用于接收订阅客户端的消息订阅请求;其中所述消息订阅请求包括消息标识和消息发送类型,所述消息发送类型包括广播类型和互斥类型;
分组模块,用于根据所述消息订阅请求的消息发送类型,对所述消息订阅请求包括相同消息标识的订阅客户端进行分组,以形成至少一个订阅客户端组,一种消息发送类型对应一个订阅客户端组;以及
发送模块,用于根据所述消息订阅请求的消息标识获取订阅消息,对广播类型对应订阅客户端组中的所述订阅客户端进行所述订阅消息的广播;在所述订阅消息的读取位置设置所述订阅消息,以供互斥类型对应订阅客户端组中的所述订阅客户端读取所述订阅消息。
8.根据权利要求7所述的消息发送装置,其特征在于,所述消息订阅请求还包括关联订阅客户端;所述订阅客户端的关联订阅客户端为与所述订阅客户端具有互斥关系的订阅客户端;
所述分组模块根据所述消息订阅请求的消息发送类型以及所述关联订阅客户端,对所述消息订阅请求包括相同消息标识的订阅客户端进行分组,以形成至少一个所述订阅客户端组。
9.根据权利要求8所述的消息发送装置,其特征在于,当所述消息发送类型为互斥类型时,所述发送模块包括:
设置单元,用于在所述订阅消息的读取位置设置所述订阅消息,以供相应的所述订阅客户端组中的所述订阅客户端读取所述订阅消息;
判断单元,用于判断读取所述订阅消息的相应的所述订阅客户端组中的所述订阅客户端的数量是否达到设定值;以及
删除单元,用于如相应的所述订阅客户端组中的所述订阅客户端的数量达到所述设定值,则对所述订阅消息进行删除。
10.根据权利要求9所述的消息发送装置,其特征在于,所述判断单元根据读取所述订阅消息的所述订阅客户端发送的应用识别号判断所述订阅客户端是否属于相应的所述订阅客户端组。
11.根据权利要求7所述的消息发送装置,其特征在于,所述消息发送装置还包括:
打包模块,用于对所述消息订阅请求对应的所有所述订阅消息进行打包处理。
12.根据权利要求7所述的消息发送装置,其特征在于,所述发送模块采用异步发送的方式,对所述对广播类型对应订阅客户端组中的所述订阅客户端进行订阅消息的广播。
13.一种服务器,其特征在于,包括存储器和处理器,所述存储器中储存有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至6任一项所述方法中的步骤。
14.一种存储介质,其特征在于,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至6任一项所述方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510670259.1A CN106572146B (zh) | 2015-10-13 | 2015-10-13 | 消息发送方法及消息发送装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510670259.1A CN106572146B (zh) | 2015-10-13 | 2015-10-13 | 消息发送方法及消息发送装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106572146A CN106572146A (zh) | 2017-04-19 |
CN106572146B true CN106572146B (zh) | 2020-03-17 |
Family
ID=58508421
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510670259.1A Active CN106572146B (zh) | 2015-10-13 | 2015-10-13 | 消息发送方法及消息发送装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106572146B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107566251A (zh) * | 2017-08-29 | 2018-01-09 | 阔地教育科技有限公司 | 消息传输方法、存储设备及服务器 |
CN108196961B (zh) * | 2017-12-28 | 2020-05-12 | 蜂助手股份有限公司 | 一种异步消息处理方法、终端、系统及存储介质 |
CN110928704B (zh) * | 2018-09-20 | 2023-06-23 | 广州虎牙信息科技有限公司 | 消息处理方法、消息处理系统、服务器及计算机存储介质 |
CN109815292A (zh) * | 2019-01-03 | 2019-05-28 | 广州中软信息技术有限公司 | 一种基于异步消息机制的涉税数据采集系统 |
CN110932874B (zh) * | 2019-11-22 | 2022-08-16 | 南京甄视智能科技有限公司 | 分布式消息广播通知实现方法 |
CN111917843A (zh) * | 2020-07-16 | 2020-11-10 | 远光软件股份有限公司 | 消息的推送方法、计算机设备及存储介质 |
CN111988422B (zh) * | 2020-08-31 | 2023-06-27 | 广州市百果园信息技术有限公司 | 应用服务的订阅方法、装置、服务器及存储介质 |
CN112839087A (zh) * | 2021-01-06 | 2021-05-25 | 深圳市芯中芯科技有限公司 | 一种基于集群的多终端控制方法及系统 |
CN115103322B (zh) * | 2022-06-16 | 2024-05-31 | 亚信科技(中国)有限公司 | 订阅合并方法、装置、电子设备、存储介质及产品 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101668031B (zh) * | 2008-09-02 | 2013-10-16 | 阿里巴巴集团控股有限公司 | 一种消息处理方法及系统 |
CN101795465B (zh) * | 2010-01-29 | 2012-09-26 | 杭州华三通信技术有限公司 | 一种ap的分组管理方法和设备 |
US8706822B2 (en) * | 2010-06-23 | 2014-04-22 | Microsoft Corporation | Delivering messages from message sources to subscribing recipients |
CN102377686B (zh) * | 2010-08-10 | 2015-07-01 | 阿里巴巴集团控股有限公司 | 一种消息订阅系统、消息订阅方法及装置 |
US20130311598A1 (en) * | 2012-05-16 | 2013-11-21 | Apple Inc. | Cloud-based data item sharing and collaboration among groups of users |
CN102904962A (zh) * | 2012-10-23 | 2013-01-30 | 深圳市汇智集信息科技有限公司 | 消息推送系统及其消息推送的方法 |
CN104639625B (zh) * | 2015-01-27 | 2018-05-01 | 华南理工大学 | 一种基于mqtt的数据集中器采集控制方法、装置及系统 |
-
2015
- 2015-10-13 CN CN201510670259.1A patent/CN106572146B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106572146A (zh) | 2017-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106572146B (zh) | 消息发送方法及消息发送装置 | |
US9654577B2 (en) | Techniques to generate mass push notifications | |
CN109542361B (zh) | 一种分布式存储系统文件读取方法、系统及相关装置 | |
CN105589658B (zh) | 资源处理方法、系统及服务器、仓库管理方法及装置 | |
WO2018103405A1 (zh) | 识别接入点和热点的方法及相关产品 | |
CN106339267B (zh) | 一种对象查询方法及服务端 | |
CN108496155A (zh) | 参数处理方法、设备、机器可读存储介质以及系统 | |
CN107864044B (zh) | 一种信息处理方法及装置、终端及可读存储介质 | |
CN106462638B (zh) | 基于流的反应性编程平台 | |
US12088547B2 (en) | Efficient forwarding of messages through brokers by topic | |
CN114036031B (zh) | 一种企业数字中台中资源服务应用的调度系统和方法 | |
CN110764930A (zh) | 基于消息模式的请求或应答处理方法及装置 | |
CN114257579A (zh) | 一种信息传输的方法、装置、设备及介质 | |
CN110059091B (zh) | 索引构建的方法、装置、客户端、服务器及系统 | |
CN114270309A (zh) | 资源获取方法、装置以及电子设备 | |
US20230336509A1 (en) | Efficiently handling retained messages in a system with bridged message brokers | |
US20090282367A1 (en) | Method and system for electronic communication management | |
US10541963B2 (en) | Common message sending method, electronic device, and storage medium | |
CN115794876A (zh) | 针对业务数据包的分片处理方法、装置、设备及存储介质 | |
CN113486025A (zh) | 数据存储方法、数据查询方法及装置 | |
CN107689996B (zh) | 数据传输方法、装置及终端设备 | |
US8296055B2 (en) | Method and system for positional communication | |
CN112163176A (zh) | 数据存储方法、装置、电子设备和计算机可读介质 | |
CN114065140A (zh) | 软件程序验证方法、电子装置及存储介质 | |
CN113032820A (zh) | 文件存储方法、访问方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |