CN103428290A - 数据推送方法和设备 - Google Patents
数据推送方法和设备 Download PDFInfo
- Publication number
- CN103428290A CN103428290A CN2013103609731A CN201310360973A CN103428290A CN 103428290 A CN103428290 A CN 103428290A CN 2013103609731 A CN2013103609731 A CN 2013103609731A CN 201310360973 A CN201310360973 A CN 201310360973A CN 103428290 A CN103428290 A CN 103428290A
- Authority
- CN
- China
- Prior art keywords
- data
- propelling movement
- propelling
- time
- movement target
- 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.)
- Pending
Links
Images
Landscapes
- Telephonic Communication Services (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供了用于向一个或多个推送目标推送数据的方法和设备。该方法包括:基于针对所述一个或多个推送目标中的每个推送目标预先设定的一个或多个推送选项,确定与相应推送目标相关联的可推送时间;当到达与所述一个或多个推送目标中的至少一个推送目标相关联的可推送时间时,基于服务器的一个或多个性能指标,判断是立刻向相应推送目标推送数据还是将相应数据推送请求加入等待队列中;以及基于所述判断的结果,执行数据推送操作或加入队列操作。
Description
技术领域
本发明总体上涉及数据通信领域,更具体地涉及用于向一个或多个推送目标推送数据的方法和设备。
背景技术
当今,随着智能移动设备的日益流行,针对移动设备上的应用(app)的管理成为了重要的课题。移动应用管理(Mobile ApplicationManagement,下文中简称为MAM)描述了负责对移动设备(例如,智能电话、平板电脑、个人数字助理(PDA)等等)上的移动应用进行配置、访问、控制等的软件和服务。MAM与移动设备管理(MobileDevice Management,下文中简称为MDM)的不同之处在于:如它们的名称所表明的,MAM专注于对应用的管理,其提供了比MDM低的设备控制程度,但是提供了比MDM高的应用控制级别。
在MAM中,应用(数据)推送是重要的应用分发方式。应用推送通常是由服务器侧发起的数据下载服务,其与由客户端(终端)侧发起的数据下载服务的主要不同之处在于:其通常是同时针对很多客户端的数据下载服务。在一些情况下,数据推送所针对的客户端数目可以是数以千计甚至更多。
因此,应用推送不可避免的会导致以下问题:(1)由于需要同时向大量推送目标(客户端、终端等)传输数据,因此在特定应用(例如,流行的游戏等)可供推送(下载、发布等)时,引起服务器的高并发和高负载,进而引起网络拥塞乃至服务器宕机;(2)传统的应用推送服务不能满足用户、运营商、应用提供商的特殊时间要求(例如,延时推送、分时推送等),例如,运营商可能基于其自身网络资源的考量,而要求在深夜网络资源消耗低的时候进行应用推送。又例如,应用提供商可能为了协调在不同国家的不同服务器上同时发布新的应用,而要求在指定时间点进行应用推送。再例如,用户可能希望在其不使用移动设备的时间段或无线网络可用的时间段内下载应用。这均是现有应用推送技术所不能解决的问题。
发明内容
为了解决上述问题,提供了根据本发明的数据推送方法和设备。
根据本发明的第一方面,提供了一种用于向一个或多个推送目标推送数据的方法。所述方法包括:基于针对所述一个或多个推送目标中的每个推送目标预先设定的一个或多个推送选项,确定与相应推送目标相关联的可推送时间;当到达与所述一个或多个推送目标中的至少一个推送目标相关联的可推送时间时,基于服务器的一个或多个性能指标,判断是立刻向相应推送目标推送数据还是将相应数据推送请求加入等待队列中;以及基于所述判断的结果,执行数据推送操作或加入队列操作。
在一些实施例中,所述数据是应用。
在一些实施例中,所述推送目标是移动终端。
在一些实施例中,所述一个或多个推送选项包括以下至少一项:与所述数据相关的选项、与相应推送目标相关的选项、与相应推送目标所属的用户相关的选项、与相应推送目标所属的用户的用户组相关的选项。
在一些实施例中,所述可推送时间包括以下至少一项:时间点、时间段、和/或间隔时间。
在一些实施例中,所述服务器的所述一个或多个性能指标包括:处理器使用率、内存使用率、网络带宽使用率。
在一些实施例中,基于服务器的一个或多个性能指标进行判断的步骤还包括:基于所述一个或多个性能指标的历史数据、当前数据以及将来数据中的至少一项,判断是立刻向相应推送目标推送数据还是将相应数据推送请求加入等待队列中。
在一些实施例中,所述将来数据是基于所述历史数据和所述当前数据来预测的。
在一些实施例中,基于服务器的一个或多个性能指标进行判断的步骤还包括:如果所述一个或多个性能指标中至少一个性能指标大于或小于预定阈值,则相应启用或禁用一个或多个推送限制;以及如果针对推送目标的数据推送将引起超过所述一个或多个推送限制中被启用的至少一个推送限制,则判断将相应数据推送请求加入等待队列中;否则,判断立刻向相应推送目标推送数据。
在一些实施例中,所述一个或多个推送限制包括最大并发连接数限制和最大下载速率限制。
根据本发明的第二方面,提供了一种用于向一个或多个推送目标推送数据的设备。该设备包括:确定单元,用于基于针对所述一个或多个推送目标中的每个推送目标预先设定的一个或多个推送选项,确定与相应推送目标相关联的可推送时间;判断单元,用于当到达与所述一个或多个推送目标中的至少一个推送目标相关联的可推送时间时,基于服务器的一个或多个性能指标,判断是立刻向相应推送目标推送数据还是将相应数据推送请求加入等待队列中;以及执行单元,用于基于所述判断的结果,执行数据推送操作或加入队列操作。
在一些实施例中,所述数据是应用。
在一些实施例中,所述推送目标是移动终端。
在一些实施例中,所述一个或多个推送选项包括以下至少一项:与所述数据相关的选项、与相应推送目标相关的选项、与相应推送目标所属的用户相关的选项、与相应推送目标所属的用户的用户组相关的选项。
在一些实施例中,所述可推送时间包括以下至少一项:时间点、时间段、和/或间隔时间。
在一些实施例中,所述服务器的所述一个或多个性能指标包括:处理器使用率、内存使用率、网络带宽使用率。
在一些实施例中,所述判断单元还用于:基于所述一个或多个性能指标的历史数据、当前数据以及将来数据中的至少一项,判断是立刻向相应推送目标推送数据还是将相应数据推送请求加入等待队列中。
在一些实施例中,所述将来数据是基于所述历史数据和所述当前数据来预测的。
在一些实施例中,所述判断单元还用于:如果所述一个或多个性能指标中至少一个性能指标大于或小于预定阈值,则相应启用或禁用一个或多个推送限制;以及如果针对推送目标的数据推送将引起超过所述一个或多个推送限制中被启用的至少一个推送限制,则判断将相应数据推送请求加入等待队列中;否则,判断立刻向相应推送目标推送数据。
在一些实施例中,所述一个或多个推送限制包括最大并发连接数限制和最大下载速率限制。
使用本发明的方法和设备,降低了服务器在推送应用时可能出现的高并发和高负载的现象,进而避免引起网络拥塞和服务器故障,同时满足了各方针对应用推送(下载)的特定时间要求,使得应用推送更加灵活方便。
附图说明
通过下面结合附图说明本发明的优选实施例,将使本发明的上述及其它目的、特征和优点更加清楚,其中:
图1是示出了根据本发明的数据推送系统1000的应用场景的示意图。
图2是示出了根据本发明实施例的用于数据推送的方法400的流程图。
图3是示出了根据本发明实施例的服务器200的框图。
在本发明的所有附图中,相同或相似的结构均以相同或相似的附图标记来标识。
具体实施方式
下面参照附图对本发明的优选实施例进行详细说明,在描述过程中省略了对于本发明来说是不必要的细节和功能,以防止对本发明的理解造成混淆。以下,以本发明应用于无线移动通信系统的场景为例,对本发明进行了详细描述。但本发明并不局限于此,本发明也可以应用于固定通信系统、有线通信系统,或者应用于无线移动通信系统、固定通信系统、有线通信系统等的任意混合结构。就移动通信系统而言,本发明并不局限于所涉及的各个移动通信终端的具体通信协议,可以包括(但不限于)2G、3G、4G、5G网络,WCDMA、CDMA2000、TD-SCDMA系统等,不同的移动终端可以采用相同的通信协议,也可以采用不同的通信协议。本发明并不局限于移动终端的具体操作系统,可以包括(但不限于)iOS、Windows Mobile、Symbian、Android等,不同的移动终端可以采用相同的操作系统,也可以采用不同的操作系统。
图1是示出了根据本发明的通信系统1000的应用场景的示意图。如图1所示,通信系统1000可以包括:移动终端100a~100d以及服务器200。下文中,当不特别指定时,将移动终端100a~100d统称为移动终端100。为了清楚起见,图中仅示出了四个移动终端100a~100d,但本发明并不局限于此,可以包括1~3个移动终端,也可以包括5个或更多数目的移动终端等等。一个或多个移动终端100可以属于同一用户或不同用户。此外,一个或多个用户可以属于同一用户组或不同用户组。在本实施例中,移动终端100a和100b属于用户150,移动终端100c属于用户151,以及移动终端100d属于用户152。此外,用户150和152属于用户组160,而用户151属于用户组161。在其他实施例中,还可以采用任意数目的移动终端、用户、用户组的其他组合。
移动终端100可以通过各种有线或无线连接与服务器200直接或间接相连并与之进行通信。有线连接的示例可以包括(但不限于):通用串行总线(USB)连接、串口连接、并口连接、以太网连接、火线(IEEE1394)连接等等。无线连接的示例可以包括(但不限于):红外(IrDA)连接、蓝牙连接、WLAN连接、2G、3G、4G、5G接入技术连接。此外,移动终端100与服务器200还可以通过通信网络300进行通信。通信网络300的示例可以包括(但不限于):互联网、移动通信网络、固定线路(如xDSL、光纤等)等。
此外,数据推送的对象不限于移动终端100。实际上,只要是由于各种原因而需要被推送(下载)数据的任何设备,都可以作为本发明的技术方案所针对的数据推送对象。例如,根据本发明的技术方案,可以向机顶盒、路由器、家庭智能网关等装置推送数据(应用),也可以向智能电视、固定终端等推送数据(应用)。
此外,在下述实施例中,推送的数据可以是移动设备上的应用(app)。在本发明的其他一些实施例中,还可以推送其他类型的数据,例如音频、视频、网页等,其不限于移动设备的应用。
为了解决现有技术的问题,本发明的一些实施例提供了用于服务器确定数据的相应可推送时间的一种或多种推送选项。在本实施例中,该推送选项至少包括:与数据(应用)相关的选项、与推送目标(移动终端)相关的选项、与推送目标所属的用户相关的选项、以及与推送目标所属的用户的用户组相关的选项。接下来,将逐一具体说明这些选项。
(1)与数据相关的选项
如上所述,应用提供商可能希望针对不同应用提供不同的应用推送时间。在一个实施例中,应用提供商根据例如表1所示的内容来设置针对不同应用的可下载(推送)时间(格式为“年.月.日时:分:秒”,例如2013年7月30日23时59分59秒即为2013.07.3023:59:59)。
表1针对不同应用的示例可下载时间
在上面的表1中,可以看到针对不同的应用提供了不同的可下载时间。该不同的可下载时间可以分为至少3类:时间点、时间段、以及间隔时间。在上述实施例中,针对办公应用A,将可下载时间设置为2013年7月30日23时59分50秒,即在该绝对时间点上,开始向办公应用A的目标设备(移动终端)推送数据。针对即时通信应用B,将可下载时间设置为2013年7月25日至2013年7月28日的每天凌晨0点到5点以及下午1点到6点时间期间,即,在其他时间段不允许对即时通信应用B的数据开始进行推送。针对游戏应用C,将可下载时间设置为在游戏C发布(启用)之后的8个小时之后。服务器稍后可以根据游戏C发布(启用)的时间来确定该相对间隔时间的具体绝对时间点。
实际上,可以设置的可推送时间不限于上述表1中示出的几种。例如,在备选实施例中,可以设置间隔时间段。例如,在应用发布(启用)之后的4~5小时之间允许数据推送,在该相对时间段之前和之后都不允许相关的数据推送。此外,在备选实施例中,可以将上述可推送时间的几种设置格式组合使用,以更灵活地设置可推送时间。例如,在备选实施例中,可以将针对办公应用A的可推送时间设置为“2013.07.3023:59:59”以及“2013.08.02~2013.08.049:00~18:00”,从而可以在该时间组合中的任意时间点开始对办公应用A的数据进行推送。
此外,在其他实施例中,该选项可以由其它参与方来设定,不限于应用提供商(例如,用户、运营商等等)。
(2)与推送目标(移动终端)相关的选项
类似地,运营商可能希望在服务器负载低或网络资源可用的时候提供应用推送。由于对于运营商来说,网络负载和服务器负载通常在深夜和凌晨(例如,23:00~5:00)是一天中最低的时候。因此,在一些实施例中,运营商可能希望指定该时间段为其网络下所有移动终端的可推送时间。当然,在备选实施例中,运营商也可以针对不同移动终端指定不同的可推送时间。实际上,这完全取决于运营商配置的选项。在其他实施例中,该选项可以由其它参与方来设定,不限于运营商(例如,用户、应用提供商等等)。
例如,针对网络中特定设备,该运营商可以通过指定与该特定移动终端和/或其SIM卡的ID(例如,国际移动设备身份码(IMEI)、国际移动用户身份码(IMSI)等)相关的可推送时间,来设置与推送目标相关的选项。
表2针对不同推送目标的示例可下载时间
(3)与推送目标所属的用户相关的选项以及与推送目标的用户的用户组相关的选项
此外,可以针对不同的移动终端用户以及该用户的用户组来指定不同(或相同)的可推送时间。这两个选项同样也可以由各参与方来设置,不限于某一特定参与方。
对于用户来说,可能希望在例如存在免费网络接入的时间来下载应用。例如,用户在午休期间(例如,12:00~13:30),可以通过在午休地点(例如,星巴克)接入免费WiFi网络,来下载应用。即,预先指定该时间段以供服务器进行应用推送。
此外,如果例如移动终端100a的用户150满足应用提供商的一些预定标准(例如,该用户150是该应用提供商的第10000个用户等),则可以在应用发布后的较早时间向其推送应用。又例如,如果用户150属于该应用提供商的VIP用户组(例如,用户组160),则可以指定在应用发布后的第一时间向其推送应用。
当然,与用户相关的选项以及与用户组相关的选项不限于上述这几种。实际上,可以按照预先设定的不同标准,指定与用户和/或用户组相关的各种选项。例如,在下面表3和表4中针对移动终端100a~d的用户150、151和152及其用户组160和161分别设置了各种选项。
表3针对不同用户的示例可下载时间
表4针对不同用户组的示例可下载时间
这样,参考表1~4,可以得到针对特定应用、特定设备、特定用户、特定用户组的具体可推送时间。例如,当服务器想要确定向用户组160中用户152的移动终端100d推送办公应用A的可推送时间时,参考表1至表4,可以确定最早的可推送时间是2013年7月30日23时59分59秒。
当然,也可以仅参考表1~4中的任意1个、2个、或3个表来得到针对特定应用、特定设备、特定用户、特定用户组中相应1项、2项或3项的具体可推送时间。即,不一定参考全部4个表来确定向特定移动终端推送某个应用的可推送时间。服务器可以根据其自身的要求来参考任意一个或多个表。
例如,参考表1~3,当服务器想要确定向用户151的移动终端100c推送即时通信应用B的可推送时间时,可以确定最早的可推送时间是2013年7月25日凌晨1点。又例如,参考表1和4,当服务器想要确定向用户组161中用户的移动终端推送游戏应用C的可推送时间时,可以根据游戏应用C的发布时间(例如,2013年8月1日上午9点)来确定最早的可推送时间(例如,2013年8月2日上午9点)。
当然,服务器在确定可推送时间时所能够参考的表格,或更一般地,所能够参考的选项,不限于上面列出的一个或多个表格及其组合。此外,请注意有可能出现以下情况:所参考的各表格中的各项的组合导致没有可用推送时间。例如,参考上述4个表格,当服务器想要确定向用户组160中用户150的移动终端100a推送即时通信应用B的可推送时间时,则由于用户相关选项(中午12点到下午1点半)与设备相关选项(每天晚上11点到次日凌晨5点)的交集为空,不存在可供服务器选择的可推送时间。为了避免这种情况,首先应当谨慎地设计这些表格中各项的具体限制,以防止出现导致无可推送时间的情况。其次,当出现这种情况时,服务器可以采取以下行动中至少一项,以解决该情况:(1)向用户、运营商或应用提供商等相关方加以通知,以提请它们注意该情况的存在并处理该情况;(2)根据预先设置的各个选项的优先级,来确定可推送时间(下文中将对此详细描述);和/或(3)根据缺省设置来确定可推送时间。
如上面(2)所述,在一些实施例中,当出现不存在可供服务器选择的可推送时间的情况时,可以根据预先设置的各个选项的优先级,来确定可推送时间。例如,在一些实施例中,向与应用相关的选项赋予最高优先级,接下来依次是与用户组相关的选项、与用户相关的选项以及与设备相关的选项。在该情况下,同样在服务器想要确定向用户组160中用户150的移动终端100a推送即时通信应用B的可推送时间时,首先根据与应用相关的选项,可以确定可推送时间在2013年7月25日至2013年7月28日的每天凌晨0点到5点以及下午1点到6点期间。接下来,根据与用户组160相关的选项,可以根据即时通信应用B的发布时间(例如,2013年7月24日晚上8点)来进一步确定可推送时间在2013年7月25日至2013年7月28日的每天凌晨0点到5点以及下午1点到6点时间期间。接下来,根据与用户150相关的选项,可以确定在2013年7月25日至2013年7月28日的每天下午1点到1点半。最后,根据与设备100a相关的选项,发现没有可推送时间,则按优先级顺序回退到所能确定的最小的可推送时间范围(非空时间范围)中,即2013年7月25日至2013年7月28日的每天下午1点到1点半。从而,根据这种方式可以按优先级顺序来最终确定满足尽可能多的推送选项的可推送时间。
当然,在其他实施例中,可以根据与上述实施例不同的优先级顺序来确定可推送时间。此外,对可推送时间的处理也不限于回退,可以向导致出现无可推送时间问题的选项的负责方(例如,用户、运营商、应用提供商等)发出通知,以通知它们出现问题并应当解决问题。
以上描述了如何根据一个或多个可设置选项来确定针对推送目标的可推送时间的示例。接下来,将描述在确定可推送时间后的后续处理。
当确定了可推送时间之后,服务器检测是否到达了该可推送时间。在确定到达了可推送时间时,服务器在进行实际推送之前,为了避免由于当前处理器使用率、内存使用率、网络带宽使用率过高而导致与该可推送时间相对应的数据推送请求引起服务器宕机、网络拥塞等问题,应当首先对服务器的性能指标进行检查。服务器的性能指标可以包括例如:处理器使用率、内存使用率、网络带宽使用率等指标,它们通常用于指示当前服务器是否还能处理新的数据推送。
当这些性能指标中至少一项超过某一阈值时(例如,处理器(例如,CPU)使用率超过80%),可以启用推送限制。推送限制可以包括例如最大并发连接数限制和最大下载速率限制等。当上述新的数据推送请求会导致当前并发连接数超过该最大并发连接数限制,或导致当前下载速率超过该最大下载速率限制时,则服务器将该数据推送请求放入等待队列中。
在一些实施例中,对在等待队列中的数据推送请求的处理可以是:当服务器负载降低(例如,处理器使用率低于40%)时,以顺序、倒序、乱序或以任何不使得服务器负载高于特定阈值的方式执行相应数据推送。在另一些实施例中,对在等待队列中的数据推送请求的处理可以是不仅考虑服务器负载,还要考虑与该数据推送请求相对应的可推送时间。即,对该数据推送请求的处理仅发生在服务器负载低且在相应可推送时间期间。在又一些实施例中,对在等待队列中的数据推送请求的处理可以仅考虑可推送时间。即,如果在该数据推送请求的可推送时间期间再次请求推送数据时同样出现服务器负载高的情况,则将该请求再次加入等待队列,以等待下一次处理。总之,对等待队列中的数据推送请求的处理不限于上述各种处理,而是可以满足用户的要求的各种处理和/或其组合。
此外,当上述性能指标中至少一项低于某一阈值时(例如,内存使用率低于20%),可以禁用推送限制。此时,立刻执行到达了可推送时间的相应数据推送。如果此时等待队列不为空,则如上所述相应处理等待队列中的数据推送请求。
此外,性能指标的数据可以是该性能指标的历史数据、当前数据和将来数据中的至少一项或其任意组合。将来数据是根据历史数据和当前数据来预测的。例如,在一些实施例中,可以根据过去一周中每天特定时间的网络带宽使用率(或处理器使用率、内存使用率等)来预测今天同一特定时间的网络带宽使用率,并基于该预测的网络带宽使用率来调度可能在该特定时间发生的数据推送请求(例如,将相应数据推送请求加入等待队列中)。此外,在另一些实施例中,可以基于某一性能指标的历史数据和当前数据来调度数据推送请求。例如,尽管当前性能指标可能高于阈值,但是如果考虑包括当前数据在内的一周内的平均性能指标(例如,历史数据与当前数据的加权平均),则有可能低于阈值,且因此并不启用推送限制。
以上述方式,服务器可以通过针对应用(数据)推送来设置各种推送选项以及根据服务器性能指标来设置推送限制,对应用推送进行灵活方便的调度,从而降低或者避免了服务器的瞬时高并发和高负载,降低了或者避免了瞬时网络拥塞,同时满足了可以在指定时间点、指定时间段或指定间隔时间(与应用发布(启用)间隔的时间)进行应用(数据)推送的需求。
图2是示出了根据本发明实施例的用于推送数据的方法400的流程图。如图2所示,用于推送数据的方法400可以包括步骤S410、S420、和S430。根据本发明,方法400的一些步骤可以单独执行或组合执行,以及可以并行执行或顺序执行,并不局限于图2所示的具体操作顺序。在一些实施例中,方法400可以由图1所示的服务器200来执行。
图3是示出了根据本发明实施例的服务器200的框图。如图3所示,服务器200可以包括:确定单元210、判断单元220和执行单元230。
确定单元210用于基于针对一个或多个推送目标中的每个推送目标预先设定的一个或多个推送选项,确定与相应推送目标相关联的可推送时间。确定单元210可以是服务器200的中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、微控制器等等,其可以与服务器200的存储器(硬盘、软盘、光盘、RAM、闪存)相配合,基于存储器中存储的针对一个或多个推送目标中的每个推送目标预先设定的一个或多个推送选项,确定与相应推送目标相关联的可推送时间。此外,确定单元210也可以与服务器200的通信设备相配合,基于通过通信设备接收到的针对一个或多个推送目标中的每个推送目标预先设定的一个或多个推送选项,确定与相应推送目标相关联的可推送时间。
判断单元220用于当到达与该一个或多个推送目标中的至少一个推送目标相关联的可推送时间时,基于服务器的一个或多个性能指标,判断是立刻向相应推送目标推送数据还是将相应数据推送请求加入等待队列中。判断单元220可以是服务器200的中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、微控制器等等,其可以与服务器200的存储器(硬盘、软盘、光盘、RAM、闪存)以及用于检测各项性能指标的传感器(硬件、软件或它们的组合)相配合,根据存储器中存储的或实时获取的性能指标,判断是立刻向相应推送目标推送数据还是将相应数据推送请求加入等待队列中。
执行单元230用于基于上述判断的结果,执行数据推送操作或加入队列操作。执行单元230可以是服务器200的中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、微控制器等等,其可以根据上述判断的结果,执行数据推送操作(例如,向推送目标推送相应应用)或加入队列操作(例如,将应用推送请求加入等待队列中)。
以下将结合图2和图3,对根据本发明实施例的用于推送数据的方法400和服务器200进行详细的描述。
方法400开始于步骤S410,在步骤S410中,可以由服务器200的确定单元210基于针对一个或多个推送目标中的每个推送目标预先设定的一个或多个推送选项,确定与相应推送目标相关联的可推送时间。
在步骤S420中,当到达与该一个或多个推送目标中的至少一个推送目标相关联的可推送时间时,可以基于服务器的一个或多个性能指标,由服务器200的判断单元220判断是立刻向相应推送目标推送数据还是将相应数据推送请求加入等待队列中。
在步骤S430中,可以基于该判断的结果,由服务器200的执行单元230执行数据推送操作或加入队列操作。
根据本发明的一些实施例,该数据可以是应用。
根据本发明的一些实施例,推送目标可以是移动终端。
根据本发明的一些实施例,一个或多个推送选项可以包括以下至少一项:与所述数据相关的选项、与相应推送目标相关的选项、与相应推送目标所属的用户相关的选项、与相应推送目标所属的用户的用户组相关的选项。
根据本发明的一些实施例,可推送时间可以包括以下至少一项:时间点、时间段、和/或间隔时间。
根据本发明的一些实施例,服务器的一个或多个性能指标可以包括:处理器使用率、内存使用率、网络带宽使用率。
根据本发明的一些实施例,步骤S420还可以包括:基于一个或多个性能指标的历史数据、当前数据以及将来数据中的至少一项,由服务器200的判断单元220判断是立刻向相应推送目标推送数据还是将相应数据推送请求加入等待队列中。
根据本发明的一些实施例,将来数据可以是基于历史数据和当前数据来预测的。
根据本发明的一些实施例,步骤S420还可以包括:如果一个或多个性能指标中至少一个性能指标大于或小于预定阈值,则相应启用或禁用一个或多个推送限制;以及如果针对推送目标的数据推送将引起超过一个或多个推送限制中被启用的至少一个推送限制,则由服务器200的判断单元220判断将相应数据推送请求加入等待队列中;否则,判断立刻向相应推送目标推送数据。
根据本发明的一些实施例,一个或多个推送限制可以包括最大并发连接数限制和最大下载速率限制。
至此已经结合优选实施例对本发明进行了描述。应该理解,本领域技术人员在不脱离本发明的精神和范围的情况下,可以进行各种其它的改变、替换和添加。因此,本发明的范围不局限于上述特定实施例,而应由所附权利要求所限定。
Claims (20)
1.一种用于向一个或多个推送目标推送数据的方法,包括:
基于针对所述一个或多个推送目标中的每个推送目标预先设定的一个或多个推送选项,确定与相应推送目标相关联的可推送时间;
当到达与所述一个或多个推送目标中的至少一个推送目标相关联的可推送时间时,基于服务器的一个或多个性能指标,判断是立刻向相应推送目标推送数据还是将相应数据推送请求加入等待队列中;以及
基于所述判断的结果,执行数据推送操作或加入队列操作。
2.根据权利要求1所述的方法,其中,所述数据是应用。
3.根据权利要求1所述的方法,其中,所述推送目标是移动终端。
4.根据权利要求1所述的方法,其中,所述一个或多个推送选项包括以下至少一项:与所述数据相关的选项、与相应推送目标相关的选项、与相应推送目标所属的用户相关的选项、与相应推送目标所属的用户的用户组相关的选项。
5.根据权利要求1所述的方法,其中,所述可推送时间包括以下至少一项:时间点、时间段、和/或间隔时间。
6.根据权利要求1所述的方法,其中,所述服务器的所述一个或多个性能指标包括:处理器使用率、内存使用率、网络带宽使用率。
7.根据权利要求6所述的方法,其中,基于服务器的一个或多个性能指标进行判断的步骤还包括:基于所述一个或多个性能指标的历史数据、当前数据以及将来数据中的至少一项,判断是立刻向相应推送目标推送数据还是将相应数据推送请求加入等待队列中。
8.根据权利要求7所述的方法,其中,所述将来数据是基于所述历史数据和所述当前数据来预测的。
9.根据权利要求1所述的方法,其中,基于服务器的一个或多个性能指标进行判断的步骤还包括:
如果所述一个或多个性能指标中至少一个性能指标大于或小于预定阈值,则相应启用或禁用一个或多个推送限制;以及
如果针对推送目标的数据推送将引起超过所述一个或多个推送限制中被启用的至少一个推送限制,则判断将相应数据推送请求加入等待队列中;否则,判断立刻向相应推送目标推送数据。
10.根据权利要求9所述的方法,其中,所述一个或多个推送限制包括最大并发连接数限制和最大下载速率限制。
11.一种用于向一个或多个推送目标推送数据的设备,包括:
确定单元,用于基于针对所述一个或多个推送目标中的每个推送目标预先设定的一个或多个推送选项,确定与相应推送目标相关联的可推送时间;
判断单元,用于当到达与所述一个或多个推送目标中的至少一个推送目标相关联的可推送时间时,基于服务器的一个或多个性能指标,判断是立刻向相应推送目标推送数据还是将相应数据推送请求加入等待队列中;以及
执行单元,用于基于所述判断的结果,执行数据推送操作或加入队列操作。
12.根据权利要求11所述的设备,其中,所述数据是应用。
13.根据权利要求11所述的设备,其中,所述推送目标是移动终端。
14.根据权利要求11所述的设备,其中,所述一个或多个推送选项包括以下至少一项:与所述数据相关的选项、与相应推送目标相关的选项、与相应推送目标所属的用户相关的选项、与相应推送目标所属的用户的用户组相关的选项。
15.根据权利要求11所述的设备,其中,所述可推送时间包括以下至少一项:时间点、时间段、和/或间隔时间。
16.根据权利要求11所述的设备,其中,所述服务器的所述一个或多个性能指标包括:处理器使用率、内存使用率、网络带宽使用率。
17.根据权利要求16所述的设备,其中,所述判断单元还用于:基于所述一个或多个性能指标的历史数据、当前数据以及将来数据中的至少一项,判断是立刻向相应推送目标推送数据还是将相应数据推送请求加入等待队列中。
18.根据权利要求17所述的设备,其中,所述将来数据是基于所述历史数据和所述当前数据来预测的。
19.根据权利要求11所述的设备,其中,所述判断单元还用于:
如果所述一个或多个性能指标中至少一个性能指标大于或小于预定阈值,则相应启用或禁用一个或多个推送限制;以及
如果针对推送目标的数据推送将引起超过所述一个或多个推送限制中被启用的至少一个推送限制,则判断将相应数据推送请求加入等待队列中;否则,判断立刻向相应推送目标推送数据。
20.根据权利要求19所述的设备,其中,所述一个或多个推送限制包括最大并发连接数限制和最大下载速率限制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103609731A CN103428290A (zh) | 2013-08-19 | 2013-08-19 | 数据推送方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103609731A CN103428290A (zh) | 2013-08-19 | 2013-08-19 | 数据推送方法和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103428290A true CN103428290A (zh) | 2013-12-04 |
Family
ID=49652454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013103609731A Pending CN103428290A (zh) | 2013-08-19 | 2013-08-19 | 数据推送方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103428290A (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105577570A (zh) * | 2015-12-15 | 2016-05-11 | 重庆大学 | 一种支持业务报文时序逻辑的算法 |
CN106254443A (zh) * | 2016-07-28 | 2016-12-21 | 乐视控股(北京)有限公司 | 消息推送方法及装置 |
CN106790388A (zh) * | 2016-11-24 | 2017-05-31 | 北京奇虎科技有限公司 | 一种进行数据更新的方法和移动终端 |
CN107172182A (zh) * | 2017-06-06 | 2017-09-15 | 深圳市金立通信设备有限公司 | 一种消息推送方法、消息推送服务器及终端 |
CN107528922A (zh) * | 2017-09-29 | 2017-12-29 | 深圳市金立通信设备有限公司 | 一种消息推送方法、终端及计算机可读存储介质 |
CN107527291A (zh) * | 2017-08-03 | 2017-12-29 | 平安科技(深圳)有限公司 | 一种投保方法、设备及存储介质 |
CN107911484A (zh) * | 2017-12-13 | 2018-04-13 | 浪潮软件股份有限公司 | 一种消息处理的方法及装置 |
CN108074189A (zh) * | 2016-11-14 | 2018-05-25 | 平安科技(深圳)有限公司 | 保单推送方法和装置 |
CN108769232A (zh) * | 2018-06-07 | 2018-11-06 | Oppo(重庆)智能科技有限公司 | 应用资源推送方法、装置、设备及存储介质 |
WO2019019652A1 (zh) * | 2017-07-24 | 2019-01-31 | 深圳壹账通智能科技有限公司 | 推送信息的处理方法、装置、计算机设备和存储介质 |
CN111625370A (zh) * | 2019-02-27 | 2020-09-04 | 杭州海康威视系统技术有限公司 | 一种消息推送方法、装置、电子设备及存储介质 |
CN112206509A (zh) * | 2020-10-12 | 2021-01-12 | 上海酷量信息技术有限公司 | 一种根据服务器状态动态发送通知的系统和方法 |
CN113434301A (zh) * | 2021-07-19 | 2021-09-24 | 深圳市链融科技股份有限公司 | 信息推送方法、装置、计算机设备及存储介质 |
CN113868524A (zh) * | 2021-09-27 | 2021-12-31 | 支付宝(杭州)信息技术有限公司 | 一种推送内容确定方法及装置 |
CN115396498A (zh) * | 2022-07-12 | 2022-11-25 | 青岛云天励飞科技有限公司 | 信息发布方法、装置、系统、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101674318A (zh) * | 2008-09-11 | 2010-03-17 | 北大方正集团有限公司 | 一种向移动设备定时推送数据的方法 |
CN102004993A (zh) * | 2010-11-09 | 2011-04-06 | 中国电信股份有限公司 | 信息推送方法和系统 |
CN102075531A (zh) * | 2010-12-27 | 2011-05-25 | 北京像素软件科技股份有限公司 | 一种为客户端传输数据的方法 |
EP2446345A1 (en) * | 2009-06-26 | 2012-05-02 | Hitachi, Ltd. | Storage system and controlling methods for the same |
-
2013
- 2013-08-19 CN CN2013103609731A patent/CN103428290A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101674318A (zh) * | 2008-09-11 | 2010-03-17 | 北大方正集团有限公司 | 一种向移动设备定时推送数据的方法 |
EP2446345A1 (en) * | 2009-06-26 | 2012-05-02 | Hitachi, Ltd. | Storage system and controlling methods for the same |
CN102004993A (zh) * | 2010-11-09 | 2011-04-06 | 中国电信股份有限公司 | 信息推送方法和系统 |
CN102075531A (zh) * | 2010-12-27 | 2011-05-25 | 北京像素软件科技股份有限公司 | 一种为客户端传输数据的方法 |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105577570A (zh) * | 2015-12-15 | 2016-05-11 | 重庆大学 | 一种支持业务报文时序逻辑的算法 |
CN105577570B (zh) * | 2015-12-15 | 2019-05-14 | 重庆大学 | 一种支持业务报文时序逻辑的算法 |
CN106254443A (zh) * | 2016-07-28 | 2016-12-21 | 乐视控股(北京)有限公司 | 消息推送方法及装置 |
CN108074189A (zh) * | 2016-11-14 | 2018-05-25 | 平安科技(深圳)有限公司 | 保单推送方法和装置 |
CN106790388A (zh) * | 2016-11-24 | 2017-05-31 | 北京奇虎科技有限公司 | 一种进行数据更新的方法和移动终端 |
CN107172182A (zh) * | 2017-06-06 | 2017-09-15 | 深圳市金立通信设备有限公司 | 一种消息推送方法、消息推送服务器及终端 |
WO2019019652A1 (zh) * | 2017-07-24 | 2019-01-31 | 深圳壹账通智能科技有限公司 | 推送信息的处理方法、装置、计算机设备和存储介质 |
CN107527291A (zh) * | 2017-08-03 | 2017-12-29 | 平安科技(深圳)有限公司 | 一种投保方法、设备及存储介质 |
CN107528922A (zh) * | 2017-09-29 | 2017-12-29 | 深圳市金立通信设备有限公司 | 一种消息推送方法、终端及计算机可读存储介质 |
CN107911484B (zh) * | 2017-12-13 | 2020-07-07 | 浪潮软件股份有限公司 | 一种消息处理的方法及装置 |
CN107911484A (zh) * | 2017-12-13 | 2018-04-13 | 浪潮软件股份有限公司 | 一种消息处理的方法及装置 |
CN108769232A (zh) * | 2018-06-07 | 2018-11-06 | Oppo(重庆)智能科技有限公司 | 应用资源推送方法、装置、设备及存储介质 |
CN111625370A (zh) * | 2019-02-27 | 2020-09-04 | 杭州海康威视系统技术有限公司 | 一种消息推送方法、装置、电子设备及存储介质 |
CN111625370B (zh) * | 2019-02-27 | 2023-10-10 | 杭州海康威视系统技术有限公司 | 一种消息推送方法、装置、电子设备及存储介质 |
CN112206509A (zh) * | 2020-10-12 | 2021-01-12 | 上海酷量信息技术有限公司 | 一种根据服务器状态动态发送通知的系统和方法 |
CN113434301A (zh) * | 2021-07-19 | 2021-09-24 | 深圳市链融科技股份有限公司 | 信息推送方法、装置、计算机设备及存储介质 |
CN113868524A (zh) * | 2021-09-27 | 2021-12-31 | 支付宝(杭州)信息技术有限公司 | 一种推送内容确定方法及装置 |
CN115396498A (zh) * | 2022-07-12 | 2022-11-25 | 青岛云天励飞科技有限公司 | 信息发布方法、装置、系统、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103428290A (zh) | 数据推送方法和设备 | |
CN109684358B (zh) | 数据查询的方法和装置 | |
CN108776934B (zh) | 分布式数据计算方法、装置、计算机设备及可读存储介质 | |
US20170075680A1 (en) | Systems and Methods for Controlling Application Updates Across a Wireless Interface | |
US20110231551A1 (en) | Network resource management with prediction | |
WO2014026613A1 (zh) | 网络带宽分配方法及终端 | |
CN110673948B (zh) | 一种云游戏资源调度方法、服务器及存储介质 | |
WO2017143981A1 (zh) | 服务处理 | |
US20140317284A1 (en) | Managing data usage of a computing device | |
CN103516585A (zh) | 一种实现消息优先级分发的方法及系统 | |
CN106131185B (zh) | 一种视频数据的处理方法、装置及系统 | |
CN105991707B (zh) | 多媒体交互方法、服务器及系统 | |
CN104734997A (zh) | 确定因特网连接带宽划分规则的计算机实现的方法和系统 | |
CN110362257B (zh) | 一种数据处理方法、展示方法和客户端 | |
CN111131841A (zh) | 直播间接入方法、装置、电子设备及存储介质 | |
CN112860974A (zh) | 计算资源的调度方法、装置、电子设备和存储介质 | |
CN106254443A (zh) | 消息推送方法及装置 | |
CN105141978A (zh) | 视频访问控制方法、装置和云服务器 | |
CN102981973A (zh) | 在存储系统中执行请求的方法 | |
CN105307208A (zh) | 一种移动终端的无线网络资源分配方法、装置及移动终端 | |
WO2022062981A1 (zh) | 资源调度方法和系统、电子设备及计算机可读存储介质 | |
CN103685485A (zh) | 移动终端VoIP通讯音频管理系统 | |
CN103685295A (zh) | 一种下载多媒体文件的方法、终端及系统 | |
CN103631691A (zh) | 一种磁盘阵列监控系统及其方法 | |
CN102420732B (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 | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20131204 |