升级包下载方法、装置、电子设备及存储介质与流程

文档序号:25351224发布日期:2021-06-08 13:32阅读:78来源:国知局
升级包下载方法、装置、电子设备及存储介质与流程

1.本发明涉及互联网技术领域,尤其涉及一种升级包下载方法、装置、电子设备及存储介质。


背景技术:

2.在互联网技术普及的今天、信息安全非常重要,经常会出一些系统的补丁和漏洞升级包。企业的计算机通常需要统一升级这些补丁和漏洞升级包。在这种业务背景下补丁分发系统应用而生。在管理端、系统管理员统一上传系统补丁和漏洞升级包。然后给客户端下策略、通知客户端进行补丁和漏洞升级包下载、并进行安装。在企业当中,有着大量的计算机设备。如果大量的计算机设备同时去下载、会造成企业内网拥堵、卡死,进而,影响补丁的下载体验。


技术实现要素:

3.针对现有技术中的问题,本发明实施例提供一种升级包下载方法、装置、电子设备及存储介质。
4.具体地,本发明实施例提供了以下技术方案:
5.第一方面,本发明实施例提供了一种升级包下载方法,包括:
6.向用户终端发送更新通知;
7.接收所述用户终端基于所述更新通知发送的升级包下载地址请求;
8.基于所述升级包下载地址请求,向所述用户终端发送代理服务器的地址,以便所述用户终端通过代理服务器获得预先存储在分布式文件系统中的补丁升级包和/或漏洞升级包,
9.其中,所述代理服务器中预先配置有限流策略,以对所述用户终端进行补丁升级包和/或漏洞升级包的下载流量控制。
10.进一步地,所述限流策略包括单位时间内请求数限制策略和/或同一时间的连接数限制策略,其中,所述单位时间内请求数限制策略用于限制单位时间内的用户终端发送的请求数,所述同一时间的连接数限制策略用于限制同一时间内用户终端的连接数。
11.进一步地,所述基于所述升级包下载地址请求,向所述用户终端发送代理服务器的地址,以便所述用户终端通过代理服务器获得预先存储在分布式文件系统中的补丁升级包和/或漏洞升级包,包括:
12.获取所述代理服务器的地址,并向所述用户终端发送代理服务器的地址,以便所述用户终端通过所述代理服务器获得所述补丁升级包和/或漏洞升级包,其中,所述代理服务器用于从所述分布式文件系统中获取所述补丁升级包和/或漏洞升级包,并将所述补丁升级包和/或漏洞升级包转换为文件流,并将所述文件流发送给所述用户终端。
13.进一步地,所述代理服务器为nginx集群。
14.进一步地,所述代理服务器的地址包括公钥和/或时间戳,其中,所述公钥用于校
验所述补丁升级包和/或漏洞升级包的下载安全,所述时间戳用于校验所述补丁升级包和/或漏洞升级包下载时效。
15.进一步地,在向用户终端发送更新通知之前,还包括:向所述分布式文件系统上传所述补丁升级包和/或漏洞升级包。
16.第二方面,本发明实施例还提供了一种升级包下载装置,包括:
17.发送模块,用于向用户终端发送更新通知;
18.接收模块,用于接收所述用户终端基于所述更新通知发送的升级包下载地址请求;
19.下载控制模块,用于基于所述升级包下载地址请求,向所述用户终端发送代理服务器的地址,以便所述用户终端通过代理服务器获得预先存储在分布式文件系统中的补丁升级包和/或漏洞升级包,其中,所述代理服务器中预先配置有限流策略,以对所述用户终端进行补丁升级包和/或漏洞升级包的下载流量控制。
20.第三方面,本发明实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述的升级包下载方法的步骤。
21.第四方面,本发明实施例还提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所述的升级包下载方法的步骤。
22.第五方面,本发明实施例还提供了一种计算机程序产品,所计算机程序产品包括有计算机程序,该计算机程序被处理器执行时实现如第一方面所述的升级包下载方法的步骤。
23.由上面技术方案可知,本发明实施例提供的升级包下载方法、装置、电子设备及存储介质,通过升级包分发时下载流量、下载数量的限制,可以避免如企业内大量的用户终端同时下载导致的企业内网络拥堵、卡死的现象,提升了升级包的下载体验。
附图说明
24.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
25.图1为本发明一实施例提供的升级包下载方法的流程图;
26.图2为本发明一实施例提供的升级包下载方法的时序图;
27.图3为本发明一实施例提供的升级包下载装置的结构框图;
28.图4为本发明一实施例提供的电子设备的结构示意图。
具体实施方式
29.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员
在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
30.图1示出了本发明实施例提供的升级包下载方法的流程图。如图1所示,本发明实施例提供的升级包下载方法,包括如下步骤:
31.步骤101:向用户终端发送更新通知。
32.如图2所示,可以通过特定的服务,如配置在服务器上的上传下载服务或者说是上传下载接口向用户终端发送更新通知。例如:当分布式文件系统(fastdfs)中存储了新的升级包如补丁升级包和/或漏洞升级包时,上传下载服务器此时可以向用户终端发送更新通知,目的是提醒用户终端下载补丁升级包和/或漏洞升级包进行系统更新。当然,上传下载服务也可以定期地向用户终端发送升级包的更新通知。
33.在本发明的一个实施例中,如图2所示,上传下载服务可以通过udp(用户数据报协议,user datagram protocol))通知服务向用户终端即客户端进行如补丁升级包和/或漏洞升级包的更新通知。也就是说,上传下载服务调用udp服务通知客户端进行补丁和/或漏洞更新,由udp通知给客户端。
34.在以上描述中,用户终端为但不限于电脑。例如:企业内员工的电脑。分布式文件系统(fastdfs)是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。
35.fastdfs为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用fastdfs很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。
36.fastdfs服务端有两个角色:跟踪器(tracker)和存储节点(storage)。跟踪器主要做调度工作,在访问上起负载均衡的作用。
37.存储节点存储文件,完成文件管理的所有功能:就是这样的存储、同步和提供存取接口,fastdfs同时对文件的metadata进行管理。所谓文件的meta data就是文件的相关属性,以键值对(key value)方式表示,如:width=1024,其中的key为width,value为1024。文件metadata是文件属性列表,可以包含多个键值对。
38.跟踪器和存储节点都可以由一台或多台服务器构成。跟踪器和存储节点中的服务器均可以随时增加或下线而不会影响线上服务。其中跟踪器中的所有服务器都是对等的,可以根据服务器的压力情况随时增加或减少。
39.为了支持大容量,存储节点(服务器)采用了分卷(或分组)的组织方式。存储系统由一个或多个卷组成,卷与卷之间的文件是相互独立的,所有卷的文件容量累加就是整个存储系统中的文件容量。一个卷可以由一台或多台存储服务器组成,一个卷下的存储服务器中的文件都是相同的,卷中的多台存储服务器起到了冗余备份和负载均衡的作用。
40.在卷中增加服务器时,同步已有的文件由系统自动完成,同步完成后,系统自动将新增服务器切换到线上提供服务。
41.当存储空间不足或即将耗尽时,可以动态添加卷。只需要增加一台或多台服务器,并将它们配置为一个新的卷,这样就扩大了存储系统的容量。
42.步骤102:接收用户终端基于更新通知发送的升级包下载地址请求。
43.用户终端接收到上传下载服务发送的更新通知后,如果更新,则可以访问上传下
载服务,向上传下载服务发送升级包下载地址请求,即:用户终端向上传下载服务询问补丁和/或漏洞升级包下载地址。
44.步骤103:基于升级包下载地址请求,向用户终端发送代理服务器的地址,以便用户终端通过代理服务器获得预先存储在分布式文件系统中的补丁升级包和/或漏洞升级包,其中,代理服务器中预先配置有限流策略,以对用户终端进行补丁升级包和/或漏洞升级包的下载流量控制。
45.其中,限流策略可以限制连接数和请求数。例如限流策略包括单位时间内请求数限制策略和/或同一时间的连接数限制策略,其中,单位时间内请求数限制策略用于限制单位时间内的用户终端发送的请求数,同一时间的连接数限制策略用于限制同一时间内用户终端的连接数。
46.在本发明的一个实施例中,基于升级包下载地址请求,向用户终端发送代理服务器的地址,以便用户终端通过代理服务器获得预先存储在分布式文件系统中的补丁升级包和/或漏洞升级包,包括:获取代理服务器的地址,并向用户终端发送代理服务器的地址,以便用户终端通过代理服务器获得补丁升级包和/或漏洞升级包,其中,代理服务器用于从分布式文件系统中获取补丁升级包和/或漏洞升级包,并将补丁升级包和/或漏洞升级包转换为文件流,并将文件流发送给用户终端。
47.该示例中,代理服务器为但不限于nginx集群。
48.具体来说,如图2所示,代理服务器以nginx集群为例,代理服务器的地址则为nginx地址,用户终端直接访问nginx地址,nginx集群去获取分布式文件系统上的文件(即:补丁升级包和/或漏洞升级包)并转化为文件流,nginx将文件流返回给用户终端,这样,用户终端得到补丁升级包和/或漏洞升级包,可以进行系统的更新操作。例如:对于限流的实现,可以预先在nginx集群中进行配置,如在nginx中配置如下:limit_req_zone用来限制单位时间内的请求数,即速率限制,采用的漏桶算法例如为"leaky bucket";limit_req_conn用来限制同一时间连接数,即并发限制。也就是说,通过nginx内置的limit_req_zone用来限制单位时间内的请求数,用limit_req_conn用来限制同一时间连接数,即并发限制。来达到流量控制的目的。
49.此外,引入nginx集群,用nginx集群去代理分布式文件系统上的文件地址。用nginx控制下载时的负载均衡和下载速度,从而,解决了升级包分发时多个用户终端同时下载导致下载速度慢、网络阻塞的发生,通过下载流量的控制,可以避免如企业内大量的用户终端同时下载导致的企业内网络拥堵、卡死的现象,提升补丁的下载体验。
50.根据本发明实施例的升级包下载方法,通过升级包分发时下载流量、下载数量的限制,可以避免如企业内大量的用户终端同时下载导致的企业内网络拥堵、卡死的现象,提升了升级包的下载体验。
51.在本发明的一个实施例中,代理服务器的地址包括公钥和/或时间戳,其中,公钥用于校验所述补丁升级包和/或漏洞升级包的下载安全,时间戳用于校验所述补丁升级包和/或漏洞升级包下载时效。例如:设置secret

