交易程序的更新方法及设备与流程

文档序号:26228513发布日期:2021-08-10 16:28阅读:85来源:国知局
交易程序的更新方法及设备与流程

本发明实施例涉及计算机金融技术领域,尤其涉及一种交易程序的更新方法及设备。



背景技术:

柜面交易是银行交易的基础形式,涵盖了银行的绝大部分交易种类,因此柜面交易的数量通常极其庞大的,相应的,柜面交易的程序,即交易程序的数量也非常多。在客户端上的柜面交易的使用过程中,经常需要对客户端上的交易程序进行更新。

现有技术中,在对客户端上的交易程序进行更新时,一般是进行全量更新,即下载客户端上的所有交易程序对应的交易程序包,以利用该交易程序包进行对客户端上的所有交易程序进行更新。

然而,由于是对所有交易程序进行更新,因此,需要下载大量文件,对于网络带宽以及存储等资源消耗较大,且更新所需的时间较长。



技术实现要素:

本发明实施例提供一种交易程序的更新方法及设备,以解决现有技术中资源消耗较大以及更新时间长的技术问题。

第一方面,本发明实施例提供一种交易程序的更新方法,包括:

在获取到交易访问请求时,获取所述交易访问请求中的待更新交易标识;

确定是否对所述待更新交易标识对应的待更新交易文件进行更新;

在确定对所述待更新交易标识对应的待更新交易文件进行更新时,获取所述待更新交易标识对应的最新交易文件,并根据所述最新交易文件对所述待更新交易文件进行更新,得到所述待更新交易标识对应的更新后的交易文件;

在更新完成时,基于所述更新后的交易文件显示所述待更新交易标识对应的交易程序的页面。

在一种可能的设计中,所述根据所述最新交易文件对所述待更新交易文件进行更新,包括:

获取所述待更新交易文件对应的占用状态,并根据所述占用状态对所述待更新交易文件进行更新。

在一种可能的设计中,所述根据所述占用状态对所述待更新交易文件进行更新,包括:

若所述占用状态为无占用状态,则根据所述最新交易文件对所述待更新交易文件进行更新;

若所述占用状态为共享资源占用状态,则获取目标交易的标识;

生成包括所述目标交易的标识的交易关闭提示信息,并在所述目标交易关闭时,根据所述最新交易文件对所述待更新交易文件进行更新;

若所述占用状态为基础资源占用状态,则对浏览器缓存进行清空处理,并在所述清空处理完成时,根据所述最新交易文件对所述待更新交易文件进行更新。

在一种可能的设计中,所述确定是否对所述待更新交易标识对应的待更新交易文件进行更新,包括:

获取服务器中的待更新交易标识对应的最新版本信息,并将其确定为第一版本信息;

获取所述待更新交易标识对应的待更新交易文件的当前版本信息,并将其确定为第二版本信息;

根据所述第一版本信息和所述第二版本信息进行版本校验,得到版本检验结果;

根据所述版本检验结果确定是否对所述待更新交易标识对应的待更新交易文件进行更新。

在一种可能的设计中,所述根据所述版本检验结果确定是否对所述待更新交易标识对应的待更新交易文件进行更新,包括:

若所述版本检验结果为版本一致,则确定不对所述待更新交易标识对应的待更新交易文件进行更新;

若所述版本检验结果为版本不一致,则确定对所述待更新交易标识对应的待更新交易文件进行更新。

在一种可能的设计中,所述方法还包括:

获取当前基础文件的版本信息,并根据所述当前基础文件的版本信息确定是否对所述当前基础文件进行更新;

在确定对所述当前基础文件进行更新时,获取最新基础文件,并根据所述最新基础文件对所述当前基础文件进行更新。

第二方面,本发明实施例提供一种交易程序的更新设备,包括:

信息获取模块,用于在获取到交易访问请求时,获取所述交易访问请求中的待更新交易标识;

处理模块,用于确定是否对所述待更新交易标识对应的待更新交易文件进行更新;

