CN109491694A - 应用更新方法和装置、数据推送方法和装置 - Google Patents
应用更新方法和装置、数据推送方法和装置 Download PDFInfo
- Publication number
- CN109491694A CN109491694A CN201910007415.4A CN201910007415A CN109491694A CN 109491694 A CN109491694 A CN 109491694A CN 201910007415 A CN201910007415 A CN 201910007415A CN 109491694 A CN109491694 A CN 109491694A
- Authority
- CN
- China
- Prior art keywords
- version number
- client
- latest edition
- target application
- server
- 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
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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种应用更新方法和装置、数据推送方法和装置,其中,应用更新方法包括:客户端启动目标应用时,获取所述目标应用的最新版本的版本号和当前已安装的目标应用的版本号;所述客户端将当前已安装的目标应用的版本号与所述最新版本的版本号进行比较;在比较结果不一致的情况下,所述客户端在自身的存储器中查找所述最新版本的版本号对应的安装包进行安装;其中,所述最新版本的版本号对应的安装包是第一服务器在预定时段内预先推送至所述客户端的。上述应用更新的方法避免了客户端同时在服务器端下载应用程序更新包,减少了带宽占用,达到了提高应用程序更新效率的效果,并且保证了客户端和服务器端应用版本的一致性。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种应用更新方法和装置、数据推送方法和装置。
背景技术
目前,在企业内部系统中,当客户端启动某应用程序,检测到该应用程序版本需要更新时,一般是由客户端直接在该应用程序的服务器端下载该应用程序的更新包。
然而,因为一般应用程序的更新包都比较大,当多个客户端集中下载该应用程序的更新包时,会占用较大的带宽,服务器端的负载比较大,且下载速度会比较慢,导致客户端的下载更新速度也比较慢,应用程序更新的效率较低。
针对上述问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种应用更新方法和装置、数据推送方法和装置,以解决现有技术中客户端同时在服务器端下载应用程序更新包时,会占用较大带宽,导致应用程序更新的效率较低的问题。
本发明实施例提供了一种应用更新方法,包括:客户端启动目标应用时,获取所述目标应用的最新版本的版本号和当前已安装的目标应用的版本号;所述客户端将当前已安装的目标应用的版本号与所述最新版本的版本号进行比较;在当前已安装的目标应用的版本号与所述最新版本的版本号不一致的情况下,所述客户端在自身的存储器中查找所述最新版本的版本号对应的安装包,并安装所述安装包;其中,所述最新版本的版本号对应的安装包是第一服务器在预定时段内预先推送至所述客户端的。
在一个实施例中,获取所述目标应用的最新版本的版本号,包括:所述客户端向第二服务器请求所述目标应用的最新版本的版本号;所述客户端接收所述第二服务器返回的最新版本的版本号。
在一个实施例中,获取所述目标应用的最新版本的版本号,包括:所述客户端在自身的存储器中获取所述目标应用的安装包中所携带的版本信息;所述客户端从所述版本信息中所述目标应用的最新版本的版本号。
在一个实施例中,在所述客户端在自身的存储器中查找所述最新版本的版本号对应的安装包,并安装所述安装包之后,所述方法还包括:删除所述存储器中存储的所述最新版本的版本号对应的安装包。
本发明实施例还提供了一种数据推送方法,包括:第一服务器获取目标应用最新版本的版本号对应的安装包和推送时间段;所述第一服务器在所述推送时间段,将所述安装包推送至客户端。
在一个实施例中,在所述第一服务器将所述安装包推送至所述客户端之前,所述方法还包括:所述第一服务器获取待推送的客户端列表。
在一个实施例中,在所述第一服务器将所述安装包推送至所述客户端之后,所述方法还包括:更新第二服务器端所述目标应用的最新版本的版本号。
在一个实施例中,所述第一服务器获取所述目标应用的推送时间段,具体包括:
所述第一服务器接收用户设置的时间段;将所述用户设置的时间段,作为所述推送时间段。
在一个实施例中,所述第一服务器为SCCM服务器。
本发明实施例还提供一种应用更新装置,包括:获取模块,客户端启动目标应用时,获取所述目标应用的最新版本的版本号和当前已安装的目标应用的版本号;比较模块,所述客户端将当前已安装的目标应用的版本号与所述最新版本的版本号进行比较;处理模块,在当前已安装的目标应用的版本号与所述最新版本的版本号不一致的情况下,所述客户端在自身的存储器中查找所述最新版本的版本号对应的安装包,并安装所述安装包;其中,所述最新版本的版本号对应的安装包是第一服务器在预定时段内预先推送至所述客户端的。
在一个实施例中,获取所述目标应用的最新版本的版本号,包括:所述客户端向第二服务器请求所述目标应用的最新版本的版本号;所述客户端接收所述第二服务器返回的最新版本的版本号。
在一个实施例中,获取所述目标应用的最新版本的版本号,包括:所述客户端在自身的存储器中获取所述目标应用的安装包中所携带的版本信息;所述客户端从所述版本信息中所述目标应用的最新版本的版本号。
在一个实施例中,在所述客户端在自身的存储器中查找所述最新版本的版本号对应的安装包,并安装所述安装包之后,还包括:删除所述存储器中存储的所述最新版本的版本号对应的安装包。
本发明实施例还提供一种数据推送装置,包括:获取模块,第一服务器获取目标应用最新版本的版本号对应的安装包和推送时间段;推送模块,所述第一服务器在所述推送时间段,将所述安装包推送至客户端。
在一个实施例中,在所述第一服务器将所述安装包推送至所述客户端之前,还包括:所述第一服务器获取待推送的客户端列表。
在一个实施例中,在所述第一服务器将所述安装包推送至所述客户端之后,还包括:更新第二服务器端所述目标应用的最新版本的版本号。
在一个实施例中,所述第一服务器获取所述目标应用的推送时间段,具体包括:所述第一服务器接收用户设置的时间段;将所述用户设置的时间段,作为所述推送时间段。
在一个实施例中,所述第一服务器为SCCM服务器。
本发明实施例还提供一种应用更新设备,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现应用更新方法的步骤。
本发明实施例还提供一种数据推送设备,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现数据推送方法的步骤。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现应用更新方法的步骤。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现数据推送方法的步骤。
在本发明实施例中,提供了一种应用更新方法,通过第一服务器在预定的时间段将最新版本的版本号对应的安装包预先推送至客户端本地,避免了客户端同时在服务器端下载应用程序更新包,达到减少服务器的压力、减少带宽占用的效果,提高了提高应用程序更新的效率;并且在更新应用前客户端将当前已安装的目标应用的版本号与最新版本的版本号进行比较,保证了客户端应用版本和服务器端应用版本的一致性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
图1是根据本发明实施例提供的应用更新方法步骤示意图;
图2是根据本发明实施例提供的数据推送方法步骤示意图;
图3是根据本发明实施例提供的应用更新装置的示意图;
图4是根据本发明实施例提供的数据推送装置的示意图;
图5是根据本发明实施例提供的应用更新电子设备的示意图;
图6是根据本发明实施例提供的数据推送电子设备的示意图。
具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本申请公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本领域的技术人员知道,本发明的实施方式可以实现为一种系统、装置设备、方法或计算机程序产品。因此,本申请公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
考虑到现有的软件更新过程中存在由于客户端更新时间相对集中以及待更新软件的安装包较大会占用较大带宽的问题,从而对服务器造成较大的压力,并耗费大量时间。针对该问题,考虑到对于应用而言,客户端并未是时时开启应用的,例如,对于银行柜台的应用而言,一般仅在柜员的工作时间(例如:上午9:00到下午5:00)这些应用才会处于使用状态,如果可以在非使用状态的时间(例如:下午5:00到早上9:00)提前将更新包推送至各个柜台终端,在柜台终端启动时候进行更新,这样可以避免终端都在早上9:00启动应用,又在相对较短的时间内集中向应用服务器请求更新包,而导致的服务器负载太大的问题。
基于以上问题,本发明实施例提供了一种应用更新方法,如图1所示,可以包括以下步骤:
S101:客户端启动目标应用时,获取目标应用的最新版本的版本号和当前已安装的目标应用的版本号。
其中,客户端在启动目标应用时,可以在自身的存储器中查找已安装的目标应用的版本号;客户端在启动目标应用时,可以向第二服务器请求获取目标应用的版本信息。上述版本信息可以包括:目标应用的版本清单,其中,目标软件的版本清单中可以包括但不限于:目标应用的编号、名称以及所有版本的版本号,客户端可以从获取的目标应用的版本信息中提取出最新版本的版本号,其中,第二服务器可以是应用服务器。
进一步的,客户端获取目标应用的最新版本的版本号和当前已安装的目标应用的版本号的操作可以是同时进行的;也可以是在获取到目标应用的最新版本的版本号后,再在自身的存储器中查找已安装的目标应用的版本号;也可以是在自身的存储器中查找已安装的目标应用的版本号后,再从第二服务器端获取目标应用的最新版本的版本号,本申请对此不作限定。
S102:客户端将当前已安装的目标应用的版本号与最新版本的版本号进行比较。
为了确定客户端当前已安装的目标应用是否需要进行更新,客户端在获取到目标应用的最新版本的版本号后,将目标应用的最新版本的版本号与客户端当前已安装的目标应用的版本号进行比较。
其中,目标应用的最新版本的版本号与客户端当前已安装的目标应用的版本号的比较,其本质是散列值(也可称作是哈希值)的比较,可以把散列值简单地理解成是一段数据(某个文件,或者是字符串)的DNA,或者身份证。如果两个散列值是不相同的(根据同一函数),那么这两个散列值的原始输入也是不相同的。这个特性是散列函数具有确定性的结果,具有这种性质的散列函数称为单向散列函数。
S103:在当前已安装的目标应用的版本号与最新版本的版本号不一致的情况下,客户端在自身的存储器中查找最新版本的版本号对应的安装包,并安装安装包。
上述最新版本的版本号对应的安装包是第一服务器在预定的时间段、按照预定的下载速率预先推送至客户端本地的,其中,预先推送的时间段可以是由客户端用户设定的,在预先推送的时间段内客户端处于空闲状态,此时将第一服务器中的最新版本的版本号对应的安装包预先推送至客户端本地,不会由于在下载安装包的过程中占用较大的带宽,从而对客户端的其它进程造成影响。
可以理解的是,本实施例中,客户端可以不止一个,上述第一服务器在预先推送前可以先获取待推送的客户端列表,根据所获取的待推送的客户端列表,将最新版本的版本号对应的安装包同时在预定的时间段、按照预定的下载速率,预先推送至多个客户端本地。其中,上述待推送的客户端列表中的客户端与第一服务器在同一局域网内并且与第一服务器建立了连接关系。
上述第一服务器可以是SCCM服务器(Microsoft System center configurationmanager,微软系统中心配置管理器),或者其它可以实现预先推送功能的服务器,本申请对此不作限定。
进一步的,在比较结果不一致的情况下,说明客户端当前已安装的目标应用不是最新的版本,需要对其进行更新。客户端可以在自身的存储器中查找最新版本的版本号对应的预先推送至客户端本地的同名安装包,如果查找到了上述同名安装包,则对该同名安装包进行解压缩,进行最新版本的目标应用的安装,在安装结束后可以删除上述最新版本的版本号对应的同名安装包,以节约客户端的内存资源。
如果在客户端自身的存储器中没有查找到上述同名安装包,客户端可以向第二服务器请求获取目标应用最新版本的版本号对应的安装包,从而对客户端的目标应用进行版本更新。其中,客户端也可以直接向其它服务器直接获取目标应用最新版本的版本号对应的安装包,本申请对此不作限定。
为了避免上述情况的发生,本实施例中,在检测到应用更新时,首先将最新版本的版本号对应的安装包推送给第一服务器,第一服务器将接收到的最新版本的版本号对应的安装包预先推送至客户端后,再在第二服务器端更新目标应用的版本清单。
S101至S103中客户端的操作均在客户端后台进行,无需客户端用户进行任何操作。
下面结合一个具体实施例来说明采用本申请所提出的一种应用更新方法在银行柜员系统中进行应用更新的过程,可以包括以下步骤:
步骤1:当版本管理员检测到目标应用版本更新时,将目标应用最新版本的版本号对应的安装包保存至SCCM服务器中,根据上述安装包的大小以及银行柜员系统处于空闲状态的时间段,预先设置好推送时间段和进行推送时的下载速率,同时在SCCM服务器中配置所有需要进行应用更新的客户端。SCCM服务器在在推送时间段,按照预定的下载速率将目标应用最新版本的版本号对应的安装包同时推送至所有需要进行应用更新的客户端。由于银行柜员上下班时间一致,所以一般推送时间段可以设置为当天下班时间点至次日上班时间点。
步骤2:版本管理员在SCCM服务器端将目标应用最新版本的版本号对应的安装包预先推送至客户端后,在应用服务器端更新目标应用的版本清单。
步骤3:银行柜员系统中多个客户端启动目标应用时,上述多个客户端同时自动向应用服务器请求获取目标应用的版本清单,上述版本清单中包括目标应用最新版本的版本号。客户端将从应用服务器端获取的目标应用最新版本的版本号与客户端当前已安装的目标应用的版本号进行比较。
步骤4:当比较结果不一致时,说明客户端当前已安装的目标应用不是最新版本,需要进行更新。此时客户端在自身存储器中查找与目标应用最新版本的版本号散列值相同的安装包,上述安装包为SCCM服务器预先推送至客户端本地的。客户端将查找到的安装包进行解压缩、安装,安装结束后删除保存在客户端本地的安装包,从而达到无需从服务器端下载目标应用的安装包、减少带宽占用的目的。
本发明实施例还提供了一种数据推送方法,如图2所示,可以包括以下步骤:
S201:第一服务器获取目标应用最新版本的版本号对应的安装包和推送时间段。
第一服务器在应用更新的时,可以通过版本管理员将目标应用最新版本的版本号对应的安装包推送至第一服务器端从而获取目标应用最新版本的版本号对应的安装包;也可以通过直接向应用下载程序发送请求下载目标应用最新版本的版本号对应的安装包;也可以通过向Web服务器等其它服务器发送请求直接获取目标应用最新版本的版本号对应的安装包,本申请对此不作限定。其中,上述应用下载程序可以包括但不限于:360应用商城、驱动精灵软件管理程序、软件下载中心、APP Store。
其中,第一服务器端对应用更新的监测可以实时的也可以是间隔预先设置的一段时间,同理,第二服务器端对应用更新的监测可以实时的也可以是间隔预先设置的一段时间。可以理解的是,为了确保第一服务器端和第二服务器端目标应用的版本一致性,第一服务器端和第二服务器端采用相同的方法对应用的更新进行监测。
为了使得目标应用的安装包的预先推送不影响客户端其它进程的进行,第一服务器可以在推送前向客户端获取可以进行推送的时间段,比如,当客户端返回每天20:00至次日6:00处于空闲状态,那么第一服务器可以在每天20:00至次日6:00这个时间段内,将目标应用最新版本的版本号对应的安装包按照预定的下载速率预先推送至客户端。其中,推送时间段也可以是由版本管理员在第一服务器端预先进行设置的,本申请对此不作限定。
进一步的,上述下载速率以及进行推送的时间可以设置为固定的,即每次更新在相同的时间段按照相同的下载速率进行;也可以是在每次需要进行更新时,根据目标应用的安装包的大小以及待推送客户端的个数等因素确定。
S202:第一服务器在推送时间段,将安装包推送至客户端。
本实施例中,客户端可以不止一个,上述第一服务器在预先推送前,可以先获取待推送的客户端列表,根据所获取的待推送的客户端列表,将最新版本的版本号对应的安装包同时在预定的推送时间段、按照预定的下载速率,预先推送至多个客户端本地。其中,上述待推送的客户端列表中的客户端与第一服务器在同一局域网内并且与第一服务器建立了连接关系。
为了确保第一服务器端和第二服务器端目标应用的版本一致性,在检测到应用更新时,首先将目标应用最新版本的版本号对应的安装包推送给第一服务器,第一服务器将接收到的目标应用最新版本的版本号对应的安装包预先推送至客户端后,再在第二服务器端更新目标应用的版本清单。
进一步的,上述第一服务器可以是SCCM服务器(Microsoft System centerconfiguration manager,微软系统中心配置管理器),或者其它可以实现预先推送功能的服务器,本申请对此不作限定。
基于同一发明构思,本发明实施例中还提供了一种应用更新装置,如下面的实施例所述。由于应用更新装置解决问题的原理与应用更新方法相似,因此应用更新装置的实施可以参见应用更新方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。图3是本发明实施例的应用更新装置的一种结构框图,如图3所示,可以包括:获取模块301、比较模块302、处理模块303,下面对该结构进行说明。
获取模块301,用于在客户端启动目标应用时,获取目标应用的最新版本的版本号和当前已安装的目标应用的版本号。
其中,客户端在启动目标应用时,可以在自身的存储器中查找已安装的目标应用的版本号;客户端在启动目标应用时,可以向第二服务器请求获取目标应用的版本信息。上述版本信息可以包括:目标应用的版本清单,其中,目标软件的版本清单中可以包括但不限于:目标应用的编号、名称以及所有版本的版本号,客户端可以从获取的目标应用的版本信息中提取出最新版本的版本号。
比较模块302,客户端将当前已安装的目标应用的版本号与最新版本的版本号进行比较。
为了确定客户端当前已安装的目标应用是否需要进行更新,客户端在获取到目标应用的最新版本的版本号后,将目标应用的最新版本的版本号与客户端当前已安装的目标应用的版本号进行比较。
其中,目标应用的最新版本的版本号与客户端当前已安装的目标应用的版本号的比较,其本质是散列值(也可称作是哈希值)的比较,可以把散列值简单地理解成是一段数据(某个文件,或者是字符串)的DNA,或者身份证。如果两个散列值是不相同的(根据同一函数),那么这两个散列值的原始输入也是不相同的。这个特性是散列函数具有确定性的结果,具有这种性质的散列函数称为单向散列函数。
处理模块303,在当前已安装的目标应用的版本号与最新版本的版本号不一致的情况下,客户端在自身的存储器中查找最新版本的版本号对应的安装包,并安装该安装包。
上述最新版本的版本号对应的安装包是第一服务器在预定的时间段、按照预定的下载速率预先推送至客户端本地的,其中,预先推送的时间段可以是由客户端用户设定的,在预先推送的时间段内客户端处于空闲状态,此时将第一服务器中的最新版本的版本号对应的安装包预先推送至客户端本地,不会由于在下载安装包的过程中占用较大的带宽,从而对客户端的其它进程造成影响。
可以理解的是,本实施例中,客户端可以不止一个,上述第一服务器在预先推送前可以先获取待推送的客户端列表,根据所获取的待推送的客户端列表,将最新版本的版本号对应的安装包同时在预定的时间段、按照预定的下载速率,预先推送至多个客户端本地。其中,上述待推送的客户端列表中的客户端与第一服务器在同一局域网内并且与第一服务器建立了连接关系。
上述第一服务器可以是SCCM服务器(Microsoft System center configurationmanager,微软系统中心配置管理器),或者其它可以实现预先推送功能的服务器,本申请对此不作限定。
进一步的,在比较结果不一致的情况下,说明客户端当前已安装的目标应用不是最新的版本,需要对其进行更新。客户端可以在自身的存储器中查找最新版本的版本号对应的预先推送至客户端本地的同名安装包,如果查找到了上述同名安装包,则对该同名安装包进行解压缩,进行最新版本的目标应用的安装,在安装结束后可以删除上述最新版本的版本号对应的同名安装包,以节约客户端的内存资源。
如果在客户端自身的存储器中没有查找到上述同名安装包,客户端可以向第二服务器请求获取目标应用最新版本的版本号对应的安装包,从而对客户端的目标应用进行版本更新。其中,客户端也可以直接向其它服务器直接获取目标应用最新版本的版本号对应的安装包,本申请对此不作限定。
为了避免上述情况的发生,本实施例中,在检测到应用更新时,首先将最新版本的版本号对应的安装包推送给第一服务器,第一服务器将接收到的目标应用的最新版本的版本号对应的安装包预先推送至客户端后,再在第二服务器端更新目标应用的版本清单。
基于同一发明构思,本发明实施例中还提供了一种数据推送装置,如下面的实施例所述。由于数据推送装置解决问题的原理与数据推送方法相似,因此数据推送装置的实施可以参见数据推送方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。图4是本发明实施例的数据推送装置的一种结构框图,如图4所示,可以包括:获取模块401、推送模块402,下面对该结构进行说明。
获取模块401,第一服务器获取目标应用最新版本的版本号对应的安装包和推送时间段。
第一服务器在应用更新的时,可以通过版本管理员将目标应用最新版本的版本号对应的安装包推送至第一服务器端从而获取目标应用最新版本的版本号对应的安装包;也可以通过直接向应用下载程序发送请求下载目标应用最新版本的版本号对应的安装包;也可以通过向Web服务器等其它服务器发送请求直接获取目标应用最新版本的版本号对应的安装包,本申请对此不作限定。其中,上述应用下载程序可以包括但不限于:360应用商城、驱动精灵软件管理程序、软件下载中心、APP Store。
其中,第一服务器端对应用更新的监测可以实时的也可以是间隔预先设置的一段时间,同理,第二服务器端对应用更新的监测可以实时的也可以是间隔预先设置的一段时间。可以理解的是,为了确保第一服务器端和第二服务器端目标应用的版本一致性,第一服务器端和第二服务器端采用相同的方法对应用的更新进行监测。
为了使得目标应用的安装包的预先推送不影响客户端其它进程的进行,第一服务器可以在推送前向客户端获取可以进行推送的时间段,比如,当客户端返回每天20:00至次日6:00处于空闲状态,那么第一服务器可以在每天20:00至次日6:00这个时间段内,将目标应用最新版本的版本号对应的安装包按照预定的下载速率预先推送至客户端。其中,推送时间段也可以是由版本管理员在第一服务器端预先进行设置的,本申请对此不作限定。
进一步的,上述下载速率以及进行推送的时间可以设置为固定的,即每次更新在相同的时间段按照相同的下载速率进行;也可以是在每次需要进行更新时,根据目标应用的安装包的大小以及待推送客户端的个数等因素确定。
推送模块402,第一服务器在推送时间段,将安装包推送至客户端。
本实施例中,客户端可以不止一个,上述第一服务器在预先推送前,可以先获取待推送的客户端列表,根据所获取的待推送的客户端列表,将最新版本的版本号对应的安装包同时在预定的推送时间段、按照预定的下载速率,预先推送至多个客户端本地。其中,上述待推送的客户端列表中的客户端与第一服务器在同一局域网内并且与第一服务器建立了连接关系。
为了确保第一服务器端和第二服务器端目标应用的版本一致性,在检测到应用更新时,首先将目标应用最新版本的版本号对应的安装包推送给第一服务器,第一服务器将接收到的目标应用最新版本的版本号对应的安装包预先推送至客户端后,再在第二服务器端更新目标应用的版本清单。
进一步的,上述第一服务器可以是SCCM服务器(Microsoft System centerconfiguration manager,微软系统中心配置管理器),或者其它可以实现预先推送功能的服务器,本申请对此不作限定。
从以上的描述中,可以看出,本发明实施例实现了如下技术效果:通过第一服务器在预定的时间段将最新版本的版本号对应的安装包预先推送至客户端本地,避免了客户端同时在服务器端下载应用程序更新包,达到减少服务器的压力、减少带宽占用的效果,提高了应用程序更新的效率;并且在更新应用前客户端将当前已安装的目标应用的版本号与最新版本的版本号进行比较,保证了客户端应用版本和服务器端应用版本的一致性。
本申请实施方式还提供了一种电子设备,具体可以参阅图5所示的基于本申请实施例提供的应用更新方法的电子设备组成结构示意图,所述电子设备具体可以包括输入设备51、处理器52、存储器53。其中,所述输入设备51具体可以用于在客户端启动目标应用时,输入目标应用的最新版本的版本号和当前已安装的目标应用的版本号。所述处理器52具体可以用于将客户端当前已安装的目标应用的版本号与最新版本的版本号进行比较;在当前已安装的目标应用的版本号与最新版本的版本号不一致的情况下,客户端在自身的存储器中查找最新版本的版本号对应的安装包,并安装该安装包。所述存储器53具体可以用于存储目标应用更新时间、目标应用最新版本的版本号等参数。
在本实施方式中,所述输入设备具体可以是用户和计算机系统之间进行信息交换的主要装置之一。所述输入设备可以包括键盘、鼠标、摄像头、扫描仪、光笔、手写输入板、语音输入装置等;输入设备用于把原始数据和处理这些数的程序输入到计算机中。所述输入设备还可以获取接收其他模块、单元、设备传输过来的数据。所述处理器可以按任何适当的方式实现。例如,处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。所述存储器具体可以是现代信息技术中用于保存信息的记忆设备。所述存储器可以包括多个层次,在数字系统中,只要能保存二进制数据的都可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也叫存储器,如RAM、FIFO等;在系统中,具有实物形式的存储设备也叫存储器,如内存条、TF卡等。
在本实施方式中,该电子设备具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
本申请实施方式还提供了一种电子设备,具体可以参阅图6所示的基于本申请实施例提供的数据推送方法的电子设备组成结构示意图,所述电子设备具体可以包括输入设备61、处理器62、存储器63。其中,所述输入设备61具体可以用于在第一服务器端输入目标应用的安装包和推送时间段。所述处理器62具体可以用于将第一服务器端将最新版本的版本号对应的安装包,在推送时间段推送至客户端。所述存储器63具体可以用于存储推送时间段、推送速率、目标应用最新版本的版本号等参数。
在本实施方式中,所述输入设备具体可以是用户和计算机系统之间进行信息交换的主要装置之一。所述输入设备可以包括键盘、鼠标、摄像头、扫描仪、光笔、手写输入板、语音输入装置等;输入设备用于把原始数据和处理这些数的程序输入到计算机中。所述输入设备还可以获取接收其他模块、单元、设备传输过来的数据。所述处理器可以按任何适当的方式实现。例如,处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。所述存储器具体可以是现代信息技术中用于保存信息的记忆设备。所述存储器可以包括多个层次,在数字系统中,只要能保存二进制数据的都可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也叫存储器,如RAM、FIFO等;在系统中,具有实物形式的存储设备也叫存储器,如内存条、TF卡等。
在本实施方式中,该电子设备具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
本申请实施方式中还提供了一种基于应用更新方法的计算机存储介质,所述计算机存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现:目标应用的更新。
在本实施方式中,上述存储介质包括但不限于随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、缓存(Cache)、硬盘(Hard DiskDrive,HDD)或者存储卡(Memory Card)。所述存储器可以用于存储计算机程序指令。网络通信单元可以是依照通信协议规定的标准设置的,用于进行网络连接通信的接口。
在本实施方式中,该计算机存储介质存储的程序指令具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
本申请实施方式中还提供了一种基于数据推送方法的计算机存储介质,所述计算机存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现:在推送时间段,将目标应用的最新版本的版本号对应的安装包预先推送至客户端。
在本实施方式中,上述存储介质包括但不限于随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、缓存(Cache)、硬盘(Hard DiskDrive,HDD)或者存储卡(Memory Card)。所述存储器可以用于存储计算机程序指令。网络通信单元可以是依照通信协议规定的标准设置的,用于进行网络连接通信的接口。
在本实施方式中,该计算机存储介质存储的程序指令具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明实施例不限制于任何特定的硬件和软件结合。
应该理解,以上描述是为了进行图示说明而不是为了进行限制。通过阅读上述描述,在所提供的示例之外的许多实施方式和许多应用对本领域技术人员来说都将是显而易见的。因此,本申请的范围不应该参照上述描述来确定,而是应该参照前述权利要求以及这些权利要求所拥有的等价物的全部范围来确定。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (22)
1.一种应用更新方法,其特征在于,包括:
客户端启动目标应用时,获取所述目标应用的最新版本的版本号和当前已安装的目标应用的版本号;
所述客户端将当前已安装的目标应用的版本号与所述最新版本的版本号进行比较;
在当前已安装的目标应用的版本号与所述最新版本的版本号不一致的情况下,所述客户端在自身的存储器中查找所述最新版本的版本号对应的安装包,并安装所述安装包;
其中,所述最新版本的版本号对应的安装包是第一服务器在预定时段内预先推送至所述客户端的。
2.根据权利要求1所述的方法,其特征在于,获取所述目标应用的最新版本的版本号,包括:
所述客户端向第二服务器请求所述目标应用的最新版本的版本号;
所述客户端接收所述第二服务器返回的最新版本的版本号。
3.根据权利要求1所述的方法,其特征在于,获取所述目标应用的最新版本的版本号,包括:
所述客户端在自身的存储器中获取所述目标应用的安装包中所携带的版本信息;
所述客户端从所述版本信息中所述目标应用的最新版本的版本号。
4.根据权利要求1所述的方法,其特征在于,在所述客户端在自身的存储器中查找所述最新版本的版本号对应的安装包,并安装所述安装包之后,所述方法还包括:
删除所述存储器中存储的所述最新版本的版本号对应的安装包。
5.一种数据推送方法,其特征在于,包括:
第一服务器获取目标应用最新版本的版本号对应的安装包和推送时间段;
所述第一服务器在所述推送时间段,将所述安装包推送至客户端。
6.根据权利要求5所述的方法,其特征在于,在所述第一服务器将所述安装包推送至所述客户端之前,所述方法还包括:
所述第一服务器获取待推送的客户端列表。
7.根据权利要求5所述的方法,其特征在于,在所述第一服务器将所述安装包推送至所述客户端之后,所述方法还包括:
更新第二服务器端所述目标应用的最新版本的版本号。
8.根据权利要求5所述的方法,其特征在于,所述第一服务器获取所述目标应用的推送时间段,具体包括:
所述第一服务器接收用户设置的时间段;
将所述用户设置的时间段,作为所述推送时间段。
9.根据权利要求5所述的方法,其特征在于,所述第一服务器为SCCM服务器。
10.一种应用更新装置,其特征在于,包括:
获取模块,客户端启动目标应用时,获取所述目标应用的最新版本的版本号和当前已安装的目标应用的版本号;
比较模块,所述客户端将当前已安装的目标应用的版本号与所述最新版本的版本号进行比较;
处理模块,在当前已安装的目标应用的版本号与所述最新版本的版本号不一致的情况下,所述客户端在自身的存储器中查找所述最新版本的版本号对应的安装包,并安装所述安装包;
其中,所述最新版本的版本号对应的安装包是第一服务器在预定时段内预先推送至所述客户端的。
11.根据权利要求10所述的装置,其特征在于,获取所述目标应用的最新版本的版本号,包括:
所述客户端向第二服务器请求所述目标应用的最新版本的版本号;
所述客户端接收所述第二服务器返回的最新版本的版本号。
12.根据权利要求10所述的装置,其特征在于,获取所述目标应用的最新版本的版本号,包括:
所述客户端在自身的存储器中获取所述目标应用的安装包中所携带的版本信息;
所述客户端从所述版本信息中所述目标应用的最新版本的版本号。
13.根据权利要求10所述的装置,其特征在于,在所述客户端在自身的存储器中查找所述最新版本的版本号对应的安装包,并安装所述安装包之后,还包括:
删除所述存储器中存储的所述最新版本的版本号对应的安装包。
14.一种数据推送装置,其特征在于,包括:
获取模块,第一服务器获取目标应用最新版本的版本号对应的安装包和推送时间段;
推送模块,所述第一服务器在所述推送时间段,将所述安装包推送至客户端。
15.根据权利要求14所述的装置,其特征在于,在所述第一服务器将所述安装包推送至所述客户端之前,还包括:
所述第一服务器获取待推送的客户端列表。
16.根据权利要求14所述的装置,其特征在于,在所述第一服务器将所述安装包推送至所述客户端之后,还包括:
更新第二服务器端所述目标应用的最新版本的版本号。
17.根据权利要求14所述的装置,其特征在于,所述第一服务器获取所述目标应用的推送时间段,具体包括:
所述第一服务器接收用户设置的时间段;
将所述用户设置的时间段,作为所述推送时间段。
18.根据权利要求14所述的装置,其特征在于,所述第一服务器为SCCM服务器。
19.一种应用更新设备,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现权利要求1至4中任一项所述方法的步骤。
20.一种数据推送设备,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现权利要求5至9中任一项所述方法的步骤。
21.一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现权利要求1至4中任一项所述方法的步骤。
22.一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现权利要求5至9中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910007415.4A CN109491694A (zh) | 2019-01-04 | 2019-01-04 | 应用更新方法和装置、数据推送方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910007415.4A CN109491694A (zh) | 2019-01-04 | 2019-01-04 | 应用更新方法和装置、数据推送方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109491694A true CN109491694A (zh) | 2019-03-19 |
Family
ID=65713906
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910007415.4A Pending CN109491694A (zh) | 2019-01-04 | 2019-01-04 | 应用更新方法和装置、数据推送方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109491694A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111314437A (zh) * | 2020-01-20 | 2020-06-19 | 腾讯科技(深圳)有限公司 | 资源包的下载方法和装置、存储介质及电子装置 |
CN111538514A (zh) * | 2020-04-17 | 2020-08-14 | 北京三快在线科技有限公司 | 企业应用的更新方法、装置、存储介质及电子设备 |
CN111541788A (zh) * | 2020-07-08 | 2020-08-14 | 支付宝(杭州)信息技术有限公司 | 区块链一体机的哈希更新方法及装置 |
CN111782229A (zh) * | 2020-06-30 | 2020-10-16 | 百度在线网络技术(北京)有限公司 | 一种小程序启动方法、装置及电子设备 |
CN112138398A (zh) * | 2019-06-28 | 2020-12-29 | 北京智明星通科技股份有限公司 | 游戏app的自动更新方法及系统 |
CN112463177A (zh) * | 2020-12-11 | 2021-03-09 | 百富计算机技术(深圳)有限公司 | 一种软件的更新包的生成方法 |
CN112486946A (zh) * | 2020-11-17 | 2021-03-12 | 中国人寿保险股份有限公司 | 一种版本确认方法、系统、电子设备及存储介质 |
CN113448600A (zh) * | 2021-07-08 | 2021-09-28 | 中科创达软件股份有限公司 | 系统安装方法、装置、上位机及存储介质 |
CN114201191A (zh) * | 2021-11-17 | 2022-03-18 | 杭州华橙软件技术有限公司 | 一种应用程序更新的方法及装置 |
CN114760320A (zh) * | 2020-12-29 | 2022-07-15 | 广州视源电子科技股份有限公司 | 客户端与中台服务器的数据同步方法、系统及客户端 |
US11604633B2 (en) | 2020-07-08 | 2023-03-14 | Alipay (Hangzhou) Information Technology Co., Ltd. | Trusted startup methods and apparatuses of blockchain integrated station |
CN115913947A (zh) * | 2022-11-09 | 2023-04-04 | 湖北盛天网络技术股份有限公司 | 资源更新方法、装置和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104965721A (zh) * | 2014-07-10 | 2015-10-07 | 腾讯科技(深圳)有限公司 | 一种对应用程序进行更新的方法及装置 |
CN105577774A (zh) * | 2015-12-17 | 2016-05-11 | 北京奇虎科技有限公司 | 游戏登录器的强制更新方法及装置 |
US20180316508A1 (en) * | 2015-12-01 | 2018-11-01 | Intel Corporation | Methods and apparatus to provide for efficient and secure software updates |
-
2019
- 2019-01-04 CN CN201910007415.4A patent/CN109491694A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104965721A (zh) * | 2014-07-10 | 2015-10-07 | 腾讯科技(深圳)有限公司 | 一种对应用程序进行更新的方法及装置 |
US20180316508A1 (en) * | 2015-12-01 | 2018-11-01 | Intel Corporation | Methods and apparatus to provide for efficient and secure software updates |
CN105577774A (zh) * | 2015-12-17 | 2016-05-11 | 北京奇虎科技有限公司 | 游戏登录器的强制更新方法及装置 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112138398A (zh) * | 2019-06-28 | 2020-12-29 | 北京智明星通科技股份有限公司 | 游戏app的自动更新方法及系统 |
CN111314437A (zh) * | 2020-01-20 | 2020-06-19 | 腾讯科技(深圳)有限公司 | 资源包的下载方法和装置、存储介质及电子装置 |
CN111538514A (zh) * | 2020-04-17 | 2020-08-14 | 北京三快在线科技有限公司 | 企业应用的更新方法、装置、存储介质及电子设备 |
CN111782229B (zh) * | 2020-06-30 | 2024-04-23 | 百度在线网络技术(北京)有限公司 | 一种小程序启动方法、装置及电子设备 |
CN111782229A (zh) * | 2020-06-30 | 2020-10-16 | 百度在线网络技术(北京)有限公司 | 一种小程序启动方法、装置及电子设备 |
US11616636B2 (en) | 2020-07-08 | 2023-03-28 | Alipay (Hangzhou) Information Technology Co., Ltd. | Hash updating methods and apparatuses of blockchain integrated station |
US11604633B2 (en) | 2020-07-08 | 2023-03-14 | Alipay (Hangzhou) Information Technology Co., Ltd. | Trusted startup methods and apparatuses of blockchain integrated station |
CN111541788B (zh) * | 2020-07-08 | 2020-10-16 | 支付宝(杭州)信息技术有限公司 | 区块链一体机的哈希更新方法及装置 |
CN111541788A (zh) * | 2020-07-08 | 2020-08-14 | 支付宝(杭州)信息技术有限公司 | 区块链一体机的哈希更新方法及装置 |
CN112486946A (zh) * | 2020-11-17 | 2021-03-12 | 中国人寿保险股份有限公司 | 一种版本确认方法、系统、电子设备及存储介质 |
CN112463177A (zh) * | 2020-12-11 | 2021-03-09 | 百富计算机技术(深圳)有限公司 | 一种软件的更新包的生成方法 |
CN112463177B (zh) * | 2020-12-11 | 2024-08-13 | 百富计算机技术(深圳)有限公司 | 一种软件的更新包的生成方法 |
CN114760320A (zh) * | 2020-12-29 | 2022-07-15 | 广州视源电子科技股份有限公司 | 客户端与中台服务器的数据同步方法、系统及客户端 |
CN114760320B (zh) * | 2020-12-29 | 2023-09-12 | 广州视源电子科技股份有限公司 | 客户端与中台服务器的数据同步方法、系统及客户端 |
CN113448600A (zh) * | 2021-07-08 | 2021-09-28 | 中科创达软件股份有限公司 | 系统安装方法、装置、上位机及存储介质 |
CN114201191A (zh) * | 2021-11-17 | 2022-03-18 | 杭州华橙软件技术有限公司 | 一种应用程序更新的方法及装置 |
CN115913947A (zh) * | 2022-11-09 | 2023-04-04 | 湖北盛天网络技术股份有限公司 | 资源更新方法、装置和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109491694A (zh) | 应用更新方法和装置、数据推送方法和装置 | |
CN109391509A (zh) | 一种更新应用程序的方法、系统及应用服务器 | |
ES2297914T3 (es) | Metodo, aparato y dispositvo de almacenamiento de programa para un cliente y un servidor de sincronizacion adaptativo y de transformacion. | |
US20190013993A1 (en) | Updating Web Resources | |
US9367296B2 (en) | Method and system for synchronizing application programs across devices | |
US8490077B2 (en) | Runtime versioning and distribution of dynamic web-elements | |
US6792510B1 (en) | System and method for updating a cache | |
US20020156863A1 (en) | Apparatus and methods for managing caches on a gateway | |
CN100469016C (zh) | 一种实现网络通讯录数据同步的方法 | |
US8364635B2 (en) | Temporary session data storage | |
CN103457905A (zh) | 数据同步方法、系统及设备 | |
CN109542851A (zh) | 文件更新方法、装置及系统 | |
CN105893044B (zh) | 图标生成方法及装置 | |
CN113886743B (zh) | 缓存资源的刷新方法、装置及系统 | |
CN105162879B (zh) | 实现多机房数据一致性的方法、装置及系统 | |
CN110651256B (zh) | 用于在软件更新期间防止服务中断的系统和方法 | |
CN106886422A (zh) | 软件升级方法及装置、电子设备 | |
CN104866339A (zh) | Fota数据的分布式持久化管理方法、系统和装置 | |
CN106657433B (zh) | 一种多网卡环境下物理网卡的命名方法和装置 | |
CN105119944B (zh) | 一种应用的启动方法和相关装置 | |
GB0017328D0 (en) | Automated software upgrade in distributed computing system | |
CN105450513B (zh) | 归档邮件附件的方法和云存储服务器 | |
CN110245194A (zh) | 业务数据更新方法、服务器和服务器集群 | |
CN108011934B (zh) | 一种处理资源数据的方法和装置 | |
CN107094160B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190319 |
|
RJ01 | Rejection of invention patent application after publication |