key,使服务器返回给客户端的下载路径上带secret

key和时间戳。secret

key解决下载的安全问题、时间戳解决下载的时效问题。由此,可以提升升级包的下载安全性和实效性。防止匿名用户侵入进行恶意下载,保证了企业内网的安全性和可靠性。
52.其中,密钥:keytool是一个java数据证书的管理工具,keytool将密钥(key)和证书(certificates)存在一个称为keystore的文件中在keystore里,包含两种数据:密钥实体(key entity)
‑‑
密钥(secret key)又或者是私钥和配对公钥(采用非对称加密)
53.秘密密钥:(1)秘密密钥(secret key)的数字签名(2)公开密钥(public key)的数字签名以太网是今天使用最广泛的组网方式之一,由以太网构成的局域网络,一般由几台工作站与一个集线器(hub)组成,这些工作站通过以太网卡和专用电缆接在集线器上。
54.秘密金钥:当发送者要发送一份文件时,他利用一把秘密金钥(secret key)将文件中的明文转成密文后寄出,而接收者收到此份密文后便利用同一把秘密金钥将密文转成明文。
55.秘钥:用来加密和解密数据的算法分为两大类:秘钥(secret key)或对称密码术,其中对加密对他人隐私的好奇心和隐藏信息是所有人类社会的特征。随着计算能力的出现和高级数学技术的发展,系统变得非常复杂,目前有可能构造出很难被有效破解的密码。secret

key:sk,秘密密钥。
56.在本发明的一个实施例中,如图2所示,在向用户终端发送更新通知之前,还包括:向分布式文件系统上传补丁升级包和/或漏洞升级包。例如:用户通过管理应用访问上传下载服务,通过上传下载服务向分布式文件系统中上传升级包。
57.图3示出了本发明实施例提供的升级包下载装置的结构示意图。如图3所示,本实施例提供的升级包下载装置,包括:发送模块310、接收模块320和下载控制模块330,其中:
58.发送模块310,用于向用户终端发送更新通知;
59.接收模块320,用于接收所述用户终端基于所述更新通知发送的升级包下载地址请求;
60.下载控制模块330,用于基于所述升级包下载地址请求,向所述用户终端发送代理服务器的地址,以便所述用户终端通过代理服务器获得预先存储在分布式文件系统中的补丁升级包和/或漏洞升级包,其中,所述代理服务器中预先配置有限流策略,以对所述用户终端进行补丁升级包和/或漏洞升级包的下载流量控制。
61.根据本发明实施例的升级包下载装置,通过升级包分发时下载流量、下载数量的限制,可以避免如企业内大量的用户终端同时下载导致的企业内网络拥堵、卡死的现象,提升了升级包的下载体验。
62.由于本发明实施例提供的升级包下载装置,可以用于执行上述实施例所述的升级包下载方法,其工作原理和有益效果类似,故此处不再详述,具体内容可参见上述实施例的介绍。
63.在本实施例中,需要说明的是,本发明实施例的装置中的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
64.基于相同的发明构思,本发明又一实施例提供了一种电子设备,参见图4,所述电子设备具体包括如下内容:处理器301、存储器302、通信接口303和通信总线304;
65.其中,所述处理器301、存储器302、通信接口303通过所述通信总线304完成相互间的通信;
66.所述处理器301用于调用所述存储器302中的计算机程序,所述处理器执行所述计算机程序时实现上述升级包下载方法的全部步骤,例如,所述处理器执行所述计算机程序
时实现下述过程:向用户终端发送更新通知;接收所述用户终端基于所述更新通知发送的升级包下载地址请求;基于所述升级包下载地址请求,向所述用户终端发送代理服务器的地址,以便所述用户终端通过代理服务器获得预先存储在分布式文件系统中的补丁升级包和/或漏洞升级包,其中,所述代理服务器中预先配置有限流策略,以对所述用户终端进行补丁升级包和/或漏洞升级包的下载流量控制。
67.可以理解的是,所述计算机程序可以执行的细化功能和扩展功能可参照上面实施例的描述。
68.基于相同的发明构思,本发明又一实施例提供了一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述升级包下载方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述过程:向用户终端发送更新通知;接收所述用户终端基于所述更新通知发送的升级包下载地址请求;基于所述升级包下载地址请求,向所述用户终端发送代理服务器的地址,以便所述用户终端通过代理服务器获得预先存储在分布式文件系统中的补丁升级包和/或漏洞升级包,其中,所述代理服务器中预先配置有限流策略,以对所述用户终端进行补丁升级包和/或漏洞升级包的下载流量控制。
69.可以理解的是,所述计算机程序可以执行的细化功能和扩展功能可参照上面实施例的描述。
70.基于相同的发明构思,本发明又一实施例提供了一种计算机程序产品,所计算机程序产品包括有计算机程序,该计算机程序被处理器执行时实现上述升级包下载方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述过程:向用户终端发送更新通知;接收所述用户终端基于所述更新通知发送的升级包下载地址请求;基于所述升级包下载地址请求,向所述用户终端发送代理服务器的地址,以便所述用户终端通过代理服务器获得预先存储在分布式文件系统中的补丁升级包和/或漏洞升级包,其中,所述代理服务器中预先配置有限流策略,以对所述用户终端进行补丁升级包和/或漏洞升级包的下载流量控制。
71.可以理解的是,所述计算机程序可以执行的细化功能和扩展功能可参照上面实施例的描述。
72.此外,上述的存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
73.以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明实施例方案的目的。本领域普通技术人员在不付出创
造性的劳动的情况下,即可以理解并实施。
74.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的流量审计方法。
75.此外,在本发明中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
76.此外,在本发明中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
77.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1