CN113986276A - 一种软件升级方法及相关装置、存储介质 - Google Patents
一种软件升级方法及相关装置、存储介质 Download PDFInfo
- Publication number
- CN113986276A CN113986276A CN202111123401.2A CN202111123401A CN113986276A CN 113986276 A CN113986276 A CN 113986276A CN 202111123401 A CN202111123401 A CN 202111123401A CN 113986276 A CN113986276 A CN 113986276A
- Authority
- CN
- China
- Prior art keywords
- user
- software
- target
- data packet
- upgrading
- 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
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种软件升级方法及相关装置、存储介质,用于针对用户推送下载,提升下载资源的利用率,从而提升用户的下载体验,避免卡顿与延迟。本申请方法包括:获取软件升级数据包,所述软件升级数据包包括目标软件信息;根据所述目标软件信息确定待升级用户;获取待升级用户的用户画像信息;根据所述用户画像信息制定所述软件升级数据包分发策略;根据所述分发策略将所述软件升级数据包推送至对应的待升级用户,以使所述对应的待升级用户使用所述软件升级数据包进行软件升级。
Description
技术领域
本申请涉及数据处理领域,尤其涉及一种软件升级方法及相关装置、存储介质。
背景技术
互联网中大多数的软件开发采用的是迭代式开发模式或敏捷式开发模式。迭代式开发是指以最短的研发周期先把主要功能搭建起来,可能成品并不是很完美,会出现各种漏洞或体验不完善的地方,但后期会通过客户或者用户的反馈信息,慢慢对其进行完善;敏捷式开发也是指在较短的开发周期提交软件,但敏捷开发的周期更短,更强调应用性而非预见性,当市场需求发生变化时,开发团队需要迅速适应这个变化,并且立即对软件做出相应的调整。
因此,初期的软件就像一个初生的作品,总是需要不断打磨和改进的,就像手机系统一样,要跟随上时代发展并符合用户需求,自然就需要不断去更新。然而对于用户而言,就目前来说,当用户下载了软件后,并不一定会升级到最新版本,如果需要升级,用户得主动请求服务器去判断是否存在该软件的最新版本,且更新时将会下载该软件的全部功能,当用户蜂拥下载该最新版本时,就会导致服务器下载压力大,网络被占速,从而影响用户的下载体验感。
发明内容
本申请实施例提供了一种软件升级及相关装置、存储介质,用于针对用户推送下载,提升下载资源的利用率,从而提升用户的下载体验,避免卡顿与延迟。
本申请实施例在第一方面提供了一种软件升级方法,所述方法包括:
获取软件升级数据包,所述软件升级数据包包括目标软件信息;
根据所述目标软件信息确定待升级用户;
获取待升级用户的用户画像信息;
根据所述用户画像信息制定所述软件升级数据包分发策略;
根据所述分发策略将所述软件升级数据包推送至对应的待升级用户,以使所述对应的待升级用户使用所述软件升级数据包进行软件升级。
可选的,所述软件升级数据包包括至少1个模块化的功能数据包,所述目标软件信息包括软件功能信息;
所述根据所述用户画像信息制定所述软件升级数据包分发策略,具体包括:
确定所述至少1个模块化的功能数据包对应的目标升级用户;
根据所述目标升级用户的用户画像信息制定所述软件升级数据包分发策略。
可选的,所述用户画像信息通过如下方式生成:
采集所述目标软件的用户使用行为数据,所述用户使用行为数据包括使用时间,使用频次,使用功能;
根据所述使用行为数据生成用户画像信息。
可选的,所述根据所述目标升级用户的用户画像信息制定所述软件升级数据包分发策略,具体包括:
确定所述目标升级用户对应的目标功能数据包;
根据所述目标升级用户的使用时间确定所述功能数据包目标分发时间;
所述根据所述分发策略将所述软件升级数据包推送至对应的待升级用户,具体包括:
按照所述目标分发时间将所述目标功能数据包推送至目标升级用户。
可选的,所述根据所述目标升级用户的用户画像信息制定所述软件升级数据包分发策略,具体包括:
确定所述目标升级用户对应的目标功能数据包;
根据所述目标升级用户的使用时间确定所述功能数据包目标分发时间;
根据所述目标升级用户的使用频次确定优先级;
所述根据所述分发策略将所述软件升级数据包推送至对应的待升级用户,具体包括:
按照所述目标分发时间将所述目标功能数据包按照所述优先级依次推送至目标升级用户。
可选的,所述根据所述用户画像信息制定所述软件升级数据包分发策略之后,所述方法还包括:
获取所述软件升级数据包的数据量;
根据所述目标升级用户的数量与所述软件升级数据包的数据量确定最大网络带宽;
所述根据所述分发策略将所述软件升级数据包推送至对应的待升级用户,具体包括:
根据所述最大网络带宽将所述软件升级数据包分发至目标升级用户。
本申请实施例在第二方面提供了一种软件升级装置,所述装置包括:
第一获取单元,用于获取软件升级数据包,所述软件升级数据包包括目标软件信息;
第一确定单元,用于根据所述目标软件信息确定待升级用户;
第二获取单元,用于获取待升级用户的用户画像信息;
第一制定单元,用于根据所述用户画像信息制定所述软件升级数据包分发策略;
推送单元,用于根据所述分发策略将所述软件升级数据包推送至对应的待升级用户,以使所述对应的待升级用户使用所述软件升级数据包进行软件升级。
可选的,所述第一制定单元中的软件升级数据包包括至少1个模块化的功能数据包,所述目标软件信息包括软件功能信息;
所述第一制定单元具体包括:
第二确定模块,用于确定所述至少1个模块化的功能数据包对应的目标升级用户;
第二制定模块,用于根据所述目标升级用户的用户画像信息制定所述软件升级数据包分发策略。
可选的,所述第一制定单元中的用户画像信息通过如下方式生成:采集所述目标软件的用户使用行为数据,所述用户使用行为数据包括使用时间,使用频次,使用功能;
根据所述使用行为数据生成用户画像信息。
可选的,所述第二制定模块具体用于确定所述目标升级用户对应的目标功能数据包;根据所述目标升级用户的使用时间确定所述功能数据包目标分发时间;
所述推送单元具体用于按照所述目标分发时间将所述目标功能数据包推送至目标升级用户。
可选的,所述第二制定模块还可以具体用于确定所述目标升级用户对应的目标功能数据包;根据所述目标升级用户的使用时间确定所述功能数据包目标分发时间;根据所述目标升级用户的使用频次确定优先级;
所述推送单元还可以具体用于按照所述目标分发时间将所述目标功能数据包按照所述优先级依次推送至目标升级用户。
可选的,所述装置还包括:
第三获取单元,用于获取所述软件升级数据包的数据量;
带宽确定单元,用于根据所述目标升级用户的数量与所述软件升级数据包的数据量确定最大网络带宽;
所述推送单元还可以具体用于根据所述最大网络带宽将所述软件升级数据包分发至目标升级用户。
本申请实施例从第三方面提供了一种软件后台管理服务器,所述软件后台管理服务器包括:
处理器、存储器、输入输出单元以及总线;
所述处理器与所述存储器、所述输入输出单元以及所述总线相连;
所述存储器保存有程序,所述处理器调用所述程序以执行如第一方面内容所述的任一项方法。
本申请实施例从第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质上保存有程序,所述程序在计算机上执行时执行如第一方面内容所述的任一项方法。
从以上技术方案可以看出,本申请具有以下优点:
在本申请中,当获取到包含有目标软件信息的软件升级数据包后,可以根据该目标软件信息确定待升级的用户,然后根据待升级用户的用户画像信息制定软件升级数据包分发策略,将软件升级数据包推送至对应的待升级用户。本方案通过对待升级用户的使用行为数据进行大数据分析处理,使得能够精准为每个用户提供定向推送升级服务,减轻了用户蜂拥下载导致的服务器压力,即提升了下载资源的利用率,从而提升用户的下载体验,避免卡顿与延迟。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请中软件升级方法的一种实施例流程示意图;
图2为本申请中软件升级方法的另一种实施例流程示意图;
图3为本申请中软件升级方法的另一种实施例流程示意图;
图4为本申请中软件升级方法的另一种实施例流程示意图;
图5为本申请中软件升级装置的一种实施例结构示意图;
图6为本申请中软件升级装置的另一种实施例结构示意图;
图7为本申请中软件后台管理服务器的一种实施例结构示意图。
具体实施方式
软件技术自19世纪以来,一直不断发展,回顾软件技术发展六十多年的历程,可以认为软件技术的每一次进步,都促进了软件生产力水平的改善与提高。而各类软件在开发过程中或正式发布后,由于存在各种需求或技术限值,通常需要通过更新进行升级并不断完善。
目前软件更新主要有两种思路,一种是根据文件的修改时间进行全局更新,另一种是建立特征值表进行更新。对于第一种软件更新的方式来说,具体的表现形式为:在进行升级时下载包含全部程序文件和数据文件的完整安装包,将高版本的软件安装包中所有的文件以整体替换低版本文件的方式进行升级。然而,这种全量升级有很多弊端,例如,安装包的数据量大,下载时需要占用较多的带宽资源,升级耗时长,从而影响用户的下载体验感。
基于此,本申请提供了软件升级方法及相关装置、存储介质,本申请应用于需要对软件进行升级的用户,可以通过获取到用户使用软件的行为数据,根据该行为数据有针对性的为用户制定对应的软件升级数据包分发策略,最后根据该分发策略将软件升级数据包推送给对应的待升级用户,以实现对对应软件的分批次升级,减轻了用户蜂拥下载导致的服务器压力,即提升了下载资源的利用率,从而提升用户的下载体验,避免了卡顿和延迟。
下面将结合本申请实施例中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参阅图1,本申请从第一方面,提供了一种软件升级方法,该方法的执行主体为服务器,而该服务器具体可以为软件后台管理服务器,用于对对应的软件进行后台管理,该方法包括:
101、服务器获取软件升级数据包,软件升级数据包包括目标软件信息。
服务器作为电子设备,具备承担响应服务请求、承担服务以及保障服务的能力。作为软件的后台管理设备,服务器具有存储软件交互数据,提供软件更新升级的功能。
在本申请实施例中,服务器为了确定服务人群,首先需要获取软件升级数据包。服务器的获取方式可以是通过软件运营方主动上传升级数据包,也可以是软件开发者上传升级数据包。在一些具体的应用场景下,软件的升级数据包需要软件管理方核准后才能使用,因此服务器获取到的软件升级数据包是通过了软件管理方核准后的软件升级数据包。该软件升级数据包包括目标软件信息,具体的,目标软件信息可以包括软件名称,软件标识,版本信息,软件功能信息等。
例如,以车型诊断软件为例,该软件升级数据包的目标软件信息可以包括具体的软件名称如长城车型诊断软件,软件标识GW,版本信息V2.0,软件功能包括读故障码,清故障码,动作测试,在线编程、特殊功能等功能。
102、服务器根据目标软件信息确定待升级用户。
具体的,当服务器获取到软件升级数据包之后,根据该软件升级数据包的目标软件信息中包含的软件名称和/或软件标识来确定使用该目标软件的用户群体A,即待升级用户群体A。
在一个具体的实施例中,以车型诊断软件为例,当服务器获取到车型诊断软件升级数据包后,根据该诊断软件升级数据包中的目标软件信息的车型诊断软件名称如长城车型诊断软件,确定使用该长城车型诊断软件的用户群体为待升级用户群体。再如,以社交软件为例,当服务器获取到社交软件升级数据包后,根据该社交软件升级数据包中的目标软件信息中的软件名称如微信,确定使用微信的用户群体为待升级用户群体。
103、服务器获取待升级用户的用户画像信息。
用户画像是根据用户特征、业务场景和用户行为等信息,构建一个标签化的用户模型,即将所需的用户信息抽象成标签,再利用这些标签将用户形象具体化。为了实现待升级用户的升级数据包精准推送,通过获取待升级用户的用户画像信息,以使得服务器能够基于该用户画像信息制定精准推送策略。
具体的,用户画像通过如下方式生成:采集目标软件的用户使用行为数据,根据用户使用行为数据生成用户画像,其中用户使用行为数据包括使用时间,使用频次和使用功能。
在本申请实施例中,服务器所获取的待升级用户的用户画像信息,既可以是通过后台管理服务器本地获取的分析用户使用行为数据,也可以是通过大数据服务器中获取的分析用户使用行为数据,然后交由大数据服务器进行分析处理,具体此处不做限定。
以车型诊断软件为例,当根据软件升级数据包的目标软件信息确定目标软件为长城车型诊断软件后,确定使用长城车型诊断软件的用户群体为待升级用户群体,然后进一步分析这些待升级用户群体的使用行为数据,得到用户画像,如用户群体a在一个月内使用读故障码和清故障码的次数大于20次,动作测试次数在10-20次之间,特殊功能使用次数在在5次-10次之间,没有使用在线编程功能,且用户群体a经常在上午10点到下午4点之间使用这些功能;用户群体b在一个月内使用读故障码和清故障码的次数在10-20次之间,动作测试次数在5-10次之间,特殊功能使用次数大于10次,在线编程使用次数在5-10次之间,且用户群体b经常在下午2点到下午6点之间使用这些功能;用户群体c在一个月内使用读故障码和清故障码的次数小于10次,没有使用动作测试功能,特殊功能使用次数小于5次,在线编程次数大于10次,且用户群体c经常在下午4点到晚上8点使用这些功能;用户群体d在一个月内使用读故障码和清故障码的次数小于10次,动作测试次数在5-10次之间,在线编程使用次数小于5次,没有使用特殊功能,且用户群体d经常在下午2点到下午6点使用这些功能。
104、服务器根据用户画像信息制定软件升级数据包分发策略。
获取到待升级用户的用户画像后,服务器可以根据用户画像信息制定软件升级数据包的分发策略。具体的,可以通过用户画像中的使用时间确定目标分发时间,使用频次确定分发优先级。
105、服务器根据分发策略将软件升级数据包推送至对应的待升级用户,以使对应的待升级用户使用软件升级数据包进行软件升级。
具体的,为了让用户尽早享受到优化后的软件版本,服务器可以将软件升级数据包按照分发策略推送至对应的待升级用户,以供其对软件进行对应的升级。
具体的,服务器根据用户画像信息制定好软件升级数据包分发策略后,会将软件升级数据包推送给对应的待升级用户,此处所说的数据包推送的方式可以是向用户的移动客户端发送一个通知,这个通知可以是直接携带对应的软件升级数据包的信息,用户点击该信息即可直接下载更新该软件升级数据包;也可以是向用户提供对应的软件升级数据包的下载渠道的信息,供用户点击信息中的渠道链接跳转到目标网页,再对该软件升级数据包进行更新下载。推送的表现形式可以为多种,具体此处不做限定。
在本申请实施例中,服务器可以根据对软件对应的待升级用户进行用户画像信息生成,根据用户画像信息制定对软件升级数据包的分发,以实现对用户有针对性的软件升级数据包推送。这样一来,减轻了用户蜂拥下载导致的服务器压力,即提升了下载资源的利用率,从而提升用户的下载体验,同时还避免了卡顿与延迟。
请参阅图2,本申请实施例提供了另一种软件升级方法,该方法的执行主体为服务器,该服务器具体可以为软件后台管理服务器,用于对对应的软件进行后台管理,该方法包括:
201、服务器获取软件升级数据包,软件升级数据包包括目标软件信息。
202、服务器根据目标软件信息确定待升级用户。
203、服务器获取待升级用户的用户画像信息。
本实施例中步骤201至步骤203与前述实施例中步骤101至步骤103类似,此处不再赘述。
204、服务器确定至少1个模块化的功能数据包对应的目标升级用户。
205、服务器确定目标升级用户对应的目标功能数据包。
206、服务器根据目标升级用户的使用时间确定功能数据包目标分发时间。
207、服务器按照所述目标分发时间将所述目标功能数据包推送至目标升级用户。
在本申请实施例中,该软件升级数据包包括至少1个模块化的功能数据包,目标软件信息包括软件功能信息。模块化的功能数据包具有相互之间耦合程度低,可以独立执行对应的功能而不受其他模块化的功能数据包的影响,同时组合起来能执行完整的软件全部功能。具体的,以车型诊断软件为例,车型诊断软件的功能包括读故障码、清故障码,动作测试,在线编程、特殊功能等功能,车型诊断软件的升级数据包包括模块化的读故障码功能数据包,清故障码功能数据包,动作测试功能数据包,在线编程功能数据包,特殊功能数据包,这些模块化的功能数据包可以独立执行对应的功能如读故障码,清故障码等,而不受其他功能数据包的影响,同时组合起来又形成了一个完整的车型诊断软件升级包,可以完整的执行车辆诊断的所有功能。基于此,服务器在获取软件升级数据包时,可以通过审核控制的方式要求上传的升级包必须是模块化的功能升级包才核准上传至服务器,通过此种方式确保了服务器获取到的软件升级数据包均是模块化的功能数据包。服务器在获取到待升级用户的用户画像信息之后,进一步根据用户画像信息中的使用功能确定功能数据包对应的目标升级用户,然后再根据目标升级用户的画像进一步制定升级数据包分发策略,包括确定目标升级用户对应的目标功能数据包,根据使用时间确定目标功能数据包的目标分发时间。确定升级数据包分发策略后,服务器即可以按照分发策略将升级数据包分发给目标升级用户。
结合上文的例子,以车型诊断软件为例,当本次车型诊断软件的升级数据包包括了读故障码功能数据包,清故障码功能数据包,动作测试功能数据包,在线编程功能数据包,特殊功能数据包,首先根据这些功能数据包确定对应的目标升级用户包括用户群体a,用户群体b,用户群体c,用户群体d。接下来,确定用户群体a的目标功能数据包为读故障码功能数据包、清故障码功能数据包、动作测试功能数据包,特殊功能数据包;用户群体b的目标功能数据包为读故障码功能数据包、清故障码功能数据包、动作测试功能数据包、在线编程功能数据包、特殊功能数据包;用户群体c的目标功能数据包为读故障码功能数据包、清故障码功能数据包、在线编程功能数据包、特殊功能数据包;用户群体d的目标功能数据包包括读故障码功能数据包、清故障码功能数据包、动作测试功能数据包、在线编程功能数据包。然后,根据用户群体a的使用时间上午10点到下午4点之间确定用户群体a的目标功能数据包的分发时间为上午10点之前;根据用户群体b的使用时间下午2点到下午6点之间确定用户群体b的目标功能数据包的分发时间为下午2点之前;根据用户群体c的使用时间下午4点到晚上8点确定用户群体c的目标功能数据包的分发时间为下午4点之前,根据用户群体d的使用时间下午2点到下午6点确定用户群体d的目标功能数据包的分发时间为下午2点之前。然后根据这些确定的目标分发时间将目标功能数据包推送到目标升级用户。
再如,针对常用的软件如微信,由于完整的数据包所占用的字节较大,因此,为了减小微信软件在更新后占用设备的存储空间,以及缩短微信版本的更新时间,服务器需要将当前的微信软件版本的数据包按照其使用功能拆分为至少为1个模块化的功能数据包,以备后续能针对不同的常用功能数据包的用户提供相应的功能数据包。在将数据包拆分成模块化的功能数据包之后,服务器可以利用用户对于微信软件的使用频次信息确定好该模块化功能数据包对应的目标升级用户,并确定该目标升级用户对应的目标功能数据包,接着再利用用户对于微信软件的使用时间来确定所需的目标功能数据包需要推送给对应用户的时间,最后,按照该时间将微信软件的目标功能数据包推送至目标升级用户即可。
在本申请实施例中,服务器可以根据目标升级用户的使用时间来确定向目标升级用户分发对应的目标功能数据包的时间,将软件升级的时间与用户的使用时间进行了关联,根据用户的使用时间进行升级包推送,既满足了用户的升级需求,也实现了分批次推送升级包,避免大批量下载升级包造成的拥堵和延迟。
请参阅图3,本申请实施例提供了另一种软件升级方法,该方法的执行主体为服务器,而该服务器具体可以为软件后台管理服务器,用于对对应的软件进行后台管理,该方法包括:
301、服务器获取软件升级数据包,软件升级数据包包括目标软件信息。
302、服务器根据目标软件信息确定待升级用户。
303、服务器获取待升级用户的用户画像信息。
304、服务器确定至少1个模块化的功能数据包对应的目标升级用户。
305、服务器确定目标升级用户对应的目标功能数据包。
306、服务器根据目标升级用户的使用时间确定功能数据包目标分发时间。
本实施例中步骤301至步骤306与前述实施例中步骤201至步骤206类似,此处不再赘述。
307、服务器根据目标升级用户的使用频次确定优先级。
308、服务器按照目标分发时间将目标功能数据包按照优先级依次推送至目标升级用户。
在服务器根据目标升级用户的使用时间确定功能数据包目标分发时间之后,进一步的,还可以通过目标升级用户对所使用的软件功能的频次来确定优先级。
结合上文的例子,以车型诊断软件为例,使用读故障码功能和清故障码功能的用户频次由高到低依次为用户群体a,用户群体b,用户群体c,用户群体d,那么读故障码功能数据包和清故障码功能数据包则按照该排序确定推送的优先级并按照优先级依次推送至用户群体a,用户群体b,用户群体c,用户群体d。同样的,使用动作测试功能的用户频次由高到低依次为用户群体a,用户群体b,用户群体d,则动作测试功能数据包按照该排序确定推送的优先级并按照优先级依次推送至用户群体a,用户群体b,用户群体d。同理,使用在线编程功能的用户频次由高到低依次为用户群体c,用户群体b,用户群体d,则在线编程功能数据包按照该排序确定推送的优先级并按照优先级依次推送至用户群体c,用户群体b,用户群体d。同样的,使用特殊功能的用户频次由高到低依次为用户群体b,用户群体a,用户群体c,则特殊功能数据包按照该排序确定推送的优先级并按照优先级依次推送至用户群体b,用户群体a,用户群体c。
再如,服务器得知在目标升级用户使用微信的过程中,在同一周内,朋友圈功能为一周四次,视频号功能为一周十二次,摇一摇功能为一周一次,则可将视频号功能视为第一优先级,朋友圈功能视为第二优先级,摇一摇功能视为第三优先级。当服务器确定了各个功能的优先级后,可按照目标分发时间,依次将视频号功能升级数据包、朋友圈功能升级数据包以及摇一摇功能升级数据包推送至目标升级用户。
在本申请实施例中,服务器在根据目标升级用户的使用时间来确定向目标升级用户分发对应的目标功能数据包的时间之后,进一步地根据使用频次对目标升级用户使用该软件的相关功能按照优先级排序,按照优先级顺序依次推送目标功能数据包,从而进一步分散了推送的数据量,减轻了网络拥堵的风险,并提高了用户的下载体验。
请参阅图4,本申请实施例提供了另一种软件升级方法,该方法的执行主体为服务器,而该服务器具体可以为软件后台管理服务器,用于对对应的软件进行后台管理,该方法包括:
401、服务器获取软件升级数据包,软件升级数据包包括目标软件信息。
402、服务器根据目标软件信息确定待升级用户。
403、服务器获取待升级用户的用户画像信息。
404、服务器根据用户画像信息制定软件升级数据包分发策略。
本实施例中步骤401至步骤404与前述实施例中步骤101至步骤104类似,此处不再赘述。
405、服务器获取软件升级数据包的数据量。
406、服务器根据目标升级用户的数量与软件升级数据包的数据量确定最大网络带宽。
407、服务器根据最大网络带宽将软件升级数据包分发至目标升级用户。
为了能在保证软件升级数据包传输不卡顿以及延迟的同时,还能以最快的速度将软件升级数据包分发至目标升级用户,服务器需要根据软件升级数据包的数据量与目标升级用户的数量衡量最适合传输软件升级数据包的带宽,即能够让软件升级数据包在分发至目标升级用户时,能够达到最高传输速率的网络带宽。
在本申请实施例中,在服务器将软件升级数据包分发至目标升级用户之前,可以先根据目标升级用户的数量以及软件升级数据包的数据量来确定最优传输的网络带宽,再以该网络带宽传输软件升级数据包,以达到在保证软件升级数据包传输不卡顿以及延迟的同时,尽可能提高数据的传输速率的效果。
请参阅图5,本申请在第二方面提供了一种软件升级装置,包括:
第一获取单元501,用于获取软件升级数据包,软件升级数据包包括目标软件信息。
第一确定单元502,用于根据目标软件信息确定待升级用户。
第二获取单元503,用于获取待升级用户的用户画像信息。
第一制定单元504,用于根据用户画像信息制定软件升级数据包分发策略。
推送单元505,用于根据分发策略将软件升级数据包推送至对应的待升级用户,以使对应的待升级用户使用软件升级数据包进行软件升级。
在本申请实施例中,当第一获取单元501获取到包含有目标软件信息的软件升级数据包后,第一确定单元502可以根据该目标软件信息确定待升级的用户,然后第一制定单元504根据第二获取单元503获取待升级用户的用户画像信息来制定软件升级数据包分发策略,通过推送单元505将软件升级数据包推送至对应的待升级用户,从而实现为用户提供定向推送升级服务。这样一来,减轻了用户蜂拥下载导致的服务器压力,即提升了下载资源的利用率,从而提升用户的下载体验,避免了卡顿和延迟。
请参阅图6,本申请实施例提供了另一种软件升级装置,包括:
第一获取单元601,用于获取软件升级数据包,软件升级数据包包括目标软件信息。
第一确定单元602,用于根据目标软件信息确定待升级用户。
第二获取单元603,用于获取待升级用户的用户画像信息。
第一制定单元604,用于根据用户画像信息制定软件升级数据包分发策略。
第三获取单元605,用于获取软件升级数据包的数据量。
带宽确定单元606,用于根据目标升级用户的数量与软件升级数据包的数据量确定最大网络带宽。
推送单元607,用于根据分发策略将软件升级数据包推送至对应的待升级用户,以使对应的待升级用户使用软件升级数据包进行软件升级。
在本申请实施例中,第一制定单元604中的软件升级数据包包括至少1个模块化的功能数据包,该目标软件信息包括软件功能信息;
第一制定单元604具体包括:
第二确定模块6041,用于确定至少1个模块化的功能数据包对应的目标升级用户;
第二制定模块6042,用于根据目标升级用户的用户画像信息制定软件升级数据包分发策略。
在本申请实施例中,第一制定单元604中的用户画像信息通过如下方式生成:采集目标软件的用户使用行为数据,该用户使用行为数据包括使用时间,使用频次,使用功能;根据使用行为数据生成用户画像信息。
在本申请实施例中,第二制定模块6042具体用于确定目标升级用户对应的目标功能数据包;根据目标升级用户的使用时间确定功能数据包目标分发时间;
推送单元607具体用于按照目标分发时间将目标功能数据包推送至目标升级用户。
可选的,第二制定模块6042还可以具体用于确定目标升级用户对应的目标功能数据包;根据目标升级用户的使用时间确定功能数据包目标分发时间;根据目标升级用户的使用频次确定优先级;
推送单元607还可以具体用于按照目标分发时间将目标功能数据包按照优先级依次推送至目标升级用户。
可选的,推送单元607还可以具体用于根据最大网络带宽将软件升级数据包分发至目标升级用户。
请参阅图7,本申请从第三方面提供了一种软件后台管理服务器,包括:
处理器701、存储器702、输入输出单元703以及总线704;
处理器701与存储器702、输入输出单元703以及总线704相连;
存储器702保存有程序,处理器701调用存储器702的程序,具体执行如下步骤:
获取软件升级数据包,该软件升级数据包包括目标软件信息;
根据目标软件信息确定待升级用户;
获取待升级用户的用户画像信息;
根据用户画像信息制定软件升级数据包分发策略;
根据分发策略将所述软件升级数据包推送至对应的待升级用户,以使对应的待升级用户使用软件升级数据包进行软件升级。
进一步的,该软件升级数据包包括至少1个模块化的功能数据包,该目标软件信息包括软件功能信息,处理器701调用存储器702的程序执行根据用户画像信息制定所述软件升级数据包分发策略,具体包括:
确定至少1个模块化的功能数据包对应的目标升级用户;
根据目标升级用户的用户画像信息制定所述软件升级数据包分发策略。
进一步的,在一些实施方式中,用户画像通过如下方式生成:
采集目标软件的用户使用行为数据,该用户使用行为数据包括使用时间,使用频次,使用功能;
根据使用行为数据生成用户画像信息。
进一步的,处理器701调用存储器702的程序执行根据目标升级用户的用户画像信息制定软件升级数据包分发策略的步骤,具体包括:
确定目标升级用户对应的目标功能数据包;
根据目标升级用户的使用时间确定功能数据包目标分发时间。
进一步的,处理器701调用存储器702的程序执行根据分发策略将软件升级数据包推送至对应的待升级用户的步骤,具体包括:
按照目标分发时间将目标功能数据包推送至目标升级用户。
进一步的,处理器701调用存储器702的程序执行根据目标升级用户的用户画像信息制定软件升级数据包分发策略的步骤,具体包括:
确定目标升级用户对应的目标功能数据包;
根据目标升级用户的使用时间确定功能数据包目标分发时间;
根据目标升级用户的使用频次确定优先级。
进一步的,处理器701调用存储器702的程序执行根据分发策略将软件升级数据包推送至对应的待升级用户的步骤,具体包括:
按照目标分发时间将目标功能数据包按照优先级依次推送至目标升级用户。
进一步的,在根据用户画像信息制定软件升级数据包分发策略之后,处理器701调用存储器702的程序,还执行如下步骤:
获取软件升级数据包的数据量;
根据目标升级用户的数量与所述软件升级数据包的数据量确定最大网络带宽。
进一步的,处理器701调用存储器702的程序执行根据分发策略将软件升级数据包推送至对应的待升级用户的步骤,具体包括:
根据最大网络带宽将软件升级数据包分发至目标升级用户。
本申请在第四方面提供了一种计算机可读存储介质,该计算机可读存储介质上保存有程序,该程序在计算机上执行时执行如第一方面中任意一项所述的方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-onlymemory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (10)
1.一种软件升级方法,其特征在于,所述方法包括:
获取软件升级数据包,所述软件升级数据包包括目标软件信息;
根据所述目标软件信息确定待升级用户;
获取待升级用户的用户画像信息;
根据所述用户画像信息制定所述软件升级数据包分发策略;
根据所述分发策略将所述软件升级数据包推送至对应的待升级用户,以使所述对应的待升级用户使用所述软件升级数据包进行软件升级。
2.根据权利要求1所述的方法,其特征在于,所述软件升级数据包包括至少1个模块化的功能数据包,所述目标软件信息包括软件功能信息;
所述根据所述用户画像信息制定所述软件升级数据包分发策略,具体包括:
确定所述至少1个模块化的功能数据包对应的目标升级用户;
根据所述目标升级用户的用户画像信息制定所述软件升级数据包分发策略。
3.根据权利要求2所述的方法,其特征在于,所述用户画像信息通过如下方式生成:
采集所述目标软件的用户使用行为数据,所述用户使用行为数据包括使用时间,使用频次,使用功能;
根据所述使用行为数据生成用户画像信息。
4.根据权利要求3所述的方法,其特征在于,所述根据所述目标升级用户的用户画像信息制定所述软件升级数据包分发策略,具体包括:
确定所述目标升级用户对应的目标功能数据包;
根据所述目标升级用户的使用时间确定所述功能数据包目标分发时间;
所述根据所述分发策略将所述软件升级数据包推送至对应的待升级用户,具体包括:
按照所述目标分发时间将所述目标功能数据包推送至目标升级用户。
5.根据权利要求3所述的方法,其特征在于,所述根据所述目标升级用户的用户画像信息制定所述软件升级数据包分发策略,具体包括:
确定所述目标升级用户对应的目标功能数据包;
根据所述目标升级用户的使用时间确定所述功能数据包目标分发时间;
根据所述目标升级用户的使用频次确定优先级;
所述根据所述分发策略将所述软件升级数据包推送至对应的待升级用户,具体包括:
按照所述目标分发时间将所述目标功能数据包按照所述优先级依次推送至目标升级用户。
6.根据权利要求2-5任一项所述的方法,其特征在于,所述根据所述用户画像信息制定所述软件升级数据包分发策略之后,所述方法还包括:
获取所述软件升级数据包的数据量;
根据所述目标升级用户的数量与所述软件升级数据包的数据量确定最大网络带宽;
所述根据所述分发策略将所述软件升级数据包推送至对应的待升级用户,具体包括:
根据所述最大网络带宽将所述软件升级数据包分发至目标升级用户。
7.一种软件升级装置,其特征在于,包括:
第一获取单元,用于获取软件升级数据包,所述软件升级数据包包括目标软件信息;
第一确定单元,用于根据所述目标软件信息确定待升级用户;
第二获取单元,用于获取待升级用户的用户画像信息;
第一制定单元,用于根据所述用户画像信息制定所述软件升级数据包分发策略;
推送单元,用于根据所述分发策略将所述软件升级数据包推送至对应的待升级用户,以使所述对应的待升级用户使用所述软件升级数据包进行软件升级。
8.根据权利要求7所述的软件升级装置,其特征在于,所述第一制定单元的软件升级数据包包括至少1个模块化的功能数据包,所述目标软件信息包括软件功能信息;
所述第一制定单元具体包括:
第二确定模块,用于确定所述至少1个模块化的功能数据包对应的目标升级用户;
第二制定模块,用于根据所述目标升级用户的用户画像信息制定所述软件升级数据包分发策略。
9.一种软件后台管理服务器,其特征在于,所述软件后台管理服务器包括:
处理器、存储器、输入输出单元以及总线;
所述处理器与所述存储器、所述输入输出单元以及所述总线相连;
所述存储器保存有程序,所述处理器调用所述程序以执行如权利要求1至6中任一项所述方法。
10.一种计算机可读存储介质,所述计算机可读存储介质上保存有程序,所述程序在计算机上执行时执行如权利要求1至6中任一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111123401.2A CN113986276A (zh) | 2021-09-24 | 2021-09-24 | 一种软件升级方法及相关装置、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111123401.2A CN113986276A (zh) | 2021-09-24 | 2021-09-24 | 一种软件升级方法及相关装置、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113986276A true CN113986276A (zh) | 2022-01-28 |
Family
ID=79736533
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111123401.2A Pending CN113986276A (zh) | 2021-09-24 | 2021-09-24 | 一种软件升级方法及相关装置、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113986276A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114528050A (zh) * | 2022-02-22 | 2022-05-24 | 南京酷沃智行科技有限公司 | 软件定义汽车系统、激活方法、开发流程和汽车 |
CN117075948A (zh) * | 2023-10-12 | 2023-11-17 | 阿里巴巴(成都)软件技术有限公司 | 一种软件上线的检测方法、设备和介质 |
-
2021
- 2021-09-24 CN CN202111123401.2A patent/CN113986276A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114528050A (zh) * | 2022-02-22 | 2022-05-24 | 南京酷沃智行科技有限公司 | 软件定义汽车系统、激活方法、开发流程和汽车 |
CN117075948A (zh) * | 2023-10-12 | 2023-11-17 | 阿里巴巴(成都)软件技术有限公司 | 一种软件上线的检测方法、设备和介质 |
CN117075948B (zh) * | 2023-10-12 | 2023-12-26 | 阿里巴巴(成都)软件技术有限公司 | 一种软件上线的检测方法、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110221872B (zh) | 页面跳转方法、装置、电子设备和存储介质 | |
CN107343047B (zh) | 应用推广系统及方法 | |
CN113986276A (zh) | 一种软件升级方法及相关装置、存储介质 | |
CN108696399B (zh) | 业务服务的测试方法和装置 | |
US20150286478A1 (en) | Application Version Release Management | |
CN107205014B (zh) | 一种应用程序下载方法及客户端 | |
CN111857974A (zh) | 一种基于负载均衡器的服务访问方法及装置 | |
US20220229654A1 (en) | Enabling upgrading firmware of a target device | |
CN114257551A (zh) | 一种分布式限流的方法及系统、存储介质 | |
CN109982152A (zh) | P2p cdn业务处理方法、智能网关以及cdn平台 | |
CN106850720A (zh) | 软件升级方法、装置及系统 | |
EP3657429A1 (en) | Api billing system, api billing management method, and api billing program | |
CN116055481B (zh) | 一种共享文件的方法、系统、装置及存储介质 | |
CN113064685A (zh) | 一种h5页面加载方法及装置 | |
CN112632420A (zh) | 界面跳转方法、装置、存储介质及电子装置 | |
CN112506584A (zh) | 资源文件加载方法、装置、设备、存储介质以及产品 | |
CN111552484A (zh) | 一种应用程序包分发方法、装置、设备及存储介质 | |
CN109873731B (zh) | 测试方法、装置和系统 | |
CN109343880B (zh) | 一种rn包更新方法、装置及可读存储介质 | |
CN111464618A (zh) | 一种消息推送方法、装置、设备和存储介质 | |
EP2720151B1 (en) | Communication terminal and content update method | |
CN111679850A (zh) | 应用程序热更新处理方法、装置及系统 | |
CN115086194A (zh) | 云应用的数据传输方法、计算设备及计算机存储介质 | |
CN109951486B (zh) | 信息处理方法、装置、存储介质和电子装置 | |
CN110474954B (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 |