所述处理模块,还用于在确定对所述待更新交易标识对应的待更新交易文件进行更新时,获取所述待更新交易标识对应的最新交易文件,并根据所述最新交易文件对所述待更新交易文件进行更新,得到所述待更新交易标识对应的更新后的交易文件;

所述处理模块,还用于在更新完成时,基于所述更新后的交易文件显示所述待更新交易标识对应的交易程序的页面。

在一种可能的设计中,所述处理模块还用于:

获取所述待更新交易文件对应的占用状态,并根据所述占用状态对所述待更新交易文件进行更新。

在一种可能的设计中,所述处理模块还用于:

若所述占用状态为无占用状态,则根据所述最新交易文件对所述待更新交易文件进行更新;

若所述占用状态为共享资源占用状态,则获取目标交易的标识;

生成包括所述目标交易的标识的交易关闭提示信息,并在所述目标交易关闭时,根据所述最新交易文件对所述待更新交易文件进行更新;

若所述占用状态为基础资源占用状态,则对浏览器缓存进行清空处理,并在所述清空处理完成时,根据所述最新交易文件对所述待更新交易文件进行更新。

在一种可能的设计中,所述处理模块还用于:

获取服务器中的待更新交易标识对应的最新版本信息,并将其确定为第一版本信息;

获取所述待更新交易标识对应的待更新交易文件的当前版本信息,并将其确定为第二版本信息;

根据所述第一版本信息和所述第二版本信息进行版本校验,得到版本检验结果;

根据所述版本检验结果确定是否对所述待更新交易标识对应的待更新交易文件进行更新。

在一种可能的设计中,所述处理模块还用于:

若所述版本检验结果为版本一致,则确定不对所述待更新交易标识对应的待更新交易文件进行更新;

若所述版本检验结果为版本不一致,则确定对所述待更新交易标识对应的待更新交易文件进行更新。

在一种可能的设计中,所述处理模块还用于:

获取当前基础文件的版本信息,并根据所述当前基础文件的版本信息确定是否对所述当前基础文件进行更新;

在确定对所述当前基础文件进行更新时,获取最新基础文件,并根据所述最新基础文件对所述当前基础文件进行更新。

第三方面,本发明实施例提供一种电子设备,包括:至少一个处理器和存储器;

所述存储器存储计算机执行指令;

所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面以及第一方面各种可能的设计所述的交易程序的更新方法。

第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的交易程序的更新方法。

第五方面,本发明实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时,实现如上第一方面以及第一方面各种可能的设计所述的交易程序的更新方法。

本发明提供一种交易程序的更新方法及设备,通过在获取到交易访问请求时,表明用户需要使用交易访问请求中的待更新交易标识所对应的柜面交易,即交易程序,则确定是否需要待更新交易标识对应的交易程序的文件,即待更新交易文件是否需要进行更新,在确定进行更新时,下载,即获取该待更新交易标识对应的最新交易文件,以利用该最新交易文件对待更新交易标识对应的交易程序进行更新,即对待更新交易文件进行更新,在更新完成时,基于该待更新交易标识对应的更新后的交易文件加载相应的交易程序,即显示相应的交易页面,实现交易程序的热更新,由于在进行交易更新时,仅需更新用户所使用的交易程序,即进行下载所需的交易程序对应的交易文件,无需进行全量更新,即无需下载所有交易程序对应的交易文件,减少网络带宽以及存储等资源消耗,同时也减少更新的时间,从而提高更新的效率,且可以避免交易更新冗余问题,即避免对不使用的交易程序进行更新。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的交易程序的更新方法的场景示意图;

图2为本发明实施例提供的交易程序的更新方法的流程示意图一;

图3为本发明实施例提供的交易程序的更新方法的流程示意图二;

图4为本发明实施例提供的热更新过程的示意图一;

图5为本发明实施例提供的热更新过程的示意图二;

图6为本发明实施例提供的交易程序的更新设备的结构示意图;

图7为本发明实施例提供的电子设备的硬件结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

