技术领域
[0001] 本
发明涉及版本下载技术领域,特别涉及一种基于对等网络思想的终端系统版本下载方法、装置及系统。
背景技术
[0002] 如今各家
银行存在类型多样、数量庞大的终端系统,这些终端系统,每隔一段时间需要升级版本。目前的版本升级方法是:采用传统的C/S(客户端/
服务器)模式,在客户端上安装了客户端应用程序,在服务器上安装服务器管理程序,多个客户端同时向服务器发出
请求,服务器接收并处理客户端请求并返回结果,客户端从服务器获取版本。该模式较易控制数据的一致性,易于管理。但随着终端数量的急剧增加,当升级客户端版本时,所有终端同时
访问服务器,造成服务器压
力巨大,系统容易出现单点失效的情况。而一旦服务器出现宕机情况,所有的终端将不能下载版本,无法完成升级。
发明内容
[0003] 本发明
实施例提供了一种基于对等网络思想的终端系统版本下载方法、装置及系统,解决了
现有技术中采用C/S模式下载版本造成服务器压力巨大、出现单点失效的技术问题。
[0004] 第一方面,本发明实施例提供了一种基于对等网络思想的终端系统版本下载方法,该方法包括:
[0005] 发送下载请求至服务器;
[0006] 当服务器根据所述下载请求查找客户端的归属网点信息,基于所述客户端的归属网点信息,判断该网点内不存在与所述客户端的终端类型相同且已经完成下载的其他客户端时,客户端从服务器下载版本升级文件;
[0007] 当判断该网点内存在与客户端的终端类型相同且已经完成下载的其他客户端时,客户端接收服务器返回的其他客户端的信息,根据所述其他客户端的信息从其他客户端下载版本升级文件;
[0008] 根据所述版本升级文件进行版本升级。
[0009] 第二方面,本发明实施例提供了一种基于对等网络思想的终端系统版本下载方法,该方法包括:
[0010] 接收客户端发送的下载请求;
[0011] 根据所述下载请求查找所述客户端的归属网点信息,基于所述客户端的归属网点信息,判断该网点内是否存在与所述客户端的终端类型相同且已经完成下载的其他客户端,若存在,则将所述其他客户端的信息发送至所述客户端,使得客户端根据所述其他客户端的信息从其他客户端下载版本升级文件;若不存在,则将版本升级文件发送至客户端,使得客户端根据所述版本升级文件进行版本升级。
[0012] 第三方面,本发明实施例提供了一种基于对等网络思想的终端系统版本下载方法,该方法包括:
[0013] 客户端发送下载请求至服务器;
[0014] 服务器根据所述下载请求查找所述客户端的归属网点信息,基于所述客户端的归属网点信息,判断该网点内是否存在与所述客户端的终端类型相同且已经完成下载的其他客户端,若存在,则将所述其他客户端的信息发送至所述客户端;若不存在,则将版本升级文件发送至客户端;
[0015] 客户端根据所述其他客户端的信息从所述其他客户端下载版本升级文件,根据所述版本升级文件进行版本升级。
[0016] 第四方面,本发明实施例还提供了一种客户端,包括:
[0017] 下载请求发送模
块,用于发送下载请求至服务器;
[0018] 下载模块,用于当服务器根据所述下载请求查找客户端的归属网点信息,基于所述客户端的归属网点信息,判断该网点内不存在与所述客户端的终端类型相同且已经完成下载的其他客户端时,客户端从服务器下载版本升级文件;当判断该网点内存在与客户端的终端类型相同且已经完成下载的其他客户端时,客户端接收服务器返回的其他客户端的信息,根据所述其他客户端的信息从其他客户端下载版本升级文件;
[0019] 版本升级模块,用于根据所述版本升级文件进行版本升级。
[0020] 第五方面,本发明实施例还提供了一种服务器,包括:
[0021] 下载请求接收模块,用于接收客户端发送的下载请求;
[0022] 归属网点信息查找模块,用于根据所述下载请求查找所述客户端的归属网点信息;
[0023] 判断模块,用于基于所述客户端的归属网点信息,判断该网点内是否存在与所述客户端的终端类型相同且已经完成下载的其他客户端;
[0024] 信息或文件下发模块,用于若存在,则将所述其他客户端的信息发送至所述客户端,使得客户端根据所述其他客户端的信息从其他客户端下载版本升级文件;若不存在,则将版本升级文件发送至客户端,使得客户端根据所述版本升级文件进行版本升级。
[0025] 第六方面,本发明实施例还提供了一种基于对等网络思想的终端系统版本下载系统,包括上面所述的客户端和服务器。
[0026] 第七方面,本发明实施例还提供了一种计算机设备,包括
存储器、处理器及存储在存储器上并可在处理器上运行的
计算机程序,所述处理器执行所述计算机程序时实现上述所述方法。
[0027] 第八方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述所述方法的计算机程序。
[0028] 在一个实施例中,客户端发送下载请求至服务器,服务器会根据客户端的归属网点判断该网点内是否存在与客户端的终端类型相同且已经完成下载的其他客户端,若存在,则将其他客户端的信息发送至客户端,客户端从其他客户端处下载版本升级文件;若不存在,则客户端从服务器处下载版本升级文件。与现有的C/S模式相比,本发明将C/S模式与P2P模式结合,降低服务器压力,实现局域网内的文件共享,最大程度确保客户端完成版本下载过程。
附图说明
[0029] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0030] 图1是本发明实施例提供的一种基于对等网络思想的终端系统版本下载方法(客户端)
流程图(一);
[0031] 图2是本发明实施例提供的一种基于对等网络思想的终端系统版本下载方法(客户端)流程图(二);
[0032] 图3是本发明实施例提供的一种客户端结构
框图(一);
[0033] 图4是本发明实施例提供的一种客户端结构框图(二);
[0034] 图5是本发明实施例提供的一种基于对等网络思想的终端系统版本下载方法(服务器)流程图(一);
[0035] 图6是本发明实施例提供的一种基于对等网络思想的终端系统版本下载方法(服务器)流程图(二);
[0036] 图7是本发明实施例提供的一种服务器结构框图(一);
[0037] 图8是本发明实施例提供的一种服务器结构框图(二);
[0038] 图9是本发明实施例提供的一种基于对等网络思想的终端系统版本下载方法(客户端和服务器)流程图(一);
[0039] 图10是本发明实施例提供的一种基于对等网络思想的终端系统版本下载方法(客户端和服务器)流程图(二);
[0040] 图11是本发明实施例提供的一种基于对等网络思想的终端系统版本下载系统结构框图。
具体实施方式
[0041] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0042] 传统的C/S(Client/Server)模式,在客户端上安装了客户端应用程序,在服务器上安装服务器管理程序,客户端发出请求,服务器接收并处理客户端请求,并返回结果。
[0043] 对等网络(P2P)技术属于
覆盖层网络(Overlay Network)的范畴,是相对于客户机/服务器(C/S)模式来书的一种网路信息交换方式。在C/S模式中,数据的分发采用专
门的服务器,多个客户端都从服务器获取数据。这种模式的优点是:数据的一致性容易控制,系统也容易管理。缺点是:因为服务器的个数只有一个(即便是多个也非常有限),系统容易出现单一失效点;单一服务器面对众多的客户端,由于CPU能力、内存大小、网络带宽的限制,可同时服务的客户端非常有限,可扩展性差。P2P技术正是为了解决这些问题而提出来的一种对等网络结构,在P2P网络中,每个
节点既可以从其他节点得到服务,也可以向其他节点提供服务。对等网络(P2P)技术极大缓解传统架构中服务器压力过大、单点失效等情况,且能充分利用终端的丰富资源,对等网络(P2P)技术被广泛应用到
计算机网络的多个领域,如分布式科学计算、文件共享等。
[0044] 基于此,本发明提出了一种基于对等网络思想的终端系统版本下载方法(客户端),如图1所示,该方法包括:
[0045] 步骤101:发送下载请求至服务器;
[0046] 步骤102:当服务器根据所述下载请求(其中可以包括客户端的终端编号)查找客户端的归属网点信息(该数据为实时数据,从另外的服务器同步过来),基于所述客户端的归属网点信息,判断该网点内不存在与所述客户端的终端类型相同且已经完成下载的其他客户端时,客户端从服务器下载版本升级文件;当判断该网点内存在与客户端的终端类型相同且已经完成下载的其他客户端时,客户端接收服务器返回的其他客户端的信息,根据所述其他客户端的信息通过局域网从其他客户端下载版本升级文件;
[0047] 步骤103:根据所述版本升级文件进行版本升级。
[0048] 在本发明实施例中,所述其他客户端的信息为其他客户端的地址信息(IP),此时,还包括:
[0049] 测试所述地址信息是否可用,若所述地址信息可用,则从所述其他客户端下载版本升级文件;若所述地址信息不可用,则继续发送下载请求至服务器,从服务器下载版本升级文件。
[0050] 在本发明实施例中,如图2所示,该方法还包括:
[0051] 步骤104:发送下载完成信息至服务器。
[0052] 基于同一发明构思,本发明实施例中还提供了一种客户端,如下面的实施例所述。由于客户端解决问题的原理与基于对等网络思想的终端系统版本下载方法(图1和图2)相似,因此客户端的实施可以参见基于对等网络思想的终端系统版本下载方法(图1和图2)的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的
软件和/或
硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
[0053] 图3是本发明实施例提供的一种客户端的结构框图(一),如图3所示,包括:
[0054] 下载请求发送模块301,用于发送下载请求至服务器;
[0055] 下载模块302,用于当服务器根据所述下载请求查找客户端的归属网点信息,基于所述客户端的归属网点信息,判断该网点内不存在与所述客户端的终端类型相同且已经完成下载的其他客户端时,客户端从服务器下载版本升级文件;当判断该网点内存在与客户端的终端类型相同且已经完成下载的其他客户端时,客户端接收服务器返回的其他客户端的信息,根据所述其他客户端的信息从其他客户端下载版本升级文件;
[0056] 版本升级模块303,用于根据所述版本升级文件进行版本升级。
[0057] 在本发明实施例中,所述其他客户端的信息为其他客户端的地址信息;
[0058] 还包括:测试模块,用于测试所述地址信息是否可用;
[0059] 所述下载模块302具体用于:若所述地址信息可用,则客户端从所述其他客户端下载版本升级文件;
[0060] 下载请求发送模块301还用于:若所述地址信息不可用,则继续发送下载请求至服务器,从服务器下载版本升级文件。
[0061] 在本发明实施例中,如图4所示,该客户端还包括:
[0062] 下载完成信息发送模块304,用于发送下载完成信息至服务器。
[0063] 基于此,本发明提出了一种基于对等网络思想的终端系统版本下载方法(服务器端),如图5所示,该方法包括:
[0064] 步骤501:接收客户端发送的下载请求;
[0065] 步骤502:根据所述下载请求查找所述客户端的归属网点信息,基于所述客户端的归属网点信息,判断该网点内是否存在与所述客户端的终端类型相同且已经完成下载的其他客户端,若存在,则将所述其他客户端的信息发送至所述客户端,使得客户端根据所述其他客户端的信息从其他客户端下载版本升级文件;若不存在,则将版本升级文件发送至客户端,使得客户端根据所述版本升级文件进行版本升级。
[0066] 在本发明实施例中,所述下载请求包括客户端的终端编号;
[0067] 步骤502:根据所述下载请求查找所述客户端的归属网点信息,包括:
[0068] 根据所述终端编号查找所述客户端的归属网点信息。
[0069] 在本发明实施例中,所述其他客户端的信息为其他客户端的地址信息;
[0070] 还包括:
[0071] 在客户端测试所述地址信息不可用,则接收客户端再次发送的下载请求,并将版本升级文件发送至客户端。
[0072] 在本发明实施例中,如图6所示,还包括:
[0073] 步骤503:获取并存储每个客户端的版本下载状态;
[0074] 步骤504:接收客户端发送的下载完成信息,根据所述下载完成信息将该客户端的版本下载状态更改为已完成,以确保该终端可提供该网点的其他终端下载版本。
[0075] 基于同一发明构思,本发明实施例中还提供了一种服务器,如下面的实施例所述。由于服务器解决问题的原理与基于对等网络思想的终端系统版本下载方法(图5和图6)相似,因此服务器的实施可以参见基于对等网络思想的终端系统版本下载方法(图5和图6)的实施,重复之处不再赘述。
[0076] 图7是本发明实施例提供的一种服务器结构框图(一),如图7所示,包括:
[0077] 下载请求接收模块701,用于接收客户端发送的下载请求;
[0078] 归属网点信息查找模块702,用于根据所述下载请求查找所述客户端的归属网点信息;
[0079] 判断模块703,用于基于所述客户端的归属网点信息,判断该网点内是否存在与所述客户端的终端类型相同且已经完成下载的其他客户端;
[0080] 信息或文件下发模块704,用于若存在,则将所述其他客户端的信息发送至所述客户端,使得客户端根据所述其他客户端的信息从其他客户端下载版本升级文件;若不存在,则将版本升级文件发送至客户端,使得客户端根据所述版本升级文件进行版本升级。
[0081] 在本发明实施例中,所述下载请求包括客户端的终端编号;
[0082] 所述归属网点信息查找模块702具体用于:
[0083] 根据所述终端编号查找所述客户端的归属网点信息。
[0084] 在本发明实施例中,所述其他客户端的信息为其他客户端的地址信息;
[0085] 所述下载请求接收模块701还用于:
[0086] 在客户端测试所述地址信息不可用时,接收客户端再次发送的下载请求。
[0087] 在本发明实施例中,如图8所示,该服务器还包括:
[0088] 信息获取模块705,用于获取并存储每个客户端的版本下载状态;
[0089] 信息更改模块706,用于接收客户端发送的下载完成信息,根据所述下载完成信息将该客户端的版本下载状态更改为已完成。
[0090] 图9是本发明实施例提供的一种基于对等网络思想的终端系统版本下载方法(客户端和服务器)流程图(一),如图9所示,该方法包括:
[0091] 步骤901:客户端发送下载请求至服务器;
[0092] 步骤902:服务器根据所述下载请求查找所述客户端的归属网点信息,基于所述客户端的归属网点信息,判断该网点内是否存在与所述客户端的终端类型相同且已经完成下载的其他客户端,若存在,则将所述其他客户端的信息发送至所述客户端;若不存在,则将版本升级文件发送至客户端;
[0093] 步骤903:客户端根据所述其他客户端的信息从所述其他客户端下载版本升级文件,根据所述版本升级文件进行版本升级。
[0094] 在本发明实施例中,所述下载请求包括客户端的终端编号;
[0095] 步骤902:服务器根据所述下载请求查找所述客户端的归属网点信息,包括:
[0096] 服务器根据所述终端编号查找所述客户端的归属网点信息。
[0097] 在本发明实施例中,所述其他客户端的信息为其他客户端的地址信息;
[0098] 还包括:
[0099] 客户端测试所述地址信息是否可用,若所述地址信息可用,则客户端从所述其他客户端下载版本升级文件;若所述地址信息不可用,则继续发送下载请求至服务器,从服务器下载版本升级文件。
[0100] 在本发明实施例中,如图10所示,该方法还包括:
[0101] 步骤904:服务器获取并存储每个客户端的版本下载状态;
[0102] 步骤905:客户端发送下载完成信息至所述服务器;
[0103] 步骤906:服务器根据所述下载完成信息将该客户端的版本下载状态更改为已完成。
[0104] 基于同一发明构思,本发明实施例中还提供了一种基于对等网络思想的银行终端系统版本下载系统,包括上面所述的客户端(多个)和服务器,如图11所示。
[0105] 具体的,客户端每个节点既可以向其他节点提供文件下载服务,也可以从其他节点得到文件下载服务。局域网端到端通讯涉及相关端口的访问权限,需要提前开通权限。
[0106] 所有终端(即客户端),与服务器均有连接,与同一网点的终端也有连接。该网络结构中的所有终端节点都是对等的,不存在主次之分。原有的客户端与服务器的连接,继续保持,以防止同一网点终端均未下载完成或同一网点局域网存在问题等情况。同一网点的客户端之间通讯保持畅通,防止服务器压力过大,
进程池满等情况。
[0107] 本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述所述方法。
[0108] 本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述所述方法的计算机程序。
[0109] 综上所述,本发明提出的基于对等网络思想的终端系统版本下载方法、装置及系统具有如下优点:
[0110] 与现有的C/S模式相比,本发明将C/S模式与P2P模式(对等网络思想)结合,客户端发送下载请求至服务器,服务器会根据客户端的归属网点判断该网点内是否存在与客户端的终端类型相同且已经完成下载的其他客户端,若存在,则将其他客户端的信息发送至客户端,客户端从其他客户端处下载版本升级文件;若不存在,则客户端从服务器处下载版本升级文件,这样可以降低服务器压力,实现局域网内的文件共享,最大程度确保客户端完成版本下载过程。
[0111] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0112] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程
数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中
指定的功能的装置。
[0113] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0114] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0115] 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何
修改、等同替换、改进等,均应包含在本发明的保护范围之内。