CN107172182B - 一种消息推送方法、消息推送服务器及终端 - Google Patents

一种消息推送方法、消息推送服务器及终端 Download PDF

Info

Publication number
CN107172182B
CN107172182B CN201710421955.8A CN201710421955A CN107172182B CN 107172182 B CN107172182 B CN 107172182B CN 201710421955 A CN201710421955 A CN 201710421955A CN 107172182 B CN107172182 B CN 107172182B
Authority
CN
China
Prior art keywords
message
simplified
sent
message body
target terminal
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
Application number
CN201710421955.8A
Other languages
English (en)
Other versions
CN107172182A (zh
Inventor
陈杜英
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Microphone Holdings Co Ltd
Original Assignee
Dongguan Goldex Communication Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Dongguan Goldex Communication Technology Co ltd filed Critical Dongguan Goldex Communication Technology Co ltd
Priority to CN201710421955.8A priority Critical patent/CN107172182B/zh
Publication of CN107172182A publication Critical patent/CN107172182A/zh
Application granted granted Critical
Publication of CN107172182B publication Critical patent/CN107172182B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明实施例提供一种消息推送方法、消息推送服务器及终端,其中方法包括:接收业务方的资源服务器发送的待推送消息的精简消息体,所述精简消息体包括所述待推送消息的网络存储地址及标签属性;根据所述精简消息体的标签属性,确定接收所述精简消息体的目标终端;将选中的目标终端依次存入与所述精简消息体相关的待发送消息队列中;按照预设速率向所述待发送消息队列中的目标终端发送所述精简消息体,使所述目标终端根据所述待推送消息的网络存储地址访问所述资源服务器,从所述资源服务器获取所述待推送消息。本发明实施例可以通过控制消息推送服务器的消息推送速率,间接控制客户端访问业务方资源服务器的并发量。

Description

一种消息推送方法、消息推送服务器及终端
技术领域
本发明实施例属于通信技术领域,尤其涉及一种消息推送方法、消息推送服务器及终端。
背景技术
消息推送,将信息及时送达至相关订阅的用户,并与用户持续友好的互动,可以大幅提升用户活跃度和留存率。
为了节省流量,目前业务方的消息推送的机制是先推送精简的消息体至相关的客户端,由客户端接收到精简的消息体后,再访问业务方的资源服务器获得完整的消息资源,这样当客户端基数较大时,消息到达后,客户端同时访问业务方的资源服务器,会出现短时间内的高并发请求,给业务方的资源服务器带来压力,降低了业务方资源服务器的性能。
发明内容
本发明实施例提供一种消息推送方法、消息推送服务器及终端,可以通过控制消息推送服务器的消息推送速率,间接控制客户端访问业务方资源服务器的并发量。
本发明实施例一方面提供一种消息推送方法,包括:
接收业务方的资源服务器发送的待推送消息的精简消息体,所述精简消息体包括所述待推送消息的网络存储地址及标签属性;
根据所述精简消息体的标签属性,确定接收所述精简消息体的目标终端;
将选中的目标终端依次存入与所述精简消息体相关的待发送消息队列中;
按照预设速率向所述待发送消息队列中的目标终端发送所述精简消息体,使所述目标终端根据所述待推送消息的网络存储地址访问所述资源服务器,从所述资源服务器获取所述待推送消息。
本发明实施例另一方面还提供一种消息推送方法,包括:
接收消息推送服务器发送的待推送消息的精简消息体,所述精简消息体包括所述待推送消息的网络存储地址及标签属性;
等待随机时间后,根据所述精简消息体中的所述待推送消息的网络存储地址请求业务方的所资源服务器返回所述待推送消息;
接收所述资源服务器返回的所述待推送消息。
本发明实施例另一方面还提供一种消息推送服务器,包括:
精简消息体接收单元,用于接收业务方的资源服务器发送的待推送消息的精简消息体,所述精简消息体包括所述待推送消息的网络存储地址及标签属性;
目标终端确定单元,用于根据所述精简消息体的标签属性,确定接收所述精简消息体的目标终端;
待发送消息队列生成单元,用于将选中的目标终端依次存入与所述精简消息体相关的待发送消息队列中;
精简消息体发送单元,用于按照预设速率向所述待发送消息队列中的目标终端发送所述精简消息体,使所述目标终端根据所述待推送消息的网络存储地址访问所述资源服务器,从所述资源服务器获取所述待推送消息。
本发明实施例另一方面还提供一种终端,包括:
第一接收单元,用于接收消息推送服务器发送的待推送消息的精简消息体,所述精简消息体包括所述待推送消息的网络存储地址及标签属性;
访问请求单元,用于等待随机时间后,根据所述精简消息体中的所述待推送消息的网络存储地址请求业务方的所资源服务器返回所述待推送消息;
第二接收单元,用于接收所述资源服务器返回的所述待推送消息。
本发明实施例通过接收业务方的资源服务器发送的待推送消息的精简消息体,所述精简消息体包括所述待推送消息的网络存储地址及标签属性;根据所述精简消息体的标签属性,确定接收所述精简消息体的目标终端;将选中的目标终端依次存入与所述精简消息体相关的待发送消息队列中;按照预设速率向所述待发送消息队列中的目标终端发送所述精简消息体,使所述目标终端根据所述待推送消息的网络存储地址访问所述资源服务器,从所述资源服务器获取所述待推送消息,从而可以通过控制消息推送服务器的消息推送速率,间接控制客户端访问业务方资源服务器的并发量。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的一种消息推送方法的示意流程图;
图2是本发明实施例一提供的一种消息推送方法中步骤S104的示意流程图;
图3是本发明实施例二提供的一种消息推送方法的示意流程图;
图4是本发明实施例三提供的一种消息推送服务器的示意性框图;
图5是本发明实施例三提供的一种消息推送服务器中精简消息体发送单元的示意性框图;
图6是本发明实施例四提供的一种终端的示意性框图;
图7是本发明实施例五提供的一种消息推送服务器的示意性框图;
图8是本发明实施例六提供的一种终端的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
具体实现中,本发明实施例中描述的终端包括但不限于诸如具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的移动电话、膝上型计算机或平板计算机之类的其它便携式设备。还应当理解的是,在某些实施例中,所述设备并非便携式通信设备,而是具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的台式计算机。
在接下来的讨论中,描述了包括显示器和触摸敏感表面的终端。然而,应当理解的是,终端可以包括诸如物理键盘、鼠标和/或控制杆的一个或多个其它物理用户接口设备。
终端支持各种应用程序,例如以下中的一个或多个:绘图应用程序、演示应用程序、文字处理应用程序、网站创建应用程序、盘刻录应用程序、电子表格应用程序、游戏应用程序、电话应用程序、视频会议应用程序、电子邮件应用程序、即时消息收发应用程序、锻炼支持应用程序、照片管理应用程序、数码相机应用程序、数字摄影机应用程序、web浏览应用程序、数字音乐播放器应用程序和/或数字视频播放器应用程序。
可以在终端上执行的各种应用程序可以使用诸如触摸敏感表面的至少一个公共物理用户接口设备。可以在应用程序之间和/或相应应用程序内调整和/或改变触摸敏感表面的一个或多个功能以及终端上显示的相应信息。这样,终端的公共物理架构(例如,触摸敏感表面)可以支持具有对用户而言直观且透明的用户界面的各种应用程序。
参见图1,是本发明实施例一提供一种消息推送方法的示意流程图,该方法的执行主体为本发明实施例中所述的消息推送服务器,如图1所示,该方法可包括以下步骤:
步骤S101,接收业务方的资源服务器发送的待推送消息的精简消息体。
在本实施例中,所述消息推送服务器可以同时接收多个业务方资源服务器发送的待推送消息的精简消息体,每个精简消息体均包含有其对应的待推送消息的网络存储地址及标签属性,其中,标签属性包括但不限于接收所述待推送消息目标终端用户的性别、年龄、所在城市以及从事行业等。
优选的,在本实施例中,所述待推送消息的精简消息体还可以包括所述待推送消息的简要内容介绍,例如:待推送消息的内容摘要或者内容标题等,这样方便目标终端用户在目标终端接收到所述精简消息体后,根据目标终端显示的精简消息体中包含的所述待推送消息的简要内容介绍确定是否需要从业务方的资源服务器获取所述待推送消息。
步骤S102,根据所述精简消息体的标签属性,确定接收所述精简消息体的目标终端。
在本实施例中,目标终端需要消息服务器提供消息推送服务器时,会预先在消息推送服务器上注册一个接收所述消息推送服务器推送的消息的账户,并填写一些账户基本信息,账户基本信息包括但不限于用户名、用户性别、用户年龄、用户所在城市以及用户从事行业等用户标签属性信息。
在本实施例中,所述消息推送服务器在获取到所述待推送消息的精简消息体的标签属性后,可以根据所述精简消息体的标签属性在登录了所述消息推送服务器的所有客户端中查询具有与所述精简消息体的标签属性相同的用户标签属性的终端,并将查询到的所有终端都确定为接收所述精简消息体的目标终端。
步骤S103,将选中的目标终端依次存入与所述精简消息体相关的待发送消息队列中。
在本实施例中,每个精简消息体均对应有一个待发送消息队列,为了保证消息推送服务器有序且无遗漏的将不同业务方发送的待推送消息的精简消息体推送至相应的目标终端,消息推送服务器在获取到多个精简消息体所对应的待发送消息队列后,会随机为各个待发送消息队列分配消息推送的优先级,后续根据各个待发送消息队列的优选级顺序依次向各个待发送消息队列中的目标终端推送精简消息体。
步骤S104,按照预设速率向所述待发送消息队列中的目标终端发送所述精简消息体,使所述目标终端根据所述待推送消息的网络存储地址访问所述资源服务器,从所述资源服务器获取所述待推送消息。
图2示出了本实施例中步骤S104的具体实现过程,参见图2所示,在本实施例中,步骤S104包括:
步骤S201,获取与所述精简消息体对应的消息发送阈值。
在本实施例中,所述消息发送阈值为在预设周期时间内允许向所述待发送消息队列中的目标终端发送所述精简消息体的最大次数。其中,所述精简消息体到达一个目标终端为一次发送。
优选的,在本实施例中,步骤S201具体包括:
统计所述精简消息体的待发送消息队列中目标客户端的数目;
根据所述目标客户端的数目为所述精简消息体设置一个消息发送阈值。
在本实施例中,具有不同标签属性的待推送消息的精简消息体对应的消息发送阈值可以是不同的,消息推送服务器可根据各个待推送消息所对应的目标终端的数量来设置其所对应的消息发送阈值,例如:若统计到所述精简消息体的待发送消息队列中目标客户端数目为100个,为了保证各个目标终端接收到精简消息体的时间间隔不会过长,那么可设置每秒允许向所述待发送消息队列中的目标终端发送所述精简消息体的最大次数为10次;若统计到所述精简消息体的待发送消息队列中目标客户端数目为1000个,为了保证各个目标终端接收到精简消息体的时间间隔不会太长,那么可设置每秒允许向所述待发送消息队列中的目标终端发送所述精简消息体的最大次数为100次。
优选的,在本实施中,还可以由业务方根据自身资源服务器的性能设置其发送的待推送消息的精简消息体所对应的消息发送阈值,并将所述消息发送阈值携带在所述精简消息体中一起发送至消息推送服务器,使得消息推送服务器根据业务方设置的消息发送阈值来控制向目标终端推送精简消息体的速率。
步骤S202,在开始向所述待发送消息队列中的目标终端发送所述精简消息体时,启动计时器计时,同时启动消息计数器统计所述精简消息体的下发次数。
在本实施例中,所述消息推送服务器按照所述待发送消息队列中目标终端的排列顺序从前往后依次向所述队列中的目标终端发送所述精简消息体,每向一个目标终端下发所述精简消息体,消息计时器计数累计一次,当消息推送服务器接收到所述目标终端根据接收到的精简消息体返回的接收成功的应答消息,则将所述目标终端从所述待发送消息队列中删除,或者将待发送消息队列中目标终端的状态更新为“已接收”;反之,若消息推送服务器在向队列中的某个目标终端发送所述精简消息体后,在预设时间内未接收到该目标终端返回的成功接收的应答消息,则在该目标终端下一次登录消息推送服务器时,继续将该目标终端添加至所述精简消息体的待发送消息队列中,等待发送。在本实施例中,所述计时器与所述消息计时器同时启动,以统计在预设周期时间内,消息计时器中统计的消息体下发次数。
步骤S203,监测所述精简消息体的下发次数是否达到所述消息发送阈值;若所述精简消息体的下发次数达到所述消息发送阈值,则进入步骤S204。
步骤S204,判断所述计时器的计时时间是否达到预设周期时间,若所述计时时间未达到预设周期时间,则进入步骤S205;若所述计时时间达到预设周期时间,则进入步骤S206。
步骤S205,暂停向所述待发送消息队列中的目标终端下发所述精简消息体。
在本实施例中,所述消息推送服务器主要是监测所述精简消息体的下发次数在预设周期时间内是否达到所述消息发送阈值,若在预设周期时间内达到所述消息发送阈值,则说明在该预设周期时间内接收到所述精简消息体的目标终端数量已达到上限,此时消息推送服务器进入休眠状态,暂停精简消息体的发送;反之,若在预设周期时间内,所述精简消息体的下发次数未达到预设次数,则说明在该预设周期时间内接收到所述精简消息体的目标终端未达到上限,此时可继续向所述待发送消息队列中的目标终端发送所述精简消息体。
步骤S206,控制所述计时器和所述消息计数器清零,并重新开始向所述待发送消息队列中的目标终端发送所述精简消息体,重复执行上述流程,直至所述待发送消息队列中所有的目标终端都被轮询到。
在本实施例中,若所述计时器的计时时间达到预设周期时间,则重新开始向所述待发送消息队列中的目标终端发送所述精简消息体,并返回到上述步骤S202触发所述计时器和所述消息计数器重新从零开始计数,循环执行上数流程,直至所述待发送消息队列中所有的目标终端都接收到所述精简消息体为止。需要说明的是,当消息推送服务器轮询到还有其他待发送消息队列时,会在前一个待发送消息队列处理完成后,再通过上述方式按照其他待发送消息队列的优先级顺序依次处理剩余待处理的待发送消息队列,直至所有的待发送消息队列中的目标终端都接收到所述精简消息体为止。
优选的,在本实施例中,所述消息推送方法还包括:
在所述精简消息体发送结束前,修改所述精简消息体所对应的消息发送阈值。
在本实施例中,所述消息推送服务器端的管理员或者所述业务方的管理员,还可以在所述精简消息体发送结束前,根据实际需要实时修改所述消息发送阈值,使得所述消息推送服务器及时根据修改后的消息发送阈值发送所述精简消息体。例如,参见下表所示,若在一较佳实现示例中,消息q1的待发送消息队列如下:
消息q1的待发送消息队列
C1
C2
C3
C4
C5
C6
C7
C8
C9
C10
......
C100
C101
......
当消息推送服务器轮询到某个消息的待发送消息队列时,会新起一个线程为其队列中的目标终端发送消息,以上述轮询到消息q1的待发送消息队列为例,消息推送服务器会首先发送消息q1的精简消息体到目标终端C1,并在接收到C1返回的接收成功的应答消息后,将C1从队列中清除或者将C1标记为已发送,再发送消息到目标终端C2,并在接收到C21返回的接收成功的应答消息后,将C2从队列中清除或者将C2标记为已发送,依次类推......若发送到目标终端C6时,消息计数器计数发送次数为6,计时器计时为100ms,而预设周期时间为1s,预设周期时间内的消息发送阈值为6,那么此时线程停止向队列中的终端发送消息,睡眠等待900ms后,开始继续向队列中的目标终端C7发送消息,计时器和消息计数器同时重新从零开始计数,在此过程中,若用户将该队列对应的消息发送阈值修改为1000,并且线程会按照修改后的消息发送阈值来控制消息的下发速率;在发送过程中,若消息q1失效,则退出线程;另外,若对队列中目标终端C10进行发送消息失败了,即在将消息发送至目标终端C10后,无法收到成功应答,则将C10标记为发送失败,在下一次C10登录消息推送服务器时,继续将C10添加到消息q1的待发送消息队列中。
以上可以看出,本实施例提供的一种消息推送方法由于通过接收业务方的资源服务器发送的待推送消息的精简消息体,所述精简消息体包括所述待推送消息的网络存储地址及标签属性;根据所述精简消息体的标签属性,确定接收所述精简消息体的目标终端;将选中的目标终端依次存入与所述精简消息体相关的待发送消息队列中;按照预设速率向所述待发送消息队列中的目标终端发送所述精简消息体,使所述目标终端根据所述待推送消息的网络存储地址访问所述资源服务器,从所述资源服务器获取所述待推送消息,从而可以通过控制消息推送服务器的消息推送速率,间接控制客户端访问业务方资源服务器的并发量。
图3示出了本发明实施例二提供的一种消息推送方法的示意流程图,该方法的执行主体为本发明实施例中所述的终端。参见图3所示,本实施例提供的一种消息推送方法包括以下步骤:
步骤S301,接收消息推送服务器发送的待推送消息的精简消息体,所述精简消息体包括所述待推送消息的网络存储地址及标签属性。
优选的,在本实施例中,所述标签属性包括但不限于接收所述待推送消息目标终端用户的性别、年龄、所在城市以及从事行业等。接收到所述精简消息体的目标终端具有与所述精简消息体相同的标签属性。
优选的,在本实施例中,所述待推送消息的精简消息体还可以包括所述待推送消息的简要内容介绍,例如:待推送消息的内容摘要或者内容标题等,这样方便目标终端用户在目标终端接收到所述精简消息体后,根据目标终端显示的精简消息体中包含的所述待推送消息的简要内容介绍确定是否需要从业务方的资源服务器获取所述待推送消息。
在本实施例中,消息推送服务器在按照预设速率将所述待推送消息的精简消息体推送至待发送消息队列中的目标终端后,待发送消息队列中的目标终端可以分批接收到所述待推送消息的精简消息体,然后分批根据所述精简消息体向业务方的资源服务器发送访问请求,这样即可降低同时访问业务方的资源服务器的终端数量,降低业务方的资源服务器接收到的访问请求的并发量,提升业务方的资源服务器的性能。
步骤S302,等待随机时间后,根据所述精简消息体中的所述待推送消息的网络存储地址请求业务方的所资源服务器返回所述待推送消息。
在本实施例中,由于待发送消息队列中的目标终端是分批接收到消息推送服务器发送的精简消息体的,因此我们可以分别为该批同时接收到精简消息体的目标终端分配一个随机等待时间,使得目标终端在接收到精简消息体后,等待随机时间后再向业务方的资源服务器发送访问请求,这样可以进一步降低访问业务方资源服务器的并发量。
步骤S303,接收所述资源服务器返回的所述待推送消息。
在本实施例中,由于消息推送服务器控制了向目标终端推送待推送消息的精简消息体的速率,进而降低了目标终端访问业务方的资源服务器的并发量,提高了业务方资源服务器的性能,因此,业务方资源服务器可以快速的处理接收到的目标终端的访问请求,及时将目标终端请求的待推送消息的返回至所述目标终端,不会出现线程阻塞,使得目标终端用户等待时间较长的情况。
以上可以看出,本实施例提供的一种消息推送方法同样可以控制目标终端访问业务方资源服务器的并发量,提升业务方资源服务器的性能。
图4是本发明实施例三提供的一种消息推送服务器的示意性框图。为了便于说明仅仅示出了与本实施例相关的部分。
参见图4所示,本实施例提供的一种消息推送服务器100,包括:
精简消息体接收单元11,用于接收业务方的资源服务器发送的待推送消息的精简消息体,所述精简消息体包括所述待推送消息的网络存储地址及标签属性;
目标终端确定单元12,用于根据所述精简消息体的标签属性,确定接收所述精简消息体的目标终端;
待发送消息队列生成单元13,用于将选中的目标终端依次存入与所述精简消息体相关的待发送消息队列中;
精简消息体发送单元14,用于按照预设速率向所述待发送消息队列中的目标终端发送所述精简消息体,使所述目标终端根据所述待推送消息的网络存储地址访问所述资源服务器,从所述资源服务器获取所述待推送消息。
图5示出了本实施例中精简消息体发送单元的示意性框图。参见图5所示,本实施例中,所述精简消息体发送单元14包括:
消息发送阈值获取单元141,用于获取与所述精简消息体对应的消息发送阈值,所述消息发送阈值为在预设周期时间内允许向所述待发送消息队列中的目标终端发送所述精简消息体的最大次数;
计时计数启动单元142,用于在开始向所述待发送消息队列中的目标终端发送所述精简消息体时,启动计时器计时,同时启动消息计数器统计所述精简消息体的下发次数;
下发次数监测单元143,用于监测所述精简消息体的下发次数是否达到所述消息发送阈值;
计时时间判断单元144,用于若所述精简消息体的下发次数达到所述消息发送阈值,则判断所述计时器的计时时间是否达到预设周期时间;
第一下发速率控制单元145,用于若所述计时时间未达到预设周期时间,则暂停向所述待发送消息队列中的目标终端下发所述精简消息体;
第二下发速率控制单元146,用于若所述计时时间达到预设周期时间,则控制所述计时器和所述消息计数器清零,并重新开始向所述待发送消息队列中的目标终端发送所述精简消息体,重复执行上述流程,直至所述待发送消息队列中所有的目标终端都被轮询到。
可选的,所述消息发送阈值获取单元141具体用于:
统计所述精简消息体的待发送消息队列中目标客户端的数目;
根据所述目标客户端的数目为所述精简消息体设置一个消息发送阈值。
可选的,参见图5所示,所述精简消息体发送单元14还包括:
消息发送阈值修改单元147,用于在所述精简消息体发送结束前,修改所述精简消息体所对应的消息发送阈值。
需要说明的是,本发明实施例提供的上述终端中的各个单元,由于与本发明图1所示方法实施例基于同一构思,其带来的技术效果与本发明图1所示方法实施例相同,具体内容可参见本发明图1所示方法实施例中的叙述,此处不再赘述。
因此,本实施例提供的一种消息推送服务器,同样可以通过控制消息推送服务器的消息推送速率,间接控制客户端访问业务方资源服务器的并发量。
图6是本发明实施例四提供的一种终端的示意性框图。为了便于说明,仅仅示出了与本实施例相关的部分。
参见图6所示,本实施例提供的一种终端200,包括:
第一接收单元21,用于接收消息推送服务器发送的待推送消息的精简消息体,所述精简消息体包括所述待推送消息的网络存储地址及标签属性;
访问请求单元22,用于等待随机时间后,根据所述精简消息体中的所述待推送消息的网络存储地址请求业务方的所资源服务器返回所述待推送消息;
第二接收单元23,用于接收所述资源服务器返回的所述待推送消息。
需要说明的是,本发明实施例提供的上述终端中的各个单元,由于与本发明图3所示方法实施例基于同一构思,其带来的技术效果与本发明图3所示方法实施例相同,具体内容可参见本发明图3所示方法实施例中的叙述,此处不再赘述。
因此,可以看出,本实施例提供的一种终端同样可以控制目标终端访问业务方资源服务器的并发量,提升业务方资源服务器的性能。
参见图7,是本发明实施例五提供的一种消息推送服务器的示意框图。如图7所示的本实施例中的消息推送服务器可以包括:一个或多个第一处理器701;一个或多个输入设备第一702,一个或多个第一输出设备703和第一存储器704。上述第一处理器701、第一输入设备702、第一输出设备703和第一存储器704通过第一总线705连接。第一存储器702用于存储指令,第一处理器701用于执行第一存储器702存储的指令。其中,所述第一处理器701用于:
接收业务方的资源服务器发送的待推送消息的精简消息体,所述精简消息体包括所述待推送消息的网络存储地址及标签属性;
根据所述精简消息体的标签属性,确定接收所述精简消息体的目标终端;
将选中的目标终端依次存入与所述精简消息体相关的待发送消息队列中;
按照预设速率向所述待发送消息队列中的目标终端发送所述精简消息体,使所述目标终端根据所述待推送消息的网络存储地址访问所述资源服务器,从所述资源服务器获取所述待推送消息。
可选的,所述第一处理器701还用于:
获取与所述精简消息体对应的消息发送阈值,所述消息发送阈值为在预设周期时间内允许向所述待发送消息队列中的目标终端发送所述精简消息体的最大次数;
在开始向所述待发送消息队列中的目标终端发送所述精简消息体时,启动计时器计时,同时启动消息计数器统计所述精简消息体的下发次数;
监测所述精简消息体的下发次数是否达到所述消息发送阈值;
若所述精简消息体的下发次数达到所述消息发送阈值,则判断所述计时器的计时时间是否达到预设周期时间;
若所述计时时间未达到预设周期时间,则暂停向所述待发送消息队列中的目标终端下发所述精简消息体;
若所述计时时间达到预设周期时间,则控制所述计时器和所述消息计数器清零,并重新开始向所述待发送消息队列中的目标终端发送所述精简消息体,重复执行上述流程,直至所述待发送消息队列中所有的目标终端都被轮询到。
可选的,所述第一处理器701还用于:
统计所述精简消息体的待发送消息队列中目标客户端的数目;
根据所述目标客户端的数目为所述精简消息体设置一个消息发送阈值。
可选的,所述第一处理器701还用于:
在所述精简消息体发送结束前,修改所述精简消息体所对应的消息发送阈值。
参见图8,是本发明实施例六提供的一种终端的示意框图。如图8所示的本实施例中的终端可以包括:一个或多个第二处理器801;一个或多个第二输入设备802,一个或多个第二输出设备803和第二存储器804。上述第二处理器801、第二输入设备802、第二输出设备803和第二存储器804通过第二总线805连接。第二存储器802用于存储指令,第二处理器801用于执行第二存储器802存储的指令。其中,所述第二处理器801用于:
接收消息推送服务器发送的待推送消息的精简消息体,所述精简消息体包括所述待推送消息的网络存储地址及标签属性;
等待随机时间后,根据所述精简消息体中的所述待推送消息的网络存储地址请求业务方的所资源服务器返回所述待推送消息;
接收所述资源服务器返回的所述待推送消息。
应当理解,在本发明实施例中,所称处理器可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
输入设备可以包括触控板、指纹采传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等,输出设备可以包括显示器(LCD等)、扬声器等。
该存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。
具体实现中,本发明实施例中所描述的处理器、输入设备、输出设备可执行本发明实施例提供的方法的第一实施例和第二实施例中所描述的实现方式,也可执行本发明实施例所描述的终端的实现方式,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述终端和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本发明实施例终端中的单元可以根据实际需要进行合并、划分和删减。
在本申请所提供的几个实施例中,应该理解到,所揭露的终端和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (8)

1.一种消息推送方法,其特征在于,包括:
接收业务方的资源服务器发送的待推送消息的精简消息体,所述精简消息体包括所述待推送消息的网络存储地址及标签属性;
根据所述精简消息体的标签属性,确定接收所述精简消息体的目标终端;
将选中的目标终端依次存入与所述精简消息体相关的待发送消息队列中;
获取与所述精简消息体对应的消息发送阈值,所述消息发送阈值为在预设周期时间内允许向所述待发送消息队列中的目标终端发送所述精简消息体的最大次数;
在开始向所述待发送消息队列中的目标终端发送所述精简消息体时,启动计时器计时,同时启动消息计数器统计所述精简消息体的下发次数;
监测所述精简消息体的下发次数是否达到所述消息发送阈值;
若所述精简消息体的下发次数达到所述消息发送阈值,则判断所述计时器的计时时间是否达到预设周期时间;
若所述计时时间未达到预设周期时间,则暂停向所述待发送消息队列中的目标终端下发所述精简消息体;
若所述计时时间达到预设周期时间,则控制所述计时器和所述消息计数器清零,并重新开始向所述待发送消息队列中的目标终端发送所述精简消息体,循环执行所述在开始向所述待发送消息队列中的目标终端发送所述精简消息体时,启动计时器计时,同时启动消息计数器统计所述精简消息体的下发次数的步骤以及后续步骤,直至所述待发送消息队列中所有的目标终端都被轮询到,并给同时接收到所述精简消息体的目标终端分配随机等待时间,使所述目标终端根据所述待推送消息的网络存储地址和所述随机等待时间访问所述资源服务器,从所述资源服务器获取所述待推送消息。
2.如权利要求1所述的消息推送方法,其特征在于,所述获取与所述精简消息体所对应的消息发送阈值包括:
统计所述精简消息体的待发送消息队列中目标客户端的数目;
根据所述目标客户端的数目为所述精简消息体设置一个消息发送阈值。
3.如权利要求2所述的消息推送方法,其特征在于,所述消息推送方法还包括:
在所述精简消息体发送结束前,修改所述精简消息体所对应的消息发送阈值。
4.一种消息推送方法,其特征在于,包括:
接收消息推送服务器发送的待推送消息的精简消息体,所述精简消息体包括所述待推送消息的网络存储地址及标签属性;其中,所述精简消息体是消息推送服务器通过如下步骤发送:根据所述精简消息体的标签属性,确定接收所述精简消息体的目标终端;将选中的目标终端依次存入与所述精简消息体相关的待发送消息队列中;获取与所述精简消息体对应的消息发送阈值,所述消息发送阈值为在预设周期时间内允许向所述待发送消息队列中的目标终端发送所述精简消息体的最大次数;在开始向所述待发送消息队列中的目标终端发送所述精简消息体时,启动计时器计时,同时启动消息计数器统计所述精简消息体的下发次数;监测所述精简消息体的下发次数是否达到所述消息发送阈值;若所述精简消息体的下发次数达到所述消息发送阈值,则判断所述计时器的计时时间是否达到预设周期时间;若所述计时时间未达到预设周期时间,则暂停向所述待发送消息队列中的目标终端下发所述精简消息体;若所述计时时间达到预设周期时间,则控制所述计时器和所述消息计数器清零,并重新开始向所述待发送消息队列中的目标终端发送所述精简消息体,循环执行所述在开始向所述待发送消息队列中的目标终端发送所述精简消息体时,启动计时器计时,同时启动消息计数器统计所述精简消息体的下发次数的步骤以及后续步骤,直至所述待发送消息队列中所有的目标终端都被轮询到,并给同时接收到所述精简消息体的目标终端分配随机等待时间,使所述目标终端根据所述待推送消息的网络存储地址和所述随机等待时间访问资源服务器,从所述资源服务器获取所述待推送消息;
等待随机时间后,根据所述精简消息体中的所述待推送消息的网络存储地址请求业务方的所资源服务器返回所述待推送消息;
接收所述资源服务器返回的所述待推送消息。
5.一种消息推送服务器,其特征在于,包括:
精简消息体接收单元,用于接收业务方的资源服务器发送的待推送消息的精简消息体,所述精简消息体包括所述待推送消息的网络存储地址及标签属性;
目标终端确定单元,用于根据所述精简消息体的标签属性,确定接收所述精简消息体的目标终端;
待发送消息队列生成单元,用于将选中的目标终端依次存入与所述精简消息体相关的待发送消息队列中;
精简消息体发送单元,用于获取与所述精简消息体对应的消息发送阈值,所述消息发送阈值为在预设周期时间内允许向所述待发送消息队列中的目标终端发送所述精简消息体的最大次数;
在开始向所述待发送消息队列中的目标终端发送所述精简消息体时,启动计时器计时,同时启动消息计数器统计所述精简消息体的下发次数;
监测所述精简消息体的下发次数是否达到所述消息发送阈值;
若所述精简消息体的下发次数达到所述消息发送阈值,则判断所述计时器的计时时间是否达到预设周期时间;
若所述计时时间未达到预设周期时间,则暂停向所述待发送消息队列中的目标终端下发所述精简消息体;
若所述计时时间达到预设周期时间,则控制所述计时器和所述消息计数器清零,并重新开始向所述待发送消息队列中的目标终端发送所述精简消息体,循环执行所述在开始向所述待发送消息队列中的目标终端发送所述精简消息体时,启动计时器计时,同时启动消息计数器统计所述精简消息体的下发次数的步骤以及后续步骤,直至所述待发送消息队列中所有的目标终端都被轮询到,并给同时接收到所述精简消息体的目标终端分配随机等待时间,使所述目标终端根据所述待推送消息的网络存储地址和所述随机等待时间访问所述资源服务器,从所述资源服务器获取所述待推送消息。
6.如权利要求5所述的消息推送服务器,其特征在于,所述消息发送阈值获取单元具体用于:
统计所述精简消息体的待发送消息队列中目标客户端的数目;
根据所述目标客户端的数目为所述精简消息体设置一个消息发送阈值。
7.如权利要求6所述的消息推送服务器,其特征在于,所述精简消息体发送单元还包括:
消息发送阈值修改单元,用于在所述精简消息体发送结束前,修改所述精简消息体所对应的消息发送阈值。
8.一种终端,其特征在于,包括:
第一接收单元,用于接收消息推送服务器发送的待推送消息的精简消息体,所述精简消息体包括所述待推送消息的网络存储地址及标签属性;其中,所述精简消息体是消息推送服务器通过如下步骤发送:根据所述精简消息体的标签属性,确定接收所述精简消息体的目标终端;将选中的目标终端依次存入与所述精简消息体相关的待发送消息队列中;获取与所述精简消息体对应的消息发送阈值,所述消息发送阈值为在预设周期时间内允许向所述待发送消息队列中的目标终端发送所述精简消息体的最大次数;在开始向所述待发送消息队列中的目标终端发送所述精简消息体时,启动计时器计时,同时启动消息计数器统计所述精简消息体的下发次数;监测所述精简消息体的下发次数是否达到所述消息发送阈值;若所述精简消息体的下发次数达到所述消息发送阈值,则判断所述计时器的计时时间是否达到预设周期时间;若所述计时时间未达到预设周期时间,则暂停向所述待发送消息队列中的目标终端下发所述精简消息体;若所述计时时间达到预设周期时间,则控制所述计时器和所述消息计数器清零,并重新开始向所述待发送消息队列中的目标终端发送所述精简消息体,循环执行所述在开始向所述待发送消息队列中的目标终端发送所述精简消息体时,启动计时器计时,同时启动消息计数器统计所述精简消息体的下发次数的步骤以及后续步骤,直至所述待发送消息队列中所有的目标终端都被轮询到,并给同时接收到所述精简消息体的目标终端分配随机等待时间,使所述目标终端根据所述待推送消息的网络存储地址和所述随机等待时间访问资源服务器,从所述资源服务器获取所述待推送消息;
访问请求单元,用于等待随机时间后,根据所述精简消息体中的所述待推送消息的网络存储地址请求业务方的所资源服务器返回所述待推送消息;
第二接收单元,用于接收所述资源服务器返回的所述待推送消息。
CN201710421955.8A 2017-06-06 2017-06-06 一种消息推送方法、消息推送服务器及终端 Active CN107172182B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710421955.8A CN107172182B (zh) 2017-06-06 2017-06-06 一种消息推送方法、消息推送服务器及终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710421955.8A CN107172182B (zh) 2017-06-06 2017-06-06 一种消息推送方法、消息推送服务器及终端

Publications (2)

Publication Number Publication Date
CN107172182A CN107172182A (zh) 2017-09-15
CN107172182B true CN107172182B (zh) 2021-02-02

Family

ID=59824783

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710421955.8A Active CN107172182B (zh) 2017-06-06 2017-06-06 一种消息推送方法、消息推送服务器及终端

Country Status (1)

Country Link
CN (1) CN107172182B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107528922A (zh) * 2017-09-29 2017-12-29 深圳市金立通信设备有限公司 一种消息推送方法、终端及计算机可读存储介质
CN110297707A (zh) * 2018-03-22 2019-10-01 香港乐蜜有限公司 一种消息传输方法及装置
CN108718285B (zh) * 2018-06-15 2022-06-03 北京奇艺世纪科技有限公司 云计算集群的流量控制方法、装置及服务器
CN110838971B (zh) * 2019-11-07 2022-07-22 北京奇艺世纪科技有限公司 消息发送方法、装置、电子设备及存储介质
CN110909289B (zh) * 2019-11-20 2023-04-14 每日互动股份有限公司 一种数据处理方法及系统
CN113132428B (zh) * 2019-12-30 2023-07-07 浙江大搜车软件技术有限公司 信息推送的方法、系统、设备、计算机设备和存储介质
CN111401961A (zh) * 2020-03-19 2020-07-10 北京奇艺世纪科技有限公司 一种资源推送方法、终端和消息推送系统
CN112016030B (zh) * 2020-09-09 2024-04-19 湖南快乐阳光互动娱乐传媒有限公司 消息推送的方法、装置、服务器和计算机存储介质
CN112214336B (zh) * 2020-10-14 2022-11-22 苏宁云计算有限公司 数据队列推送方法、装置、计算机设备和存储介质
CN112261594B (zh) * 2020-10-23 2022-02-11 北京金和网络股份有限公司 不定时消息推送方法及装置
CN113395671B (zh) * 2021-06-22 2022-04-26 中国农业银行股份有限公司 消息推送速率的调节方法、装置和服务器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101110740A (zh) * 2006-07-05 2008-01-23 三星电子株式会社 在移动自组织网络中提供多个设备之间协作的系统和方法
CN103581107A (zh) * 2012-07-19 2014-02-12 国基电子(上海)有限公司 服务器及其设定工作模式的方法
CN105049507A (zh) * 2015-07-15 2015-11-11 贵阳朗玛信息技术股份有限公司 一种向客户端推送内容的方法及推送服务器

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8072950B2 (en) * 2006-07-05 2011-12-06 Samsung Electronics Co., Ltd. Collaborative mobile ad hoc network infrastructure
CN101621761A (zh) * 2009-08-04 2010-01-06 中国联合网络通信集团有限公司 业务推送和接收方法、应用服务器、用户终端和系统
CN103856544B (zh) * 2012-12-06 2018-04-20 腾讯科技(北京)有限公司 微博消息的发送方法、显示方法及系统、显示终端、服务器
CN103428290A (zh) * 2013-08-19 2013-12-04 北京网秦天下科技有限公司 数据推送方法和设备
CN105323205A (zh) * 2014-05-30 2016-02-10 中兴通讯股份有限公司 消息推送处理方法、装置、推送服务器及应用服务器

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101110740A (zh) * 2006-07-05 2008-01-23 三星电子株式会社 在移动自组织网络中提供多个设备之间协作的系统和方法
CN103581107A (zh) * 2012-07-19 2014-02-12 国基电子(上海)有限公司 服务器及其设定工作模式的方法
CN105049507A (zh) * 2015-07-15 2015-11-11 贵阳朗玛信息技术股份有限公司 一种向客户端推送内容的方法及推送服务器

Also Published As

Publication number Publication date
CN107172182A (zh) 2017-09-15

Similar Documents

Publication Publication Date Title
CN107172182B (zh) 一种消息推送方法、消息推送服务器及终端
WO2019205371A1 (zh) 服务器、消息分配的方法及存储介质
US11119982B2 (en) Correlation of performance data and structure data from an information technology environment
US10225136B2 (en) Processing of log data and performance data obtained via an application programming interface (API)
EP3742306A1 (en) Data query method, apparatus and device
WO2019062182A1 (zh) 数据同步装置、方法及计算机可读存储介质
US10425349B2 (en) Idle worker-process page-out
US8977677B2 (en) Throttling usage of resources
US20140324862A1 (en) Correlation for user-selected time ranges of values for performance metrics of components in an information-technology environment with log data from that information-technology environment
US20180336060A1 (en) Method, terminal and storage medium for displaying media files
JP2016531518A (ja) 動的電話番号割り当て
US9514162B2 (en) Smart polling frequency
WO2015085969A1 (zh) 推荐算法优化方法、装置及系统
WO2023005197A1 (zh) 内容显示方法及终端
US9298786B1 (en) Deferred content presentation
CN111738783B (zh) 一种高可用的电子发票开具方法及系统
CN111352952A (zh) 一种信息查询方法、服务器、及计算机可读存储介质
US20200348840A1 (en) System and method for event driven storage management
US11334476B2 (en) Client-side survey control
KR20170133465A (ko) 사용자 모바일 네트워크 및 데이터 플랜에 기초한 콘텐츠의 필터링
CN112637619A (zh) 直播间置顶消息确定方法、装置、设备和存储介质
CN109117278B (zh) 一种移动终端及其进程间通信的限制方法、存储介质
US9268779B2 (en) Methods, computer program products, and apparatuses for dispersing content items
CN108874923B (zh) 虚拟物品分发方法、服务器及计算机可读存储介质
US20220405406A1 (en) Methods and Systems for Dynamic Sampling of Application Events

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210419

Address after: No. 1702-1703, 17 / F (15 / F, natural floor), Desai technology building, 9789 Shennan Avenue, Yuehai street, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: Shenzhen Microphone Holdings Co.,Ltd.

Address before: 518040, 21 floor, Times Technology Building, 7028 Shennan Road, Futian District, Guangdong, Shenzhen

Patentee before: DONGGUAN GOLDEX COMMUNICATION TECHNOLOGY Co.,Ltd.