目前,在对客户端上的交易程序进行更新时,一般是进行全量更新,但由于在进行全量更新时,需对所有交易程序进行更新,因此,需要下载大量文件,对于网络带宽以及存储等资源消耗较大、更新所需的时间较长。同时由于单台终端,即客户端的交易范围有限,大量客户端下载的很多交易从未使用,因此,在进行全量更新时,存在交易更新冗余问题。

因此,针对上述问题,本发明的技术构思采用c/s(client/serve,客户端/服务器)、b/s(browser/server,浏览器/服务器)混合模式开发和展示交易,并在客户端搭建本地应用服务,充分利用浏览器和容器壳的紧密协作,完成单交易文件,即用户所使用的交易程序对应的交易文件的下载,并通过本地应用服务完成文件传输应答,以及通过浏览器完成交易文件的加载和展示,实现了交易的热更新,避免对客户端上的交易进行全量更新,而是仅是对用户所使用的交易进行更新,减少资源的消耗,且提高更新效率,同时还避免了交易更新容易问题。

下面以具体地示例对本公开的技术方案以及本公开的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的示例可以相互结合,对于相同或相似的概念或过程可能在某些示例中不再赘述。下面将结合附图,对本公开的示例进行描述。

图1为本发明实施例提供的交易程序的更新方法的场景示意图,如图1所示,电子设备101从服务器中获取所需的最新版本的交易文件,并利用该交易文件对电子设备101本地上的相关交易程序进行更新。

其中,电子设备101为安装有交易程序的客户端,即提供柜面交易,即交易的客户端。

其中,服务器102为远程版本服务器。相关人员会将开发完成并编译打包好的交易程序文件(例如,组件包)发布在远程版本服务器中,以便于客户端可以进行更新下载。

图2为本发明实施例提供的交易程序的更新方法的流程示意图一,本实施例的执行主体可以为图1所示的电子设备,即客户端。如图2所示,该方法包括:

s201、在获取到交易访问请求时,获取交易访问请求中的待更新交易标识。

s202、确定是否对待更新交易标识对应的待更新交易文件进行更新。

在本实施例中,在获取到交易访问请求时,表明用户需要使用客户端上的相关交易,即需要使用交易访问请求中的待更新交易标识所对应的交易,则获取该交易,即待更新交易标识对应的待更新交易文件,并判断该待更新交易标识对应的待更新交易文件是否需要进行更新,以确定该待更新交易标识对应的交易程序是否需要进行更新。

可选的,c/s、b/s混合模式要求交易程序的开发和展示方式是html,当用户打开相关页面上的交易菜单,即打开某个交易时,表明用户需要使用该交易,则确定用户输入了相应的交易访问请求,该交易对应的交易标识为待更新交易标识。

其中,待更新交易标识对应的待更新交易文件表示待更新交易标识对应的交易文件,即表示实现该待更新交易标识对应的交易程序所需的文件。

可选的,待更新交易文件包括交易包和/或依赖包。该交易包包括多个组件包。

具体的,交易的基本组成单位为组件,每个交易是由多个组件包,即组件包(例如,描述接口信息的组件包、描述枚举信息的组件包)组成。另外,组件包可能还会存在关联的文件包,即依赖包,当运行组件包时,也需运行该组件包对应的依赖包。

另外,在确定组件包对应的依赖包时,可以从依赖清单中进行查找。在开发交易时,基于node.js包管理机制,相关人员将各个交易组件对应的依赖清单写入至包信息描述文件package.json,该依赖清单包括交易组件对应的依赖包的信息(例如,依赖包标识、依赖包的版本信息等)。

s203、在确定对待更新交易标识对应的待更新交易文件进行更新时,获取待更新交易标识对应的最新交易文件,并根据最新交易文件对待更新交易文件进行更新,得到待更新交易标识对应的更新后的交易文件。

在本实施例中,在确定需对待更新交易标识对应的待更新交易文件进行更新时,表明该待更新交易文件并不是最新版本,需对其进行更新,则获取待更新交易标识对应的最新交易文件,即最新版本的交易文件,并利用该最新交易文件对该待更新交易文件进行更新,以实现对待更新交易标识对应的交易程序的更新。

可选的,利用最新交易文件对待更新交易文件,即相应的交易程序进行更新的过程与现有利用相关文件更新程序的过程类似,在此,不对其进行赘述。

可选的,在获取待更新交易标识对应的最新交易文件时,可以从远程版本服务器中进行获取,即下载。具体的,客户端发送相应的自定义报文至远程版本服务器,远程版本服务器在接收到该自定义报文时,返回相应的最新交易文件。

s204、在更新完成时,基于更新后的交易文件显示待更新交易标识对应的交易程序的页面。

在本实施例中,在对待更新交易标识对应的交易程序更新完成后,表示更新后的交易程序的版本为最新版本,相应的,更新后的交易程序所对应的交易文件,即更新后的交易文件的版本为最新版本,则可以基于该更新后的交易文件,加载并显示该待更新交易标识对应的页面,即通过浏览器加载更新后的交易程序,显示相应的交易页面,完成交易展现。

在本实施例中,在获取到用户输入的交易访问请求时,即在用户打开某个交易时,表明用户需使用该交易,则确定该交易对应的交易程序,即交易文件是否需要进行更新,以在确定需要进行更新时,对该交易程序程序进行更新,实现交易的热更新。

从上述描述可知,在获取到交易访问请求时,表明用户需要使用交易访问请求中的待更新交易标识所对应的柜面交易,即交易程序,则确定是否需要待更新交易标识对应的交易程序的文件,即待更新交易文件是否需要进行更新,在确定进行更新时,下载,即获取该待更新交易标识对应的最新交易文件,以利用该最新交易文件对待更新交易标识对应的交易程序进行更新,即对待更新交易文件进行更新,在更新完成时,基于该待更新交易标识对应的更新后的交易文件加载相应的交易程序,即显示相应的交易页面,实现交易程序的快速更新,由于在进行交易更新时,仅需更新用户所使用的交易程序,即进行下载所需的交易程序对应的交易文件,无需进行全量更新,即无需下载所有交易程序对应的交易文件,减少网络带宽以及存储等资源消耗,同时也减少更新的时间,从而提高更新的效率,且可以避免交易更新冗余问题,即避免对不使用的交易程序进行更新。

图3为本发明实施例提供的交易程序的更新方法的流程示意图二,本实施例图2实施例的基础上,在更新交易程序时,需要根据该交易程序对应的待更新交易文件的占用状态进行更新,下面将结合一个具体实施例对此过程进行描述。如图3所示,该方法包括:

s301、在获取到交易访问请求时,获取交易访问请求中的待更新交易标识。

s302、确定是否对待更新交易标识对应的待更新交易文件进行更新。

在本实施例中,在确定用户需使用的交易的标识,即待更新交易标识时,获取服务器中的待更新交易标识对应的最新版本信息,并将其确定为第一版本信息。获取待更新交易标识对应的待更新交易文件的当前版本信息,并将其确定为第二版本信息。根据第一版本信息和第二版本信息进行版本校验,得到版本检验结果。根据版本检验结果确定是否对待更新交易标识对应的待更新交易文件进行更新。

具体的,获取服务器,即远程版本服务器存储的待更新交易标识对应的交易程序的最新版本信息,并将其确定为第一版本信息。从本地获取存储的待更新交易标识对应的交易程序,即待更新交易文件的当前版本信息,以确定客户端本地上的交易程序的版本信息,并将其确定为第二版本信息。基于第一版本信息和第二版本信息进行版本校验,即确定第一版本信息与第二版本信息是否一致,以确定客户端本地存储的待更新交易文件是否为该交易程序对应的最新版本的文件,从而确定是否需要对客户端上的交易程序进行更新。

可选的,当对交易程序进行更新时,是对交易程序对应的组件包和/或交易程序对应的依赖包进行更新时,待更新交易文件的当前版本信息,即第一版本信息包括各个组件包,即组件包标识对应的当前版本信息和/或各个依赖包,即依赖包标识对应的当前版本信息。最新版本信息,即第二版本信息包括各个组件包标识对应的最新版本信息和/或各依赖包标识对应的最新版本信息。相应的,版本校验结果包括组件包对应的版本校验结果和或依赖包对应的版本校验结果。

另外,可选的,版本信息包括版本号。

进一步的,在基于第一版本信息和第二版本信息进行版本校验时,对于每个组件包,判断该组件包,即该组件包标识对应的最新版本信息和该组件包标识对应的当前版本信息是否一致,若两者一致,表明客户端本地上的该组件包的当前版本为最新版本,则确定该组件包对应的版本校验结果为版本一致;若两者不一致,表明客户端本地上的该组件包的当前版本不是最新版本,则确定该组件包对应的版本校验结果为版本不一致。

对于每个依赖包,判断该依赖包对应的最新版本信息和当前版本信息是否一致,若两者一致,表明客户端本地上的该依赖包的当前版本为最新版本,则确定该依赖包对应的版本校验结果为版本一致;若两者不一致,表明客户端本地上的该依赖包的当前版本不是最新版本,则确定该依赖包对应的版本校验结果为版本不一致。

另外,可选的,在确定组件包对应的最新版本号与该组件包对应的当前版本号相同时,确定两者一致,在确定组件包对应的最新版本号与该组件包对应的当前版本号不相同时,确定两者不一致。同理,在确定依赖包对应的最新版本号与该依赖包对应的当前版本号相同时,确定两者一致,在确定依赖包对应的最新版本号与该依赖包对应的当前版本号不相同时,确定两者不一致。

可选的,当对交易程序进行更新时,是对交易程序对应的交易包整体和/或依赖包进行更新时,待更新交易文件的当前版本信息,即第一版本信息包括交易包对应的当前版本信息和/或各个依赖包,即依赖包标识对应的当前版本信息。最新版本信息,即第二版本信息包括交易包对应的最新版本信息和/或各依赖包标识对应的最新版本信息。相应的,版本校验结果包括交易包对应的版本校验结果和或依赖包对应的版本校验结果。

其中,确定交易包对应的版本校验结果的过程与上述确定组件包或依赖包对应的版本校验结果的过程类似,在此,不对其进行赘述。

在本实施例中,可选的,根据版本检验结果确定是否对待更新交易标识对应的待更新交易文件进行更新,包括:

若版本检验结果为版本一致,则确定不对待更新交易标识对应的待更新交易文件进行更新。若版本检验结果为版本不一致,则确定对待更新交易标识对应的待更新交易文件进行更新。

在本实施例中,当版本校验结果包括组件包对应的版本校验结果和依赖包对应的版本校验结果时,待更新交易标识对应的各个组件包所对应的版本校验结果均为版本一致,且该待更新交易标识对应的各个依赖包所对应的版本校验结果均为版本一致,表明该待更新交易标识对应的交易文件的当前版本均为最新版本,无需进行更新,则确定不对待更新交易标识对应的待更新交易文件进行更新。

当存在与待更新交易标识对应的组件包对应的版本校验结果为版本不一致,和/或,与待更新交易标识对应的依赖包对应的版本校验结果为版本不一致时,表明客户端本地应用的该组件包的版本不是最新版本,服务器中的该组件包对应的最新版本文件为差异文件,需利用该差异文件进行更新,和/或,表明客户端本地应用的该依赖包不是最新版本,服务器中的该依赖包对应的最新版本文件为差异文件,需利用该差异文件进行更新,则确定对待更新交易标识对应的待更新交易文件进行更新,即确定对待更新交易标识对应的交易程序进行更新。

在本实施例中,当版本校验结果包括交易包对应的版本校验结果和依赖包对应的版本校验结果时,当交易包所对应的版本校验结果为版本一致,且该各个依赖包所对应的版本校验结果均为版本一致,表明该待更新交易标识对应的交易文件的当前版本均为最新版本,无需进行更新,则确定不对待更新交易标识对应的待更新交易文件进行更新。

