CN105472400B - 一种消息推送方法及系统 - Google Patents
一种消息推送方法及系统 Download PDFInfo
- Publication number
- CN105472400B CN105472400B CN201510982884.XA CN201510982884A CN105472400B CN 105472400 B CN105472400 B CN 105472400B CN 201510982884 A CN201510982884 A CN 201510982884A CN 105472400 B CN105472400 B CN 105472400B
- Authority
- CN
- China
- Prior art keywords
- push
- message
- terminal
- server
- offline
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25808—Management of client data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26208—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Computer Graphics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种消息推送方法及系统,通过获取待推送消息,根据不同维度对所述待推送消息进行细分,并存放到所述消息队列服务器的多个队列中;解析所述消息对应的推送维度范围条件,根据所述推送维度范围条件查询所有终端,过滤出符合所述推送维度范围条件的终端标识,根据不同的接入服务器对所述终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器;各个接入服务器遍历对应的终端标识,根据各个终端标识找到对应的终端会话和连接,将所述消息发送给对应的各个终端;实现了并行推送消息,极大地缩短了消息到达时间,特别适用于百万级电视终端在线时的消息推送。
Description
技术领域
本发明涉及智能电视技术领域,尤其涉及的是一种多维度并行消息推送方法及系统。
背景技术
在当前移动互联网时代,消息推送已经成为智能终端最重要的入口,是互联网基础平台的标配系统,是主动触达用户的有效路径。基于消息推送平台,公司可以运营应用推广、广告推送和精准推送,为第三方应用提供推送通道。近年来随着智能电视的不断推广和普及,智能电视比例在2014年约占35-45%,将在2015年上升到70-80%,年销售量将达到一千万台以上。电视作为客厅中的核心设备,从运营的需求来说,是需要一个消息推送的基础服务,作为抢占客厅入口的一个基础功能。并且在这个基础上,运营应用推广、广告推送和精准推送,为第三方APP提供推送通道。
基于智能电视的消息推送,将广告或者活动通知主动推送给电视终端用户,让用户第一时间获取到相关信息,提升用户活跃度。服务器端可以结合大数据技术对电视终端用户的收视行为进行分析,提取特征并画像,为不同画像的用户推送最合适的内容,提升消息点击率和用户满意度。在海量的智能电视终端情况下,服务器端大量消息推送时时间延迟较长,也就是消息从发送到达到的时间长,带来了不便。
因此,现有技术还有待于改进和发展。
发明内容
本发明要解决的技术问题在于,提供一种消息推送方法及系统,旨在解决现有技术中消息推送时间延迟较长的问题。
本发明解决技术问题所采用的技术方案如下:
一种消息推送方法,其中,包括:
A、将多个终端按照不同维度组合进行划分得到多个终端群组,在消息队列服务器设置多个队列,所述多个队列与多个终端群组一一对应关联;将所述多个队列与至少一推送逻辑服务器对应关联;
B、获取待推送消息,根据不同维度对所述待推送消息进行细分,将所述待推送消息变为对应多条消息,并存放到所述消息队列服务器的多个队列中;
C、推送逻辑服务器根据其关联的队列获取对应的消息,解析所述消息对应的推送维度范围条件,根据所述推送维度范围条件查询所有终端,过滤出符合所述推送维度范围条件的终端标识,根据不同的接入服务器对所述终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器;
D、各个接入服务器遍历对应的终端标识,根据各个终端标识找到对应的终端会话和连接,将所述消息发送给对应的各个终端。
所述的消息推送方法,其中,所述步骤C具体包括:
C1、推送逻辑服务器根据其关联的队列获取对应的消息,解析所述消息对应的推送维度范围条件,根据所述推送维度范围条件查询所有终端,过滤出符合所述推送维度范围条件的终端标识;
C2、根据所述终端标识判断各个终端是否在线,得到对应的在线终端标识列表和离线终端标识列表;
C3、根据不同的接入服务器对所述在线终端标识列表中的各个终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器。
所述的消息推送方法,其中,所述步骤C2还包括:
C21、推送逻辑服务器根据离线终端标识列表分别给每个离线终端保存对应的离线消息记录,当接入服务器检测到离线终端登录时,发送对应的离线消息记录。
所述的消息推送方法,其中,所述维度包括以下参数中的一个或多个:地区、机型、终端应用版本号、终端当前激活应用、位置经纬度信息。
所述的消息推送方法,其中,在所述步骤D之后,还包括:
E、判断各个接入服务器发送消息给各个终端是否正常,并反馈给推送逻辑服务器以实时统计推送结果。
一种消息推送系统,其中,包括:
推送设置模块,用于将多个终端按照不同维度组合进行划分得到多个终端群组,在消息队列服务器设置多个队列,所述多个队列与多个终端群组一一对应关联;将所述多个队列与至少一推送逻辑服务器对应关联;
消息细分模块,用于获取待推送消息,根据不同维度对所述待推送消息进行细分,将所述待推送消息变为对应多条消息,并存放到所述消息队列服务器的多个队列中;
消息解析模块,用于通过推送逻辑服务器根据其关联的队列获取对应的消息,解析所述消息对应的推送维度范围条件,根据所述推送维度范围条件查询所有终端,过滤出符合所述推送维度范围条件的终端标识,根据不同的接入服务器对所述终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器;
消息推送模块,用于通过各个接入服务器遍历对应的终端标识,根据各个终端标识找到对应的终端会话和连接,将所述消息发送给对应的各个终端。
所述的消息推送系统,其中,所述消息解析模块包括:
消息解析单元,用于通过推送逻辑服务器根据其关联的队列获取对应的消息,解析所述消息对应的推送维度范围条件,根据所述推送维度范围条件查询所有终端,过滤出符合所述推送维度范围条件的终端标识;
在线判断单元,用于根据所述终端标识判断各个终端是否在线,得到对应的在线终端标识列表和离线终端标识列表;
消息转发单元,用于根据不同的接入服务器对所述在线终端标识列表中的各个终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器。
所述的消息推送系统,其中,所述在线判断单元包括:
离线推送单元,用于通过推送逻辑服务器根据离线终端标识列表分别给每个离线终端保存对应的离线消息记录,当接入服务器检测到离线终端登录时,发送对应的离线消息记录。
所述的消息推送系统,其中,所述维度包括以下参数中的一个或多个:地区、机型、终端应用版本号、终端当前激活应用、位置经纬度信息。
所述的消息推送系统,其中,还包括:
推送统计模块,用于判断各个接入服务器发送消息给各个终端是否正常,并反馈给推送逻辑服务器以实时统计推送结果。
本发明所提供的一种消息推送方法及系统,有效地解决了现有技术中消息推送时间延迟较长的问题,通过获取待推送消息,根据不同维度对所述待推送消息进行细分,将所述待推送消息变为对应多条消息,并存放到所述消息队列服务器的多个队列中;推送逻辑服务器根据其关联的队列获取对应的消息,解析所述消息对应的推送维度范围条件,根据所述推送维度范围条件查询所有终端,过滤出符合所述推送维度范围条件的终端标识,根据不同的接入服务器对所述终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器;各个接入服务器遍历对应的终端标识,根据各个终端标识找到对应的终端并建立连接,将所述消息发送给对应的各个终端;实现了并行推送消息,极大地缩短了消息到达时间,特别适用于百万级电视终端在线时的消息推送,带来了大大的方便。
附图说明
图1为本发明提供的消息推送方法较佳实施例的流程图。
图2为本发明提供的消息推送方法中并行推送架构示意图。
图3为本发明提供的消息推送方法中并行推送交互流程图。
图4为本发明提供的消息推送系统较佳实施例的结构框图。
具体实施方式
本发明提供一种消息推送方法及系统,为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1,图1为本发明提供的消息推送方法较佳实施例的流程图,如图所示,所述方法包括以下步骤:
步骤S100、将多个终端按照不同维度组合进行划分得到多个终端群组,在消息队列服务器设置多个队列,所述多个队列与多个终端群组一一对应关联;将所述多个队列与至少一推送逻辑服务器对应关联;
步骤S200、获取待推送消息,根据不同维度对所述待推送消息进行细分,将所述待推送消息变为对应多条消息,并存放到所述消息队列服务器的多个队列中;
步骤S300、推送逻辑服务器根据其关联的队列获取对应的消息,解析所述消息对应的推送维度范围条件,根据所述推送维度范围条件查询所有终端,过滤出符合所述推送维度范围条件的终端标识,根据不同的接入服务器对所述终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器;
步骤S400、各个接入服务器遍历对应的终端标识,根据各个终端标识找到对应的终端会话和连接,将所述消息发送给对应的各个终端。
下面结合具体的实施例对上述步骤进行详细的描述。
在步骤S100中,步骤S100、将多个终端按照不同维度组合进行划分得到多个终端群组,在消息队列服务器设置多个队列,所述多个队列与多个终端群组一一对应关联;将所述多个队列与至少一推送逻辑服务器对应关联。具体来说,本发明是将多个终端按照不同维度组合进行划分得到多个终端群组,譬如以地区、机型、终端应用版本号、终端当前激活应用、位置信息经纬度等维度属性对终端应用进行细化分组,以这些维度的组合把一个大群体的终端划分为一个个小群组,从而为后续的并发推送提供基础信息。同时在消息队列服务器设置多个队列,结合消息队列服务器支持多个队列,让终端应用的多维度属性的不同组合和这些多队列进行一一对应。推送逻辑服务器可以一台或多台,每台推送逻辑服务器订阅的队列名是不同的。每台推送逻辑服务器会从对应的队列中获取待推送消息,在实际应用时,由于待推送消息可能不止一个,每台推送逻辑服务器可从队列中获取待推送消息列表。
在步骤S200中,获取待推送消息,根据不同维度对所述待推送消息进行细分,将所述待推送消息变为对应多条消息,并存放到所述消息队列服务器的多个队列中。具体来说,运营后台在发布一条推送消息时,在它的推送条件已有维度上继续扩充其它维度进行细分,把该条推送消息变为多条消息,存放到消息队列服务器的多个队列中,从而由这些队列对应的不同推送逻辑服务器并行地处理。
在步骤S300中,推送逻辑服务器根据其关联的队列获取对应的消息,解析所述消息对应的推送维度范围条件,根据所述推送维度范围条件查询所有终端,过滤出符合所述推送维度范围条件的终端标识,根据不同的接入服务器对所述终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器。
具体来说,推送逻辑服务器可以一台或多台,每台推送逻辑服务器订阅的队列名是不同的。每台推送逻辑服务器会从对应的列队中获取待推送消息。也就是推送逻辑服务器根据其关联的队列获取对应的消息,解析所述消息对应的推送维度范围条件。在实际应用时,推送逻辑服务器获取待推送消息,解析所述待推送消息对应的推送范围条件,根据所述推送范围条件查询所有终端,过滤出符合所述推送范围条件的终端标识。运营人员在运营平台发布待推送消息,创建推送任务,根据推送任务解析推送范围条件(如地区、机型、终端应用版本号、电视当前激活应用、位置信息经纬度等维度),对所有终端进行过滤,在数据库中查询对应的终端标识;将过滤出来的全部终端标识(user id)进行列表。
优选地,可根据各个终端是否在线,分为在线终端标识列表和离线终端标识列表。
根据不同的接入服务器对所述终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器。具体来说,根据与各个终端建立长连接的多个接入服务器的接入服务器名进行分组,形成不同分组对应的推送消息内容、接入服务器名和终端标识列表;根据不同分组把对应的终端标识列表和推送消息内容并行地转发给对应的接入服务器。也就是根据与其建立长连接的接入服务器名进行分组,形成接入服务器名和终端标识列表。推送服务器根据不同分组把终端标识列表和消息体并行地转发给对应的接入服务器。
在所述步骤S400中,各个接入服务器遍历对应的终端标识,根据各个终端标识找到对应的终端会话和连接,将所述消息发送给对应的各个终端。具体来说,各个接入服务器遍历对应的终端标识,根据每个终端标识找到对应的终端会话和连接,将推送消息内容发送给对应的各个终端。在实际应用时,各个接入服务器遍历对应的终端标识以终端标识列表形式体现。
进一步地,所述步骤S300具体包括:
S310、推送逻辑服务器根据其关联的队列获取对应的消息,解析所述消息对应的推送维度范围条件,根据所述推送维度范围条件查询所有终端,过滤出符合所述推送维度范围条件的终端标识;
S320、根据所述终端标识判断各个终端是否在线,得到对应的在线终端标识列表和离线终端标识列表;
S330、根据不同的接入服务器对所述在线终端标识列表中的各个终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器。
具体来说,推送逻辑服务器接收关联队列中的消息,创建推送任务,根据推送任务解析推送范围条件(如地区、机型、终端应用版本号、电视当前激活应用、位置经纬度信息等维度),对所有终端进行过滤,在数据库中查询对应的终端标识;将过滤出来的全部终端标识(user id)进行列表,根据各个终端是否在线,分为在线终端标识列表和离线终端标识列表。根据与在线终端标识列表的各个终端建立长连接的多个接入服务器的接入服务器名进行分组,形成不同分组对应的推送消息内容、接入服务器名和终端标识列表;根据不同分组把对应的终端标识列表和推送消息内容并行地转发给对应的接入服务器。在实际应用时,就是在线终端列表根据与其建立长连接的接入服务器名进行分组,形成接入服务器名和终端标识列表。推送服务器根据不同分组把终端标识列表和消息体并行地转发给对应的接入服务器。
优选地,所述步骤S320还包括:
S321、推送逻辑服务器根据离线终端标识列表分别给每个离线终端保存对应的离线消息记录,当接入服务器检测到离线终端登录时,发送对应的离线消息记录。具体来说,就是离线终端列表会分别给每个离线终端保存一条离线消息记录,当终端登录时进行检测,检测到有则即时发送。
在实际应用时,每条消息会创建一个推送任务,解析推送范围条件,查询MongoDB(数据库)中的终端会话信息,该会话信息包含每个终端的设备编号、机型、区域信息及其登录的接入服务器名,然后分为在线终端标识列表和离线终端标识列表。推送逻辑服务器会根据离线终端列表会分别给每个离线终端保存一条离线消息记录,当对应的接入服务器检测到离线终端登录时,则即时发送该离线消息记录。
进一步地,在所述步骤S400之后,还包括:
S500、判断各个接入服务器发送消息给各个终端是否正常,并反馈给推送逻辑服务器以实时统计推送结果。具体来说,接入服务器收到消息,遍历终端标识列表,根据每个终端标识找到对应的终端会话和连接,再发送消息到各终端,还要更新消息统计信息,也就是判断各个接入服务器发送消息给各个终端是否正常,并反馈给推送逻辑服务器,推送逻辑服务器实时统计推送结果。
在实际应用时,所述维度包括以下参数中的一个或多个:地区、机型、终端应用版本号、终端当前激活应用、位置经纬度信息。相应地,所述推送维度范围条件包括各个维度属性的范围。所述终端包括电视、电脑、手机等终端,一般为智能电视等智能终端。
以下以一应用实施例对本发明详细说明。
请参阅图2,图2为本发明提供的消息推送方法中并行推送架构示意图。如图所示,所述并行推送架构包括消息队列服务器、多个队列(图中的queue),多个推送逻辑服务器及多个接入服务器;所述多个接入服务器对应多个智能电视(图2中所示的TV)。运营人员在运营平台上推送消息并审批通过后,在它的推送条件已有维度上继续扩充其它维度进行细分,把该条推送消息变为多条消息,存放到消息队列服务器的多个队列(Queue)中。消息队列服务器(如activemq、rabbitmq)可以设置多个队列,以地区、机型、终端应用版本号、电视当前激活应用、位置信息经纬度等维度组合进行划分。推送逻辑服务器可以一台或多台,每台推送逻辑服务器订阅的队列名是不同的。每台推送逻辑服务器会从对应的列队中获取待推送消息列表。
推送逻辑服务器对每条消息会创建一个推送任务,解析推送范围条件,查询MongoDB(数据库)中的终端会话信息,该会话信息包含每个终端的设备编号、机型、区域信息及其登录的接入服务器名,然后分为在线终端列表和离线终端列表。
在线终端列表根据与其建立长连接的接入服务器名为分组,形成接入服务器名和终端标识列表。推送服务器根据不同分组把终端标识列表和消息体并行地转发给对应的接入服务器。接入服务器收到消息,遍历终端标识列表,根据每个终端标识找到对应的终端会话和连接,再发送消息到各终端,并更新消息统计信息。而离线终端列表会分别给每个离线终端保存一条离线消息记录,当终端登录时进行检测,检测到有则即时发送。
请参阅图3,图3为本发明提供的消息推送方法中并行推送交互流程图。图3为图2的交互流程图。所述推送逻辑服务器包括推送任务解析过滤器及推送任务处理器。本发明的并行推送交互流程具体为:运营人员在运营平台发布消息,创建推送任务。所述推送任务解析过滤器,根据推送任务的推送范围条件(如地区、机型、终端应用版本号、电视当前激活应用、位置信息经纬度等维度)过滤终端,在MongoDB中查询终端表;过滤出来的全部终端标识(user id)列表,分为在线终端列表和离线终端列表。对于离线终端列表,为每个离线终端保存一条离线消息。对于在线终端列表,再根据不同的接入服务器进行分组,把推送消息体、接入服务器名称和终端标识列表一起保存到MongoDB的推送消息表,产生一条消息记录,返回它的记录标识(objectid),同时发送给所述推送任务处理器。
所述推送任务处理器,采用开源的Storm实现,支持横向扩展,处理消息体加密解密等功能。它在集群环境下发送含有推送消息记录标识(objectid)的协议包给对应的接入服务器。它产生的日志发送到kafka队列;监控程序(Monitor)实时监控日志,有异常发送邮件告警;推送任务统计服务(PushReport)实时统计推送结果。接入服务器在集群环境下接收到含有推送消息记录标识(objectid)的协议包,然后查询MongoDB的推送消息表,取出终端标识列表和消息体,遍历终端标识列表,根据每个终端标识userid找到对应的会话和Socket连接,发送消息到该终端,并更新消息统计信息。
本发明是以地区、机型、终端应用版本号、终端当前激活应用、位置信息经纬度等维度属性对终端应用进行细化分组,以这些维度的组合把一个大群体的终端(譬如电视)划分为一个个小群体,为并发推送提供基础信息。结合消息队列服务器支持多个队列,让终端应用的多维度属性的不同组合和这些多队列进行一一对应。运营后台在发布一条推送消息时,在它的推送条件已有维度上继续扩充其它维度进行细分,把该条推送消息变为多条消息,存放到消息队列服务器的多个队列中,由这些队列对应的不同推送逻辑服务器并行地处理;从而当百万级电视终端在线时,实现并行推送消息,极大地缩短消息到达时间;缩短了消息到达时间,提高了消息曝光率和点击率,增强了广告投放效果;实现区域推送、应用推送、周边推送,具有非常大的商业价值。
基于上述消息推送方法,本发明还提供了一种消息推送系统,如图4所示,所述系统包括:
推送设置模块10,用于将多个终端按照不同维度组合进行划分得到多个终端群组,在消息队列服务器设置多个队列,所述多个队列与多个终端群组一一对应关联;将所述多个队列与至少一推送逻辑服务器对应关联;具体如步骤S100所述;
消息细分模块20,用于获取待推送消息,根据不同维度对所述待推送消息进行细分,将所述待推送消息变为对应多条消息,并存放到所述消息队列服务器的多个队列中;具体如步骤S200所述;
消息解析模块30,用于通过推送逻辑服务器根据其关联的队列获取对应的消息,解析所述消息对应的推送维度范围条件,根据所述推送维度范围条件查询所有终端,过滤出符合所述推送维度范围条件的终端标识,根据不同的接入服务器对所述终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器;具体如步骤S300所述;
消息推送模块40,用于通过各个接入服务器遍历对应的终端标识,根据各个终端标识找到对应的终端会话和连接,将所述消息发送给对应的各个终端;具体如步骤S400所述。
进一步地,所述消息解析模块30包括:
消息解析单元,用于通过推送逻辑服务器根据其关联的队列获取对应的消息,解析所述消息对应的推送维度范围条件,根据所述推送维度范围条件查询所有终端,过滤出符合所述推送维度范围条件的终端标识;
在线判断单元,用于根据所述终端标识判断各个终端是否在线,得到对应的在线终端标识列表和离线终端标识列表;
消息转发单元,用于根据不同的接入服务器对所述在线终端标识列表中的各个终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器。
进一步地,所述在线判断单元包括:
离线推送单元,用于通过推送逻辑服务器根据离线终端标识列表分别给每个离线终端保存对应的离线消息记录,当接入服务器检测到离线终端登录时,发送对应的离线消息记录。
进一步地,所述维度包括以下参数中的一个或多个:地区、机型、终端应用版本号、终端当前激活应用、位置经纬度信息。
进一步地,所述的消息推送系统,还包括:
推送统计模块,用于判断各个接入服务器发送消息给各个终端是否正常,并反馈给推送逻辑服务器以实时统计推送结果。
综上所述,本发明提供的一种消息推送方法及系统,通过获取待推送消息,根据不同维度对所述待推送消息进行细分,将所述待推送消息变为对应多条消息,并存放到所述消息队列服务器的多个队列中;推送逻辑服务器根据其关联的队列获取对应的消息,解析所述消息对应的推送维度范围条件,根据所述推送维度范围条件查询所有终端,过滤出符合所述推送维度范围条件的终端标识,根据不同的接入服务器对所述终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器;各个接入服务器遍历对应的终端标识,根据各个终端标识找到对应的终端会话和连接,将所述消息发送给对应的各个终端;实现了并行推送消息,极大地缩短了消息到达时间,特别适用于百万级电视终端在线时的消息推送;缩短了消息到达时间,提高了消息曝光率和点击率,增强了广告投放效果;实现区域推送、应用推送、周边推送,具有非常大的商业价值。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (8)
1.一种消息推送方法,其特征在于,包括:
A、将多个终端按照不同维度组合进行划分得到多个终端群组,在消息队列服务器设置多个队列,所述多个队列与多个终端群组一一对应关联;将所述多个队列与至少一推送逻辑服务器对应关联;
B、获取待推送消息,根据不同维度对所述待推送消息进行细分,将所述待推送消息变为对应多条消息,并存放到所述消息队列服务器的多个队列中;
C、推送逻辑服务器根据其关联的队列获取对应的消息,解析所述消息对应的推送维度范围条件,根据所述推送维度范围条件查询所有终端,过滤出符合所述推送维度范围条件的终端标识,根据不同的接入服务器对所述终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器;
D、各个接入服务器遍历对应的终端标识,根据各个终端标识找到对应的终端会话和连接,将所述消息发送给对应的各个终端;
所述步骤C具体包括:
C1、推送逻辑服务器根据其关联的队列获取对应的消息,解析所述消息对应的推送维度范围条件,根据所述推送维度范围条件查询所有终端,过滤出符合所述推送维度范围条件的终端标识;
C2、根据所述终端标识判断各个终端是否在线,得到对应的在线终端标识列表和离线终端标识列表;
C3、根据不同的接入服务器对所述在线终端标识列表中的各个终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器。
2.根据权利要求1所述的消息推送方法,其特征在于,所述步骤C2还包括:
C21、推送逻辑服务器根据离线终端标识列表分别给每个离线终端保存对应的离线消息记录,当接入服务器检测到离线终端登录时,发送对应的离线消息记录。
3.根据权利要求1所述的消息推送方法,其特征在于,所述维度包括以下参数中的一个或多个:地区、机型、终端应用版本号、终端当前激活应用、位置经纬度信息。
4.根据权利要求1所述的消息推送方法,其特征在于,在所述步骤D之后,还包括:
E、判断各个接入服务器发送消息给各个终端是否正常,并反馈给推送逻辑服务器以实时统计推送结果。
5.一种消息推送系统,其特征在于,包括:
推送设置模块,用于将多个终端按照不同维度组合进行划分得到多个终端群组,在消息队列服务器设置多个队列,所述多个队列与多个终端群组一一对应关联;将所述多个队列与至少一推送逻辑服务器对应关联;
消息细分模块,用于获取待推送消息,根据不同维度对所述待推送消息进行细分,将所述待推送消息变为对应多条消息,并存放到所述消息队列服务器的多个队列中;
消息解析模块,用于通过推送逻辑服务器根据其关联的队列获取对应的消息,解析所述消息对应的推送维度范围条件,根据所述推送维度范围条件查询所有终端,过滤出符合所述推送维度范围条件的终端标识,根据不同的接入服务器对所述终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器;
消息推送模块,用于通过各个接入服务器遍历对应的终端标识,根据各个终端标识找到对应的终端会话和连接,将所述消息发送给对应的各个终端;
所述消息解析模块包括:
消息解析单元,用于通过推送逻辑服务器根据其关联的队列获取对应的消息,解析所述消息对应的推送维度范围条件,根据所述推送维度范围条件查询所有终端,过滤出符合所述推送维度范围条件的终端标识;
在线判断单元,用于根据所述终端标识判断各个终端是否在线,得到对应的在线终端标识列表和离线终端标识列表;
消息转发单元,用于根据不同的接入服务器对所述在线终端标识列表中的各个终端标识进行分组,根据不同分组将所述消息及不同接入服务器对应的终端标识并行地转发给对应的接入服务器。
6.根据权利要求5所述的消息推送系统,其特征在于,所述在线判断单元包括:
离线推送单元,用于通过推送逻辑服务器根据离线终端标识列表分别给每个离线终端保存对应的离线消息记录,当接入服务器检测到离线终端登录时,发送对应的离线消息记录。
7.根据权利要求5所述的消息推送系统,其特征在于,所述维度包括以下参数中的一个或多个:地区、机型、终端应用版本号、终端当前激活应用、位置经纬度信息。
8.根据权利要求5所述的消息推送系统,其特征在于,还包括:
推送统计模块,用于判断各个接入服务器发送消息给各个终端是否正常,并反馈给推送逻辑服务器以实时统计推送结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510982884.XA CN105472400B (zh) | 2015-12-24 | 2015-12-24 | 一种消息推送方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510982884.XA CN105472400B (zh) | 2015-12-24 | 2015-12-24 | 一种消息推送方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105472400A CN105472400A (zh) | 2016-04-06 |
CN105472400B true CN105472400B (zh) | 2019-06-11 |
Family
ID=55609614
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510982884.XA Active CN105472400B (zh) | 2015-12-24 | 2015-12-24 | 一种消息推送方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105472400B (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106101178A (zh) * | 2016-05-30 | 2016-11-09 | 海尔优家智能科技(北京)有限公司 | 一种订阅消息分发、接收方法、装置及相关系统 |
CN107547601B (zh) * | 2016-06-29 | 2020-12-11 | 上海连尚网络科技有限公司 | 用于消息发送的方法及路由设备、服务器、系统 |
CN106230930A (zh) * | 2016-07-28 | 2016-12-14 | 乐视控股(北京)有限公司 | 信息推送方法及装置 |
CN106254435A (zh) * | 2016-07-28 | 2016-12-21 | 努比亚技术有限公司 | 消息推送系统及方法 |
CN106603351B (zh) * | 2016-12-19 | 2020-12-22 | 武汉Tcl集团工业研究院有限公司 | 一种基于用户行为的电视广告推送方法及推送系统 |
CN106777228A (zh) * | 2016-12-26 | 2017-05-31 | 北京金山安全软件有限公司 | 一种消息推送方法、装置及电子设备 |
CN107689988B (zh) * | 2017-08-18 | 2021-02-26 | 广州市百果园信息技术有限公司 | 一种消息推送的方法、装置、电子设备及终端设备 |
CN107786559B (zh) * | 2017-10-30 | 2020-04-24 | 江西博瑞彤芸科技有限公司 | 终端注册方法及系统 |
CN108063724A (zh) * | 2018-01-12 | 2018-05-22 | 吉浦斯信息咨询(深圳)有限公司 | 基于安卓平台的消息推送方法及其系统 |
CN108449410B (zh) * | 2018-03-19 | 2022-03-22 | 深信服科技股份有限公司 | 一种云平台中消息管理方法、系统及相关装置 |
CN110611691B (zh) * | 2018-06-15 | 2022-11-15 | 中兴通讯股份有限公司 | 一种消息推送方法、系统及存储介质 |
CN111310016B (zh) * | 2018-12-11 | 2023-08-04 | 百度在线网络技术(北京)有限公司 | 标签挖掘方法、装置、服务器和存储介质 |
CN109743378B (zh) * | 2018-12-27 | 2021-08-13 | 北京爱奇艺科技有限公司 | 信息推送系统、信息推送方法及电子设备 |
CN109714249B (zh) * | 2018-12-28 | 2021-09-07 | 武汉斗鱼网络科技有限公司 | 一种小程序消息的推送方法及相关装置 |
CN110336752B (zh) * | 2019-06-14 | 2022-06-07 | 福建天泉教育科技有限公司 | 一种提高局部广播推送效率的方法及系统 |
CN111464599B (zh) * | 2020-03-20 | 2021-05-07 | 腾讯科技(深圳)有限公司 | 消息推送方法、系统、装置、计算机可读存储介质及设备 |
CN111541555A (zh) * | 2020-03-24 | 2020-08-14 | 中国平安人寿保险股份有限公司 | 群聊优化方法及相关产品 |
CN112202914B (zh) * | 2020-10-13 | 2023-02-24 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种消息推送方法及装置 |
CN112436997B (zh) * | 2020-11-10 | 2023-03-03 | 杭州米络星科技(集团)有限公司 | 聊天室的消息分发方法、消息分发系统及电子设备 |
CN113992460B (zh) * | 2021-10-22 | 2024-08-13 | 北京达佳互联信息技术有限公司 | 消息发送方法、装置、电子设备、存储介质 |
CN115277836B (zh) * | 2022-08-03 | 2023-05-30 | 四川长虹新网科技有限责任公司 | 用于地磁停车系统的分布式数据推送平台及方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101026802B (zh) * | 2007-03-16 | 2012-10-17 | 华为技术有限公司 | 一种信息推送方法与装置 |
CN103138981B (zh) * | 2011-11-30 | 2017-03-29 | 中国移动通信集团公司 | 一种社交网络分析方法和装置 |
CN102802045A (zh) * | 2012-07-02 | 2012-11-28 | 卢林发 | 一种高清视频广告的投放方法 |
CN104572688A (zh) * | 2013-10-17 | 2015-04-29 | 腾讯科技(深圳)有限公司 | 信息推送方法及装置 |
CN103729778A (zh) * | 2013-12-12 | 2014-04-16 | 广州市网威信息技术有限公司 | 全渠道广告精准投放系统及其方法 |
CN104468819B (zh) * | 2014-12-24 | 2017-10-31 | 福建江夏学院 | 一种物联网消息推送系统及其方法 |
CN104660718B (zh) * | 2015-03-18 | 2018-07-06 | 腾讯科技(深圳)有限公司 | 一种消息推送方法、装置及推送服务器 |
-
2015
- 2015-12-24 CN CN201510982884.XA patent/CN105472400B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN105472400A (zh) | 2016-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105472400B (zh) | 一种消息推送方法及系统 | |
US9172593B2 (en) | System and method for identifying problems on a network | |
CN107943841A (zh) | 流式数据处理方法、系统和计算机可读存储介质 | |
US9559992B2 (en) | System and method for updating information in an instant messaging application | |
CN104169901A (zh) | 用于多播通信的内容传送机制 | |
KR20140072044A (ko) | 다중-소스 푸시 통지를 다수의 타겟들로의 분배 기법 | |
CA2945801A1 (en) | Systems and methods for generating network intelligence through real-time analytics | |
US20200280501A1 (en) | Automation of customer support sorting process | |
CN102571920A (zh) | 在线客服的实现方法及在线客服系统 | |
US20200050504A1 (en) | Message queue performance monitoring | |
CN103905240A (zh) | 网络业务故障的主动提醒处理方法与系统 | |
CN108228625B (zh) | 一种推送消息处理方法及装置 | |
EP3272079B1 (en) | Method and system for transferring messages between messaging systems | |
WO2023159879A1 (zh) | 消息的处理方法及系统、存储介质、电子装置 | |
US9054969B2 (en) | System and method for situation-aware IP-based communication interception and intelligence extraction | |
US20130198381A1 (en) | Optimizing Data Extraction from Distributed Systems into a Unified Event Aggregator Using Time-Outs | |
CN106789395B (zh) | 一种基于Web的分布式PDM系统数据传输监控方法 | |
CN106301989A (zh) | Iptv业务检测方法及装置 | |
CN111416833B (zh) | 一种判断会话结束的方法、装置、电子设备和可读介质 | |
CN101753969A (zh) | 网络电视中发布实时资讯的方法及系统 | |
CN104483880B (zh) | 一种数据采集方法及数据采集服务器 | |
CN105763382A (zh) | 一种基于端到端业务监控的实现方法和装置 | |
CN107819624A (zh) | 一种内容分发网络节点分布信息的确定方法及装置 | |
CN102064972A (zh) | 一种监视广告效果的方法及系统 | |
CN107911642A (zh) | 一种有线电视网络管理系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |