CN107979644B - 防止高并发的信息包下载方法、电子设备、存储介质 - Google Patents
防止高并发的信息包下载方法、电子设备、存储介质 Download PDFInfo
- Publication number
- CN107979644B CN107979644B CN201711242264.8A CN201711242264A CN107979644B CN 107979644 B CN107979644 B CN 107979644B CN 201711242264 A CN201711242264 A CN 201711242264A CN 107979644 B CN107979644 B CN 107979644B
- Authority
- CN
- China
- Prior art keywords
- packet
- client
- download
- downloading
- information
- 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
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/72—Admission control; Resource allocation using reservation actions during connection setup
-
- 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/01—Protocols
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
- H04L67/1053—Group management mechanisms with pre-configuration of logical or physical connections with a determined number of other peers
- H04L67/1057—Group management mechanisms with pre-configuration of logical or physical connections with a determined number of other peers involving pre-assessment of levels of reputation of peers
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1068—Discovery involving direct consultation or announcement among potential requesting and potential source peers
-
- 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/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种防止高并发的信息包下载方法、电子设备、存储介质,其方法包括:根据下载环境信息,调整信息包的当前下载概率;接收客户端发送的信息包查询请求,根据当前下载概率和信息包查询请求,判断是否供客户端下载信息包;若是,则响应信息包查询请求,将信息包下载指令发送给客户端,以供客户端下载信息包。本发明根据下载环境信息,实现对信息包下载的可控,避免出现大量用户均同时下载信息包,高并发下载导致的下载占用带宽峰值过高,企业带宽花费成本过高的情况。同时,也解决了高并发下载信息包时,造成的服务器拥堵,下载速度较慢的问题,使得用户在下载信息包时,可以得到较快的下载速度,减轻服务器运行压力。
Description
技术领域
本发明涉及网络领域,具体涉及一种防止高并发的信息包下载方法、电子设备、存储介质。
背景技术
静默下载即在用户开机或用户启动某应用后,将客户端已安装的应用的版本信息与服务器中应用的版本信息进行比较,若客户端已安装的应用的版本较低时,直接将服务器中版本较高的应用的安装包下载至客户端,进行安装,整个过程是静默完成的,不需要用户手动下载。
当需要下载的应用的大小较大时,如50M,或者待下载的用户基数较多,当数量较多的用户均在同一时间下载该应用时,会导致占用较多的服务器带宽,一方面造成服务器拥堵,下载速度较慢;另一方面,对于企业而言,其峰值带宽越高,花费的成本也越高。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的防止高并发的信息包下载方法、电子设备、存储介质。
根据本发明的一个方面,提供了一种防止高并发的信息包下载方法,其包括:
根据下载环境信息,调整信息包的当前下载概率;
接收客户端发送的信息包查询请求,根据当前下载概率和信息包查询请求,判断是否供客户端下载信息包;
若是,则响应信息包查询请求,将信息包下载指令发送给客户端,以供客户端下载信息包。
根据本发明的另一方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;
存储器用于存放至少一可执行指令,可执行指令使处理器执行以下操作:
根据下载环境信息,调整信息包的当前下载概率;
接收客户端发送的信息包查询请求,根据当前下载概率和信息包查询请求,判断是否供客户端下载信息包;
若是,则响应信息包查询请求,将信息包下载指令发送给客户端,以供客户端下载信息包。
根据本发明的又一方面,提供了一种计算机存储介质,存储介质中存储有至少一可执行指令,可执行指令使处理器执行以下操作:
根据下载环境信息,调整信息包的当前下载概率;
接收客户端发送的信息包查询请求,根据当前下载概率和信息包查询请求,判断是否供客户端下载信息包;
若是,则响应信息包查询请求,将信息包下载指令发送给客户端,以供客户端下载信息包。
根据本发明提供的防止高并发的信息包下载方法、电子设备、存储介质,根据下载环境信息,调整信息包的当前下载概率;接收客户端发送的信息包查询请求,根据当前下载概率和信息包查询请求,判断是否供客户端下载信息包;若是,则响应信息包查询请求,将信息包下载指令发送给客户端,以供客户端下载信息包。本发明根据下载环境信息,实现对信息包下载的可控,避免出现大量用户均同时下载信息包,高并发下载导致的下载占用带宽峰值过高,企业带宽花费成本过高的情况。同时,也解决了高并发下载信息包时,造成的服务器拥堵,下载速度较慢的问题,使得用户在下载信息包时,可以得到较快的下载速度,减轻服务器运行压力。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明实施例一的防止高并发的信息包下载方法的流程图;
图2示出了根据本发明实施例二的防止高并发的信息包下载方法的流程图;
图3示出了根据本发明实施例三的防止高并发的信息包下载方法的流程图;
图4示出了一种下载概率曲线示意图;
图5示出了根据本发明实施例五的一种电子设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
实施例一
图1示出了根据本发明实施例一的防止高并发的信息包下载方法的流程图,如图1所示,防止高并发的信息包下载方法具体包括如下步骤:
步骤S101,根据下载环境信息,调整信息包的当前下载概率。
下载环境信息包括了下载可用带宽值(如2G)、待下载用户基数、待下载信息包大小等。根据这些下载环境信息,调整信息包的当前下载概率。具体的,当下载可用带宽值较小,待下载用户基数较大,待下载信息包较大时,可以先将信息包的当前下载概率设置为较小概率。随着待下载用户基数的减少,将信息包的当前下载概率调整为较大概率;或者,下载可用带宽值最够大,待下载信息包大小很小(仅几M或几百k时),下载该待下载信息包所占用的带宽很小,可将信息包的当前下载概率设置为较大概率。
步骤S102,接收客户端发送的信息包查询请求,根据当前下载概率和信息包查询请求,判断是否供客户端下载信息包。
客户端发送的信息包查询请求中携带有客户端已安装的信息包版本信息(若客户端未安装信息包,则没有版本信息)、客户端用户信息等。进一步,客户端用户信息包括客户端在信息包对应的应用中注册的账户信息、客户端使用者的使用偏好信息等。
将客户端已安装的信息包版本信息与服务器的信息包版本信息进行比较,来判断客户端是否需要下载信息包。具体的,若客户端已安装的信息包版本信息不同于服务器的信息包版本信息时,客户端需要下载信息包。或者,根据客户端用户信息,判断该信息包适用于该客户端,但该客户端还未安装该信息包时,可认为客户端需要下载信息包。进一步,根据当前下载概率,构建一个随机函数,生成一个允许下载区间。如当前下载概率为30%,生成允许下载区间为0-0.3,值落入0-0.3区间范围的为允许下载;值落入0.4-1区间的为不允许下载。根据接收客户端发送的信息包查询请求,利用随机函数为客户端生成一个下载随机数值。下载随机数值生成时,还可以根据信息包查询请求中携带的客户端的账户信息,对应的微调下载随机数值。如根据账户信息获取对应的登录信息,以及,客户端使用信息包对应的应用的次数、频率、更新频率、更新时间等,根据不同客户端对应的不同的登录信息、应用的次数、频率、更新频率、更新时间等,设置一个对下载随机数值微调的幅度。判断客户端的下载随机数值是否落入允许下载区间,若下载随机数值为0.2,落入0-0.3允许下载区间,响应客户端发送的信息包查询请求,执行步骤S103;若下载随机数值为0.5,没有落入0-0.3允许下载区间,则响应客户端发送的信息包查询请求,但不将信息包下载指令发送给客户端,客户端不会继续下载信息包,或者发送不下载指令给客户端,客户端根据对不下载指令的解析,不再下载该信息包。即客户端不继续执行与信息包下载相关的操作,不再发送信息包下载请求。
将客户端已安装的信息包版本信息与服务器的信息包版本信息进行比较,来判断客户端是否需要下载信息包。具体的,若客户端已安装的信息包版本信息等于服务器的信息包版本信息时,客户端不需要下载信息包,则不需要再发送信息包下载指令给客户端,客户端不继续执行与信息包下载相关的操作,不再发送信息包下载请求。
步骤S103,响应信息包查询请求,将信息包下载指令发送给客户端,以供客户端下载信息包。
当判断客户端需要下载信息包时,将信息包下载指令发送给客户端。由客户端对信息包下载指令进行解析。信息包下载指令中可以包含信息包下载地址。当客户端解析信息包下载指令后,得到明确的允许下载该信息包的指令,根据信息包下载指令中包含的信息包下载地址,向服务器发送信息包下载的请求,进而下载该信息包;或者信息包下载指令中不包含信息包下载地址,客户端解析信息包下载指令,得到明确的允许下载该信息包的指令,使用客户端内置的信息包下载地址,向服务器发送信息包下载的请求,进而下载该信息包。
其中,信息包可以为应用安装包、更新插件、表情包等信息包。客户端根据信息包的具体内容,信息包为应用安装包,则客户端在下载信息包后,自动安装该应用安装包;信息包为更新插件,则客户端在下载信息包后,自动更新该更新插件;信息包为表情包,则客户端在下载信息包后,自动设置表情包。
根据本发明提供的防止高并发的信息包下载方法,根据下载环境信息,调整信息包的当前下载概率;接收客户端发送的信息包查询请求,根据当前下载概率和信息包查询请求,判断是否供客户端下载信息包;若是,则响应信息包查询请求,将信息包下载指令发送给客户端,以供客户端下载信息包。本发明根据下载环境信息,实现对信息包下载的可控,避免出现大量用户均同时下载信息包,高并发下载导致的下载占用带宽峰值过高,企业带宽花费成本过高的情况。同时,也解决了高并发下载信息包时,造成的服务器拥堵,下载速度较慢的问题,使得用户在下载信息包时,可以得到较快的下载速度,减轻服务器运行压力。
实施例二
图2示出了根据本发明实施例二的防止高并发的信息包下载方法的流程图,如图2所示,防止高并发的信息包下载方法包括如下步骤:
步骤S201,获取实时的下载可用带宽值以及当前活跃用户总数,并统计其中已下载的用户总数。
步骤S202,根据当前活跃用户总数和已下载的用户总数,计算得到实时的待下载用户基数。
根据企业采购的带宽值,以及当前实时的已占用的带宽值,可以得到实时的下载可用带宽值。下载可用带宽值=采购的带宽值-当前实时的已占用的带宽值。
当前活跃用户总数可以通过签到、登录、点击页面、发送信息包下载请求等方式统计得到,同时,统计当前活跃用户中已下载的用户总数,统计时可以根据客户端信息包版本信息与服务器信息包版本信息比较,版本信息相同的,即用户为已下载用户;或者在客户端下载了信息包后,将客户端的用户标记为已下载用户等,进而可以统计已下载的用户总数。实时的待下载用户基数=当前活跃用户总数-已下载的用户总数。
由于实时的下载可用带宽值、当前活跃用户总数和已下载的用户总数都是实时可变的,因此,得到的实时的下载可用带宽值和实时的待下载用户基数都是实时可变的。
步骤S203,根据实时的下载环境信息,动态调整信息包的当前下载概率。
根据实时的下载环境信息中包含的实时的下载可用带宽值、实时的待下载用户基数,以及不变的待下载信息包大小,可以动态调整信息包的当前下载概率。具体的,如用实时的下载可用带宽值除以待下载信息包大小,再除以实时的待下载用户基数,可以得到一个数值。根据得到的数值确定一个信息包的当前下载概率。由于实时的下载可用带宽值、实时的待下载用户基数会实时变化,随着已下载的用户总数越来越大,实时的待下载用户基数会越来越小,对应的动态调整信息包的当前下载概率,使信息包的当前下载概率越来越接近100%。
进一步,为预防其他可能突发的带宽消耗情况,还可以将根据数值得到的信息包的当前下载概率进行微调,如得到的信息包的当前下载概率为40%,可以将其微调为30%,以预留出一部分带宽应对可能的突发带宽消耗情况。
步骤S204,接收客户端发送的信息包查询请求,根据当前下载概率和信息包查询请求,判断是否供客户端下载信息包。
步骤S205,响应信息包查询请求,将信息包下载指令发送给客户端,以供客户端下载信息包。
以上步骤可以参考实施例一中的步骤S102-S103的描述,在此不再赘述。
根据本发明提供的防止高并发的信息包下载方法,根据实时的下载环境信息,对信息包的当前下载概率进行动态的调整,使信息包的下载更符合当前的下载环境,更有效的避免下载占用带宽峰值过高的情况出现,改善企业带宽花费成本过高的情况。同时,也解决了高并发下载信息包时,造成的服务器拥堵,下载速度较慢的问题,使得用户在下载信息包时,可以得到较快的下载速度,减轻服务器运行压力。
实施例三
图3示出了根据本发明实施例三的防止高并发的信息包下载方法的流程图,如图3所示,防止高并发的信息包下载方法包括如下步骤:
步骤S301,根据下载环境信息,确定随时间参数而变化的下载概率曲线。
根据下载环境信息中的下载可用带宽值、待下载用户基数、待下载信息包大小等信息,可以预先确定一条随时间而变化的下载概率曲线。如最初时间,由于待下载用户基数较大,对应的下载概率较低,随时间变化,待下载用户基数变小,对应的下载概率会调高,形成一条随时间参数而变化的下载概率曲线。如图4所示的下载概率曲线示意图,横轴代表时间,纵轴代表下载概率。在信息包最初开始下载时,其下载概率较低,随着时间推移,逐步调高下载概率,直至下载概率为100%,即允许任何客户端下载信息包。
下载概率曲线根据预先收集的可用带宽值、待下载用户基数、待下载信息包大小等信息预先确定,但下载概率曲线还可以随着时间变化,根据实际下载过程中变化的可用带宽值、待下载用户基数等再进行相应的调整。
步骤S302,根据当前时间信息查询下载概率曲线,得到信息包的当前下载概率。
根据当前时间信息查询下载概率曲线的横轴,相应的可以得到纵轴对应的信息包的当前下载概率。
步骤S303,接收客户端周期性发送的信息包查询请求。
步骤S304,通过比对信息包版本信息判断客户端是否需要下载信息包。
客户端发送的信息包查询请求中携带有客户端已安装的信息包版本信息(若客户端未安装信息包,则没有版本信息)、客户端用户信息等。进一步,客户端用户信息包括客户端在信息包对应的应用中注册的账户信息、客户端使用者的使用偏好信息等。
客户端可以在开机启动时、应用启动时,或者预设间隔时间对应的发送信息包查询请求。客户端可以在预设时间间隔内仅发送一次信息包查询请求,如一天或一段时间内仅发送一次信息包查询请求,具体预设时间间隔根据实施情况确定。接收到客户端周期性发送的信息包查询请求后,先比对客户端本地信息包版本信息与服务器待下载信息包版本信息是否相同,若版本信息相同,则不需要再发送信息包下载指令给客户端,客户端不继续执行与信息包下载相关的操作,不再发送信息包下载请求。若版本信息不同,客户端本地信息包版本信息低于服务器待下载信息包版本信息,判断客户端需要下载信息包,执行步骤S305。
当信息包查询请求中未携带有客户端已安装的信息包版本信息时,即客户端还没有安装该信息包时,判断客户端需要下载信息包,执行步骤S305。进一步,还可以根据客户端用户信息,判断该信息包是否适用于该客户端,如根据客户端使用者的使用偏好信息判断该信息包适用于该客户端,可认为客户端需要下载信息包,执行步骤S305。
步骤S305,根据当前下载概率,判断是否供客户端下载信息包。
步骤S306,响应信息包查询请求,将信息包下载指令发送给客户端,以供客户端下载信息包。
以上步骤可以参考实施例一中的步骤S102-S103的描述,在此不再赘述。
根据本发明提供的防止高并发的信息包下载方法,根据下载环境信息,预先设置随时间参数而变化的下载概率曲线,根据当前时间信息查询下载概率曲线,得到信息包的当前下载概率。根据得到的当前下载概率对应的响应客户端发送的信息包查询请求,响应信息包查询请求,将信息包下载指令发送给客户端,以供客户端下载信息包,同时避免下载占用带宽峰值过高的情况出现,改善企业带宽花费成本过高的情况。进一步,还可以随着时间变化,根据实际下载过程中变化的可用带宽值、待下载用户基数等下载环境信息对下载概率曲线进行相应的调整,以更适应当前的下载环境,达到更好的下载效果。对于接收到的客户端周期性发送的信息包查询请求进行验证,当客户端需要下载时,才对其进行响应,避免信息包重复下载的情况,避免客户端和服务器双方带宽不必要的浪费。
实施例四
本申请实施例四提供了一种非易失性计算机存储介质,计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的防止高并发的信息包下载方法。
可执行指令具体可以用于使得处理器执行以下操作:
根据下载环境信息,调整信息包的当前下载概率;
接收客户端发送的信息包查询请求,根据当前下载概率和信息包查询请求,判断是否供客户端下载信息包;
若是,则响应信息包查询请求,将信息包下载指令发送给客户端,以供客户端下载信息包。
在一种可选的实施方式中,下载环境信息包括:下载可用带宽值、待下载用户基数和/或待下载信息包大小。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:获取实时的下载可用带宽值以及当前活跃用户总数,并统计其中已下载的用户总数;根据当前活跃用户总数和已下载的用户总数,计算得到实时的待下载用户基数;其中,实时的待下载用户基数=当前活跃用户总数-已下载的用户总数;根据实时的下载环境信息,动态调整信息包的当前下载概率。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:根据下载环境信息,确定随时间参数而变化的下载概率曲线;根据当前时间信息查询下载概率曲线,得到信息包的当前下载概率。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:根据当前下载概率,构建随机函数,生成允许下载区间;接收客户端发送的信息包查询请求,利用随机函数为客户端生成下载随机数值;判断客户端的下载随机数值是否落入允许下载区间;若是,响应信息包查询请求,将信息包下载指令发送给客户端,以供客户端下载信息包。
在一种可选的实施方式中,可执行指令进一步使处理器执行以下操作:接收客户端周期性发送的信息包查询请求;其中,信息包查询请求中携带有客户端信息包版本信息和/或客户端用户信息;通过比对信息包版本信息判断客户端是否需要下载信息包;若是,则执行根据当前下载概率,判断是否供客户端下载信息包的步骤。
实施例五
图5示出了根据本发明实施例五的一种电子设备的结构示意图,本发明具体实施例并不对电子设备的具体实现做限定。
如图5所示,该电子设备可以包括:处理器(processor)502、通信接口(Communications Interface)504、存储器(memory)506、以及通信总线508。
其中:
处理器502、通信接口504、以及存储器506通过通信总线508完成相互间的通信。
通信接口504,用于与其它设备比如客户端或其它服务器等的网元通信。
处理器502,用于执行程序510,具体可以执行上述防止高并发的信息包下载方法实施例中的相关步骤。
具体地,程序510可以包括程序代码,该程序代码包括计算机操作指令。
处理器502可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。服务器包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器506,用于存放程序510。存储器506可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序510具体可以用于使得处理器502执行以下操作:
在一种可选的实施方式中,程序510用于使得处理器502根据下载环境信息,调整信息包的当前下载概率;接收客户端发送的信息包查询请求,根据当前下载概率和信息包查询请求,判断是否供客户端下载信息包;若是,则响应信息包查询请求,将信息包下载指令发送给客户端,以供客户端下载信息包。
在一种可选的实施方式中,下载环境信息包括:下载可用带宽值、待下载用户基数和/或待下载信息包大小。
在一种可选的实施方式中,程序510用于使得处理器502获取实时的下载可用带宽值以及当前活跃用户总数,并统计其中已下载的用户总数;根据当前活跃用户总数和已下载的用户总数,计算得到实时的待下载用户基数;其中,实时的待下载用户基数=当前活跃用户总数-已下载的用户总数;根据实时的下载环境信息,动态调整信息包的当前下载概率。
在一种可选的实施方式中,程序510用于使得处理器502根据下载环境信息,确定随时间参数而变化的下载概率曲线;根据当前时间信息查询下载概率曲线,得到信息包的当前下载概率。
在一种可选的实施方式中,程序510用于使得处理器502根据当前下载概率,构建随机函数,生成允许下载区间;接收客户端发送的信息包查询请求,利用随机函数为客户端生成下载随机数值;判断客户端的下载随机数值是否落入允许下载区间;若是,响应信息包查询请求,将信息包下载指令发送给客户端,以供客户端下载信息包。
在一种可选的实施方式中,程序510用于使得处理器502接收客户端周期性发送的信息包查询请求;其中,信息包查询请求中携带有客户端信息包版本信息和/或客户端用户信息;通过比对信息包版本信息判断客户端是否需要下载信息包;若是,则执行根据当前下载概率,判断是否供客户端下载信息包的步骤。
程序510中各步骤的具体实现可以参见上述防止高并发的信息包下载实施例中的相应步骤中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
通过本实施例提供的方案,根据下载环境信息,调整信息包的当前下载概率;接收客户端发送的信息包查询请求,根据当前下载概率和信息包查询请求,判断是否供客户端下载信息包;若是,则响应信息包查询请求,将信息包下载指令发送给客户端,以供客户端下载信息包。本发明根据下载环境信息,实现对信息包下载的可控,避免出现大量用户均同时下载信息包,高并发下载导致的下载占用带宽峰值过高,企业带宽花费成本过高的情况。同时,也解决了高并发下载信息包时,造成的服务器拥堵,下载速度较慢的问题,使得用户在下载信息包时,可以得到较快的下载速度,减轻服务器运行压力。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (12)
1.一种防止高并发的信息包下载方法,其包括:
获取实时的下载可用带宽值以及当前活跃用户总数,并统计其中已下载的用户总数;
根据当前活跃用户总数和已下载的用户总数,计算得到实时的待下载用户基数;其中,实时的待下载用户基数=当前活跃用户总数-已下载的用户总数;
根据实时的下载环境信息,动态调整信息包的当前下载概率;其中,所述实时的下载环境信息包括:实时的下载可用带宽值、实时的待下载用户基数和/或待下载信息包大小;
接收客户端发送的信息包查询请求,根据所述当前下载概率和所述信息包查询请求,判断是否供客户端下载所述信息包;
若是,则响应所述信息包查询请求,将所述信息包下载指令发送给所述客户端,以供客户端下载所述信息包。
2.根据权利要求1所述的方法,其中,所述根据下载环境信息,调整信息包的当前下载概率进一步包括:
根据下载环境信息,确定随时间参数而变化的下载概率曲线;
根据当前时间信息查询所述下载概率曲线,得到信息包的当前下载概率。
3.根据权利要求1或2所述的方法,其中,所述接收客户端发送的信息包查询请求,根据所述当前下载概率和所述信息包查询请求,判断是否供客户端下载所述信息包进一步包括:
根据所述当前下载概率,构建随机函数,生成允许下载区间;
接收客户端发送的信息包查询请求,利用随机函数为所述客户端生成下载随机数值;
判断所述客户端的下载随机数值是否落入所述允许下载区间;若是,响应所述信息包查询请求,将所述信息包下载指令发送给所述客户端,以供客户端下载所述信息包。
4.根据权利要求1或2所述的方法,其中,所述接收客户端发送的信息包查询请求具体为:接收客户端周期性发送的信息包查询请求;其中,所述信息包查询请求中携带有客户端信息包版本信息和/或客户端用户信息;
在所述接收客户端发送的信息包查询请求之后,所述方法还包括:通过比对信息包版本信息判断所述客户端是否需要下载所述信息包;
若是,则执行所述根据所述当前下载概率,判断是否供客户端下载所述信息包的步骤。
5.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行以下操作:
获取实时的下载可用带宽值以及当前活跃用户总数,并统计其中已下载的用户总数;
根据当前活跃用户总数和已下载的用户总数,计算得到实时的待下载用户基数;其中,实时的待下载用户基数=当前活跃用户总数-已下载的用户总数;
根据实时的下载环境信息,动态调整信息包的当前下载概率;其中,所述实时的下载环境信息包括:实时的下载可用带宽值、实时的待下载用户基数和/或待下载信息包大小;
接收客户端发送的信息包查询请求,根据所述当前下载概率和所述信息包查询请求,判断是否供客户端下载所述信息包;
若是,则响应所述信息包查询请求,将所述信息包下载指令发送给所述客户端,以供客户端下载所述信息包。
6.根据权利要求5所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
根据下载环境信息,确定随时间参数而变化的下载概率曲线;
根据当前时间信息查询所述下载概率曲线,得到信息包的当前下载概率。
7.根据权利要求5或6所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
根据所述当前下载概率,构建随机函数,生成允许下载区间;
接收客户端发送的信息包查询请求,利用随机函数为所述客户端生成下载随机数值;
判断所述客户端的下载随机数值是否落入所述允许下载区间;若是,响应所述信息包查询请求,将所述信息包下载指令发送给所述客户端,以供客户端下载所述信息包。
8.根据权利要求5或6所述的电子设备,所述可执行指令进一步使所述处理器执行以下操作:
接收客户端周期性发送的信息包查询请求;其中,所述信息包查询请求中携带有客户端信息包版本信息和/或客户端用户信息;
通过比对信息包版本信息判断所述客户端是否需要下载所述信息包;
若是,则执行所述根据所述当前下载概率,判断是否供客户端下载所述信息包的步骤。
9.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行以下操作:
获取实时的下载可用带宽值以及当前活跃用户总数,并统计其中已下载的用户总数;
根据当前活跃用户总数和已下载的用户总数,计算得到实时的待下载用户基数;其中,实时的待下载用户基数=当前活跃用户总数-已下载的用户总数;
根据实时的下载环境信息,动态调整信息包的当前下载概率;其中,所述实时的下载环境信息包括:实时的下载可用带宽值、实时的待下载用户基数和/或待下载信息包大小;
接收客户端发送的信息包查询请求,根据所述当前下载概率和所述信息包查询请求,判断是否供客户端下载所述信息包;
若是,则响应所述信息包查询请求,将所述信息包下载指令发送给所述客户端,以供客户端下载所述信息包。
10.根据权利要求9所述的计算机存储介质,所述可执行指令进一步使处理器执行以下操作:
根据下载环境信息,确定随时间参数而变化的下载概率曲线;
根据当前时间信息查询所述下载概率曲线,得到信息包的当前下载概率。
11.根据权利要求9或10所述的计算机存储介质,所述可执行指令进一步使处理器执行以下操作:
根据所述当前下载概率,构建随机函数,生成允许下载区间;
接收客户端发送的信息包查询请求,利用随机函数为所述客户端生成下载随机数值;
判断所述客户端的下载随机数值是否落入所述允许下载区间;若是,响应所述信息包查询请求,将所述信息包下载指令发送给所述客户端,以供客户端下载所述信息包。
12.根据权利要求9或10所述的计算机存储介质,所述可执行指令进一步使处理器执行以下操作:
接收客户端周期性发送的信息包查询请求;其中,所述信息包查询请求中携带有客户端信息包版本信息和/或客户端用户信息;
通过比对信息包版本信息判断所述客户端是否需要下载所述信息包;
若是,则执行所述根据所述当前下载概率,判断是否供客户端下载所述信息包的步骤。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711242264.8A CN107979644B (zh) | 2017-11-30 | 2017-11-30 | 防止高并发的信息包下载方法、电子设备、存储介质 |
PCT/CN2018/080048 WO2019104911A1 (zh) | 2017-11-30 | 2018-03-22 | 防止高并发的信息包下载方法、电子设备、存储介质 |
US16/765,290 US11146660B2 (en) | 2017-11-30 | 2018-03-22 | Information packet download method for preventing high concurrency, electronic device and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711242264.8A CN107979644B (zh) | 2017-11-30 | 2017-11-30 | 防止高并发的信息包下载方法、电子设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107979644A CN107979644A (zh) | 2018-05-01 |
CN107979644B true CN107979644B (zh) | 2019-02-26 |
Family
ID=62008782
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711242264.8A Active CN107979644B (zh) | 2017-11-30 | 2017-11-30 | 防止高并发的信息包下载方法、电子设备、存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11146660B2 (zh) |
CN (1) | CN107979644B (zh) |
WO (1) | WO2019104911A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109412959B (zh) * | 2018-09-10 | 2022-08-16 | 广州小鹏汽车科技有限公司 | 一种车辆ota升级限流控制方法、***和装置 |
CN110401702B (zh) * | 2019-07-09 | 2022-03-25 | 北京达佳互联信息技术有限公司 | 一种离线包下载方法、装置、电子设备和存储介质 |
CN112579138A (zh) * | 2020-12-02 | 2021-03-30 | 京东数字科技控股股份有限公司 | 页面展示方法、装置、电子设备及存储介质 |
CN112887146A (zh) * | 2021-01-28 | 2021-06-01 | 杭州迪普科技股份有限公司 | 网络节点升级方法、装置与电子设备 |
CN113568626B (zh) * | 2021-06-29 | 2024-04-09 | 北京百度网讯科技有限公司 | 动态打包、应用程序包开启方法、装置和电子设备 |
CN115002216B (zh) * | 2022-04-27 | 2024-02-23 | 北京奇艺世纪科技有限公司 | 一种下载方法、装置、终端设备以及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103997522A (zh) * | 2014-05-16 | 2014-08-20 | 广州金山网络科技有限公司 | 一种内容分发网络流量控制方法及终端 |
CN104125158A (zh) * | 2014-07-02 | 2014-10-29 | 广州金山网络科技有限公司 | 一种内容分发网络流量控制方法、装置以及终端 |
CN104348647A (zh) * | 2013-07-31 | 2015-02-11 | 腾讯科技(深圳)有限公司 | 多源带宽调度方法、装置及*** |
CN105681073A (zh) * | 2015-12-25 | 2016-06-15 | 北京奇虎科技有限公司 | 一种更新应用程序的方法及装置 |
CN105721889A (zh) * | 2015-05-15 | 2016-06-29 | 乐视云计算有限公司 | P2p数据下载的方法和装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1931108B1 (en) * | 2006-12-08 | 2011-02-09 | Deutsche Telekom AG | Method and system for peer-to-peer content dissemination |
US9060208B2 (en) * | 2008-01-30 | 2015-06-16 | Time Warner Cable Enterprises Llc | Methods and apparatus for predictive delivery of content over a network |
US20150142481A1 (en) * | 2013-11-15 | 2015-05-21 | Jeff McManus | Apparatus and method for managing access to a resource |
TWI507988B (zh) * | 2014-09-03 | 2015-11-11 | Hon Hai Prec Ind Co Ltd | 伺服器及其分配用戶端設備更新韌體的方法 |
US9952851B2 (en) * | 2015-03-10 | 2018-04-24 | International Business Machines Corporation | Intelligent mobile application update |
CN105847442B (zh) * | 2016-05-27 | 2019-04-02 | 腾讯科技(深圳)有限公司 | 一种下载速度调整方法、后台服务器、终端及*** |
-
2017
- 2017-11-30 CN CN201711242264.8A patent/CN107979644B/zh active Active
-
2018
- 2018-03-22 US US16/765,290 patent/US11146660B2/en active Active
- 2018-03-22 WO PCT/CN2018/080048 patent/WO2019104911A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104348647A (zh) * | 2013-07-31 | 2015-02-11 | 腾讯科技(深圳)有限公司 | 多源带宽调度方法、装置及*** |
CN103997522A (zh) * | 2014-05-16 | 2014-08-20 | 广州金山网络科技有限公司 | 一种内容分发网络流量控制方法及终端 |
CN104125158A (zh) * | 2014-07-02 | 2014-10-29 | 广州金山网络科技有限公司 | 一种内容分发网络流量控制方法、装置以及终端 |
CN105721889A (zh) * | 2015-05-15 | 2016-06-29 | 乐视云计算有限公司 | P2p数据下载的方法和装置 |
CN105681073A (zh) * | 2015-12-25 | 2016-06-15 | 北京奇虎科技有限公司 | 一种更新应用程序的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20200287990A1 (en) | 2020-09-10 |
CN107979644A (zh) | 2018-05-01 |
WO2019104911A1 (zh) | 2019-06-06 |
US11146660B2 (en) | 2021-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107979644B (zh) | 防止高并发的信息包下载方法、电子设备、存储介质 | |
CN110413294B (zh) | 服务发布***、方法、装置和设备 | |
US8458357B2 (en) | Technique for setting network communication parameters | |
CN103781057B (zh) | 一种静默下载升级包的方法及装置 | |
US20140280485A1 (en) | Pre-fetching remote resources | |
EP2787742B1 (en) | Method and system for transmitting network video | |
CN108848530B (zh) | 一种获取网络资源的方法、装置及调度服务器 | |
US7984193B2 (en) | Method and system for conserving power by degrading network connection speed | |
US9058182B2 (en) | Management device for causing devices to update programs and computer readable media | |
CN107193609B (zh) | 应用中功能模块调用方法及装置、电子设备 | |
CN109495433A (zh) | 数据下载方法和装置、存储介质及电子装置 | |
CN105657000A (zh) | 消息传送方法及装置 | |
CN113489575A (zh) | 一种数据传输方法、装置及电子设备 | |
JP2008541549A (ja) | 装置管理システム及びそのシステムにおける設定値セット方法 | |
CN111970320B (zh) | Ota数据包下发流量的控制方法和装置 | |
US8429348B2 (en) | Method and mechanism for delaying writing updates to a data cache | |
CN103927191B (zh) | 函数调用的资源配置方法和装置 | |
CN108572837A (zh) | 软件升级方法、装置、可读存储介质及计算机设备 | |
CN100578484C (zh) | 用于自适应组播文件传输的方法和装置 | |
CN104243568A (zh) | 一种数据流量分享方法和装置 | |
JP5679316B2 (ja) | 情報処理装置及び情報処理プログラム | |
US10536546B2 (en) | Method for managing access to a set of resources delivered via an electronic device | |
CN103023999A (zh) | 一种下发浏览器组件的方法、服务器及相应*** | |
CN111210505A (zh) | 3d模型加载方法、服务器、存储介质、处理器 | |
US20090177746A1 (en) | Terminal managing method, terminal managing apparatus, and mobile communication terminal |
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 |
Effective date of registration: 20220621 Address after: 518054-13098, 13th floor, main tower of marine center, No. 59, Linhai Avenue, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong Patentee after: Shenzhen ZhangYue Animation Technology Co.,Ltd. Address before: 100124 2029e, Sihui building, Chaoyang District, Beijing Patentee before: ZHANGYUE TECHNOLOGY Co.,Ltd. |
|
TR01 | Transfer of patent right |