当待更新交易标识对应的交易包对应的版本校验结果为版本不一致,和/或,与待更新交易标识对应的依赖包对应的版本校验结果为版本不一致时,表明客户端本地应用的该交易包的版本不是最新版本,服务器中的该交易包对应的最新版本文件为差异文件,需利用该差异文件进行更新,和/或,表明客户端本地应用的该依赖包不是最新版本,服务器中的该依赖包对应的最新版本文件为差异文件,需利用该差异文件进行更新,则确定对待更新交易标识对应的待更新交易文件进行更新,即确定对待更新交易标识对应的交易程序进行更新。

在任意实施例中,可选的,在确定是否对交易程序对应的交易文件进行更新之前,先确定是否对平台基础组件和/或样式进行更新,即获取当前基础文件的版本信息,并根据当前基础文件的版本信息确定是否对当前基础文件进行更新。在确定对当前基础文件进行更新时,获取最新基础文件,并根据最新基础文件对当前基础文件进行更新。

其中,基础文件包括平台基础组件文件和/或样式文件。

具体的,如图4所示,在打开交易时,即在确定是否需要对该交易对应的交易程序进行更新之前,客户端通过容器壳先对基础文件进行版本校验,以确定是否需要对基础文件进行更新,即确定是否对平台基础组件和/或样式进行更新,并在确定对该基础文件进行更新时,表明需对平台基础组件和/或样式进行更新,则从远程版本服务器中下载最新版本的基础文件,以得到最新基础文件,并根据该最新基础文件对当前基础文件进行更新,以实现平台基础组件和/或样式的更新。在对客户端上的平台基础组件和/或样式更新完成时,继续确定是否对该交易程序进行更新,以在确定进行更新,向远程版本服务器申请相关交易文件,即差异文件,远程版本服务器返回差异文件至客户端,以使客户端利用该差异文件对该交易程序进行更新,并在更新完成时,通过浏览器加载该交易程序,以显示相应的页面。

其中,容器壳与与具体应用交易无关,其可以是客户端在柜员登录后进行下载的。容器壳对应的程序文件体积较小、更新频次低,全量下载效率较高,对整体更新效率的影响微乎其微。

可选的,容器壳基于.net技术开发,开发语言为c#,浏览器内核为chromium,javascript框架为vue。

另外,可选的,在获取到远程版本服务器返回的差异文件时,即完成差异文件下载后,本地应用服务进行文件传输应答,以告知远程版本服务器客户端已经接收到该差异文件。

s303、在确定对待更新交易标识对应的待更新交易文件进行更新时,获取待更新交易标识对应的最新交易文件,并获取待更新交易文件对应的占用状态。

在本实施例中,如图5所示,当用户打开交易时,客户端在确定该交易程序对应的版本校验结果为版本不一致时,向远程版本服务器申请下载差异文件,远程版本服务器返回该差异文件,以使客户端利用该差异文件对交易程序进行更新。

在本实施例中,由于用户可以同时打开多个交易,即客户端可以同时加载多个交易程序,因此,用户新打开的交易,即新加载的交易程序所需利用的公共文件可能被其它已打开的交易,即已加载的交易程序占用,因此,在对该新打开的交易所对应的交易程序进行更新时,需要获取该交易程序,即该待更新交易标识对应的待更新交易文件对应的占用状态。

s304、根据占用状态对待更新交易文件进行更新,得到待更新交易标识对应的更新后的交易文件。

在本实施例中,根据与待更新交易标识对应的待更新交易文件对应的占用状态确定是否需要可以直接对该待更新交易文件进行更新,以在确定可以直接进行更新时,直接利用最新交易文件,即差异文件对待更新交易文件进行更新,以将该待更新交易文件中的相关文件替换为该最新交易文件,得到待更新交易标识对应的更新后的交易文件。

可选的,在根据占用状态对待更新交易文件进行更新时,若占用状态为无占用状态,则根据最新交易文件对待更新交易文件进行更新。若占用状态为共享资源占用状态,则获取目标交易的标识。生成包括目标交易的标识的交易关闭提示信息,并在目标交易关闭时,根据最新交易文件对待更新交易文件进行更新。若占用状态为基础资源占用状态,则对浏览器缓存进行清空处理,并在清空处理完成时,根据最新交易文件对待更新交易文件进行更新。

具体的,当与待更新交易标识对应的交易程序对应的待更新交易文件为无占用状态时,表明更新该交易程序所需利用的资源(例如,组件包中的文件)未被其它交易程序占用,可以直接对该交易程序进行更新,则根据最新交易文件,即差异文件对该交易程序进行更新。

当待更新交易标识对应的交易为一般交易时,若该交易对应的待更新交易文件为共享资源占用状态,表明更新该交易对应的交易程序所需利用的资源未被其它交易程序占用,不能直接对该交易程序进行更新,需要关闭占用该资源的其它交易程序,即目标交易程序,则按照预设提示格式,生成包括该目标交易程序,即目标交易程序的标识的交易关闭提示信息,以使用户关闭该目标交易。在用户关闭目标交易时,表明交易程序更新所需利用的资源未被其它交易程序占用,可以对该交易程序进行更新,则根据最新交易文件对待更新交易文件进行更新。

举例来说,用户已经打开交易a,当用户打开交易b时,若交易b与交易a存在共用的文件,则在对交易b进行更新时,需输出包括交易a的标识的交易关闭提示信息,以使用户关闭交易a。客户端在确定用户关闭交易a时,对交易b进行更新。

当待更新交易标识对应的交易为平台框架等底层交易时,若该交易对应的待更新交易文件为基础资源占用状态,表明浏览器缓存中存在该底层交易对应的基础资源,不能直接对该交易对应的交易程序进行更新,需要清空浏览器缓存,则对浏览器缓存进行清空处理,并在清空处理完成时,根据最新交易文件对待更新交易文件进行更新。

另外,在清空处理完成时,根据最新交易文件对待更新交易文件进行更新之后,还可以在浏览器缓冲中重新加载相关基础资源,以供其它交易使用。

另外,上述过程的实现逻辑放置在entry.js文件中,该文件被入口网页index.html引用。浏览器在加载index.html完成后,即开始执行entry.js中的逻辑,进行更新检查,完成热更新流程。

具体的,逻辑代码如下:

s305、在更新完成时,基于更新后的交易文件显示待更新交易标识对应的交易程序的页面。

s306、在确定不对待更新交易标识对应的待更新交易文件进行更新时,基于待更新交易文件显示待更新交易标识对应的交易程序的页面。

在本实施例中,在确定不对待更新交易标识对应的待更新交易文件进行更新时,表明该待更新交易文件为最新版本,无需进行更新,则直接基于待更新交易文件,加载相应的交易程序,即加载并显示该交易程序对应的页面。

在本实施例中,通过采用c/s、b/s混合模式搭建交易平台,从而充分利用c/s、b/s混合模式的优势,并通过浏览器和容器壳紧密协作的方式,完成单交易下载,实现了交易的热更新,为交易的热部署提供了支撑,极大提高了更新效率,避免出现一般c/s模式和c/s、b/s混合模式采用的全量下载更新方式导致的资源消耗大、更新时间长以及交易更新冗余的问题,提高用户体验。

在本实施例中,在确定需对交易程序进行更新时,根据交易程序对应的待更新文件的占用状态确定是否可以直接对该交易程序进行更新,并在确定可以直接进行更新时,直接基于差异文件对该交易程序进行更新,在确定无法直接进行更新时,执行相关操作,以实现对交易程序的热更新,从而实现交易程序的成功更新。

图6为本发明实施例提供的交易程序的更新设备的结构示意图,如图6所示,该交易程序的更新设备600包括:信息获取模块601和处理模块602。

其中,信息获取模块601,用于在获取到交易访问请求时,获取交易访问请求中的待更新交易标识。

处理模块602,用于确定是否对待更新交易标识对应的待更新交易文件进行更新。

处理模块602,还用于在确定对待更新交易标识对应的待更新交易文件进行更新时,获取待更新交易标识对应的最新交易文件,并根据最新交易文件对待更新交易文件进行更新,得到待更新交易标识对应的更新后的交易文件。

处理模块602,还用于在更新完成时,基于更新后的交易文件显示待更新交易标识对应的交易程序的页面。

在一种可能的设计中,处理模块602还用于:

获取待更新交易文件对应的占用状态,并根据占用状态对待更新交易文件进行更新。

在一种可能的设计中,处理模块602还用于:

若占用状态为无占用状态,则根据最新交易文件对待更新交易文件进行更新。

若占用状态为共享资源占用状态,则获取目标交易的标识。

生成包括目标交易的标识的交易关闭提示信息,并在目标交易关闭时,根据最新交易文件对待更新交易文件进行更新。

若占用状态为基础资源占用状态,则对浏览器缓存进行清空处理,并在清空处理完成时,根据最新交易文件对待更新交易文件进行更新。

在一种可能的设计中,处理模块602还用于:

获取服务器中的待更新交易标识对应的最新版本信息,并将其确定为第一版本信息。

获取待更新交易标识对应的待更新交易文件的当前版本信息,并将其确定为第二版本信息。

根据第一版本信息和第二版本信息进行版本校验,得到版本检验结果。

根据版本检验结果确定是否对待更新交易标识对应的待更新交易文件进行更新。

在一种可能的设计中,处理模块602还用于:

若版本检验结果为版本一致,则确定不对待更新交易标识对应的待更新交易文件进行更新。

若版本检验结果为版本不一致,则确定对待更新交易标识对应的待更新交易文件进行更新。

在一种可能的设计中,处理模块602还用于:

获取当前基础文件的版本信息,并根据当前基础文件的版本信息确定是否对当前基础文件进行更新。

在确定对当前基础文件进行更新时,获取最新基础文件,并根据最新基础文件对当前基础文件进行更新。

本发明实施例提供的交易程序的更新设备,可以实现上述实施例的交易程序的更新方法,其实现原理和技术效果类似,此处不再赘述。

图7为本发明实施例提供的电子设备的硬件结构示意图。如图7所示,本实施例的电子设备700包括:处理器701以及存储器702。其中

存储器702,用于存储计算机执行指令。

处理器701,用于执行存储器存储的计算机执行指令,以实现上述实施例中接收设备所执行的各个步骤。具体可以参见前述方法实施例中的相关描述。

可选地,存储器702既可以是独立的,也可以跟处理器701集成在一起。

当存储器702独立设置时,该电子设备还包括总线703,用于连接存储器702和处理器701。

本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当处理器执行计算机执行指令时,实现如上的交易程序的更新方法。

本发明实施例还提供一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时,实现如上的交易程序的更新方法。

在本发明所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述模块成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例所述方法的部分步骤。

应理解,上述处理器可以是中央处理单元(英文:centralprocessingunit,简称:cpu),还可以是其他通用处理器、数字信号处理器(英文:digitalsignalprocessor,简称:dsp)、专用集成电路(英文:applicationspecificintegratedcircuit,简称:asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。

存储器可能包含高速ram存储器,也可能还包括非易失性存储nvm,例如至少一个磁盘存储器,还可以为u盘、移动硬盘、只读存储器、磁盘或光盘等。

总线可以是工业标准体系结构(industrystandardarchitecture,isa)总线、外部设备互连(peripheralcomponent,pci)总线或扩展工业标准体系结构(extendedindustrystandardarchitecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。

上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。

一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(applicationspecificintegratedcircuits,简称:asic)中。当然,处理器和存储介质也可以作为分立组件存在于电子设备或主控设备中。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1