掌桥专利:专业的专利平台
掌桥专利
首页

交易资源隔离方法、装置、计算机设备和存储介质

文献发布时间:2024-04-18 19:58:21


交易资源隔离方法、装置、计算机设备和存储介质

技术领域

本申请涉及人工智能技术领域,特别是涉及一种交易资源隔离方法、装置、计算机设备和存储介质。

背景技术

网关引擎在实际调用处理过程中,当上游服务请求进入网关的Jetty容器后,会一直使用容器线程将所有的插件功能执行完成再调用到下游线程池。当多个服务请求进入网关时,就会出现容器线程池共用的情况。在线程池共用的情况下,调用频率高的非重要型交易资源就会影响到调用频率低的重要型交易资源,频率高的就会占用频率低的交易资源,导致重要型交易资源频繁等待问题。因此如何避免重要型交易资源被占用的问题是当前的研究重点。

传统的重要型交易资源被占用的解决方式是通过对各交易资源请求按照交易资源请求的重要程度,对各交易资源请求的处理优先度进行升降级,然后再按照各交易资源的处理优先度,对各交易资源进行业务处理。但是由于交易资源处理需要通过线程池才能进行业务处理,而该方式只包含容器线程池一个线程池,且只能基于容器线程池一个处理模块进行业务处理,使得大量交易资源仅通过一个线程池进行业务处理,从而导致所有交易资源请求的执行效率较低。

发明内容

基于此,有必要针对上述技术问题,提供一种交易资源隔离方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。

第一方面,本申请提供了一种交易资源隔离方法。所述方法包括:

获取多个交易类型的交易资源请求、以及网关引擎的硬件配置信息,并基于各所述交易类型的交易资源请求、以及所述硬件配置信息,确定各初始下游线程池的配置参数,得到各下游线程池;

基于各所述交易类型的交易资源请求,调整初始容器线程池的参数信息,得到容器线程池,并基于所述容器线程池对各所述交易类型的交易资源请求进行预处理,得到各所述交易类型的交易资源请求的初始处理结果;

识别各所述下游线程池的线程池类型,并基于各所述交易类型的初始处理结果、以及线程池寻优策略,在各所述线程池类型的下游线程池和所述容器线程池中,筛选各所述初始处理结果对应的目标线程池;

基于各所述初始结果对应的交易类型,对各所述目标线程池对应的初始处理结果进行排序,得到各所述目标线程池的处理序列,并按照各所述目标线程池的处理序列,对各所述初始处理结果进行业务处理,得到各所述交易资源请求的处理结果。

可选的,所述基于各所述交易类型的交易资源请求、以及所述硬件配置信息,确定各初始下游线程池的配置参数,得到各下游线程池,包括:

获取多个初始下游线程池,并识别各所述交易类型的交易资源请求的数目;

基于各所述交易类型,确定各所述初始下游线程池的交易资源标识,并按照各所述初始下游线程池的交易资源标识,对各所述初始下游线程池进行划分,得到多个线程池组;

针对每个线程池组,识别所述线程池组的交易资源标识对应的交易类型的交易资源请求的数目,并基于所述线程池组的交易资源标识对应的交易类型的交易资源请求的数目、以及所述硬件配置信息,确定所述线程池组中的各初始下游线程池的配置参数,得到各下游线程池。

可选的,所述配置参数包括线程数、最大线程数、以及基础参数,所述基于所述线程池组的交易资源标识对应的交易类型的交易资源请求的数目、以及所述硬件配置信息,确定所述线程池组中的各初始下游线程池的配置参数,得到各下游线程池,包括:

基于所述硬件配置信息,确定所述线程池组的各初始下游线程池的目标基础参数,并识别所述线程池组中的所有初始下游线程池的数目;

基于所述线程池组的交易资源标识对应的交易类型的交易资源请求的数目、以及所述线程池组中的所有初始下游线程池的数目,确定所述线程池组中的每个初始下游线程池的线程数、以及所述线程池组中的每个初始下游线程池的最大线程数,得到各所述初始下游线程池的配置参数,并基于各所述初始下游线程池的配置参数,确定各下游线程池。

可选的,所述基于各所述交易类型的交易资源请求,调整初始容器线程池的参数信息,得到容器线程池,包括:

基于各所述交易类型的交易资源请求的数目,确定初始容器线程池的线程数、以及所述初始容器线程池的最大线程数,并基于预设的容器配置策略、所述初始容器线程池的线程数、以及所述初始容器线程池的最大线程数,调整所述初始容器线程池的参数信息,得到容器线程池。

可选的,所述基于各所述交易类型的初始处理结果、以及线程池寻优策略,在各所述线程池类型的下游线程池和所述容器线程池中,筛选各所述初始处理结果对应的目标线程池,包括:

针对每个交易类型的初始处理结果,基于所述交易类型的初始处理结果、以及各所述下游线程池的交易资源标识,按照每个交易类型的顺序,分别查询所述初始处理结果适配的初始目标线程池的交易资源标识,并按照预设的各所述线程池类型的调用顺序,在各所述初始目标线程池中,筛选目标交易资源标识对应的初始目标线程池,作为目标线程池;

在所述初始处理结果没有适配的初始目标线程池的交易资源标识的情况下,基于所述容器线程池、所述没有适配的初始目标线程池的交易资源标识的初始处理结果,确定所述没有适配的初始处理结果的目标线程池。

可选的,所述基于所述容器线程池、所述没有适配的初始处理结果,确定所述没有适配的初始处理结果的目标线程池,包括:

基于所述没有适配的初始目标线程池的交易资源标识的初始处理结果、以及所述硬件配置信息,创建所述没有适配的初始目标线程池的交易资源标识的初始处理结果对应的新线程池作为目标线程池;

在创建新线程池失败的情况下,将所述容器线程池作为所述创建新线程池失败的初始处理结果对应的目标线程池。

可选的,所述基于各所述初始结果对应的交易类型,对各所述目标线程池对应的初始处理结果进行排序,得到各所述目标线程池的处理序列,包括:

针对每个目标线程池,识别所述目标线程池对应的各初始处理结果,并识别各所述初始处理结果对应的交易类型,按照各所述交易类型的顺序,对所述目标线程池对应的各初始处理结果进行排序,得到所述目标线程池的处理序列。

第二方面,本申请还提供了一种交易资源隔离装置。所述装置包括:

获取模块,用于获取多个交易类型的交易资源请求、以及网关引擎的硬件配置信息,并基于各所述交易类型的交易资源请求、以及所述硬件配置信息,确定各初始下游线程池的配置参数,得到各下游线程池;

预处理模块,用于基于各所述交易类型的交易资源请求,调整初始容器线程池的参数信息,得到容器线程池,并基于所述容器线程池对各所述交易类型的交易资源请求进行预处理,得到各所述交易类型的交易资源请求的初始处理结果;

筛选模块,用于识别各所述下游线程池的线程池类型,并基于各所述交易类型的初始处理结果、以及线程池寻优策略,在各所述线程池类型的下游线程池和所述容器线程池中,筛选各所述初始处理结果对应的目标线程池;

处理模块,用于基于各所述初始结果对应的交易类型,对各所述目标线程池对应的初始处理结果进行排序,得到各所述目标线程池的处理序列,并按照各所述目标线程池的处理序列,对各所述初始处理结果进行业务处理,得到各所述交易资源请求的处理结果。

可选的,所述获取模块,具体用于:

获取多个初始下游线程池,并识别各所述交易类型的交易资源请求的数目;

基于各所述交易类型,确定各所述初始下游线程池的交易资源标识,并按照各所述初始下游线程池的交易资源标识,对各所述初始下游线程池进行划分,得到多个线程池组;

针对每个线程池组,识别所述线程池组的交易资源标识对应的交易类型的交易资源请求的数目,并基于所述线程池组的交易资源标识对应的交易类型的交易资源请求的数目、以及所述硬件配置信息,确定所述线程池组中的各初始下游线程池的配置参数,得到各下游线程池。

可选的,所述配置参数包括线程数、最大线程数、以及基础参数,所述获取模块,具体用于:

基于所述硬件配置信息,确定所述线程池组的各初始下游线程池的目标基础参数,并识别所述线程池组中的所有初始下游线程池的数目;

基于所述线程池组的交易资源标识对应的交易类型的交易资源请求的数目、以及所述线程池组中的所有初始下游线程池的数目,确定所述线程池组中的每个初始下游线程池的线程数、以及所述线程池组中的每个初始下游线程池的最大线程数,得到各所述初始下游线程池的配置参数,并基于各所述初始下游线程池的配置参数,确定各下游线程池。

可选的,所述预处理模块,具体用于:

基于各所述交易类型的交易资源请求的数目,确定初始容器线程池的线程数、以及所述初始容器线程池的最大线程数,并基于预设的容器配置策略、所述初始容器线程池的线程数、以及所述初始容器线程池的最大线程数,调整所述初始容器线程池的参数信息,得到容器线程池。

可选的,所述筛选模块,具体用于:

针对每个交易类型的初始处理结果,基于所述交易类型的初始处理结果、以及各所述下游线程池的交易资源标识,按照每个交易类型的顺序,分别查询所述初始处理结果适配的初始目标线程池的交易资源标识,并按照预设的各所述线程池类型的调用顺序,在各所述初始目标线程池中,筛选目标交易资源标识对应的初始目标线程池,作为目标线程池;

在所述初始处理结果没有适配的初始目标线程池的交易资源标识的情况下,基于所述容器线程池、所述没有适配的初始目标线程池的交易资源标识的初始处理结果,确定所述没有适配的初始处理结果的目标线程池。

可选的,所述筛选模块,具体用于:

基于所述没有适配的初始目标线程池的交易资源标识的初始处理结果、以及所述硬件配置信息,创建所述没有适配的初始目标线程池的交易资源标识的初始处理结果对应的新线程池作为目标线程池;

在创建新线程池失败的情况下,将所述容器线程池作为所述创建新线程池失败的初始处理结果对应的目标线程池。

可选的,所述处理模块,具体用于:

针对每个目标线程池,识别所述目标线程池对应的各初始处理结果,并识别各所述初始处理结果对应的交易类型,按照各所述交易类型的顺序,对所述目标线程池对应的各初始处理结果进行排序,得到所述目标线程池的处理序列。

第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现第一方面中任一项所述的方法的步骤。

第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面中任一项所述的方法的步骤。

第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面中任一项所述的方法的步骤。

上述交易资源隔离方法、装置、计算机设备和存储介质,通过获取多个交易类型的交易资源请求、以及网关引擎的硬件配置信息,并基于各所述交易类型的交易资源请求、以及所述硬件配置信息,确定各初始下游线程池的配置参数,得到各下游线程池;基于各所述交易类型的交易资源请求,调整初始容器线程池的参数信息,得到容器线程池,并基于所述容器线程池对各所述交易类型的交易资源请求进行预处理,得到各所述交易类型的交易资源请求的初始处理结果;识别各所述下游线程池的线程池类型,并基于各所述交易类型的初始处理结果、以及线程池寻优策略,在各所述线程池类型的下游线程池和所述容器线程池中,筛选各所述初始处理结果对应的目标线程池;基于各所述初始结果对应的交易类型,对各所述目标线程池对应的初始处理结果进行排序,得到各所述目标线程池的处理序列,并按照各所述目标线程池的处理序列,对各所述初始处理结果进行业务处理,得到各所述交易资源请求的处理结果。本方案,通过针对不同类型的交易资源请求,构建不同配置参数的下游线程池,并通过线程池寻优策略,对各类型的交易资源请求对应的初始处理结果适配对应的目标线程池,从而对各类型的交易资源请求进行划分,释放容器线程池的业务处理任务。然后,通过各交易资源请求的类型确定每个交易资源请求的处理顺序,使得在确保重要型交易资源的处理进程不被占用的情况下,使得各类型的交易资源请求均能正常进行业务处理,从而提升了所有交易资源请求的执行效率。

附图说明

图1为一个实施例中交易资源隔离方法的流程示意图;

图2为一个实施例中交易资源隔离方法的流程结构图;

图3为一个实施例中交易资源隔离示例的流程示意图;

图4为一个实施例中交易资源隔离装置的结构框图;

图5为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请实施例提供的交易资源隔离方法,可以应用于可以应用于终端、也可以应用于服务器,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。其中,服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑等。其中终端通过针对不同类型的交易资源请求,构建不同配置参数的下游线程池,并通过线程池寻优策略,对各类型的交易资源请求对应的初始处理结果适配对应的目标线程池,从而对各类型的交易资源请求进行划分,释放容器线程池的业务处理任务。然后,通过各交易资源请求的类型确定每个交易资源请求的处理顺序,使得在确保重要型交易资源的处理进程不被占用的情况下,使得各类型的交易资源请求均能正常进行业务处理,从而提升了所有交易资源请求的执行效率。

在一个实施例中,如图1所示,提供了一种交易资源隔离方法,以该方法应用于终端为例进行说明,包括以下步骤:

步骤S101,获取多个交易类型的交易资源请求、以及网关引擎的硬件配置信息,并基于各交易类型的交易资源请求、以及硬件配置信息,确定各初始下游线程池的配置参数,得到各下游线程池。

本实施例中,终端获取多个上游服务请求信息,并按照每个服务请求信息对应的交易类型,将各服务请求信息划分为多个交易类型的交易资源请求。其中,交易类型包括但不限于,一般重要类型、普通类型、重要类型、以及非常重要类型等。其中,上游服务请求信息包括但不限于调用请求信息、查询请求信息、以及引用请求信息等。在该交易类型存储于每个服务请求信息之中,终端通过解析每个服务请求信息,得到每个服务请求信息的交易类型。终端从服务器中的线程池数据库中,获取多个下游服务应用的线程池,得到各下游线程池。最后,终端通过识别当前网关引擎的硬件配置数据,得到硬件配置信息。其中,该下游线程池承担容器线程池的业务处理功能,且每个下游线程池用于对各个交易资源请求的初始处理结果进行业务处理,从而得到每个交易资源请求对应的处理结果。其中,硬件配置数据为该网关引擎的机器硬件配置信息对应的参数数据,该机器硬件配置信息包括但不限于机箱规格、主板型号、集成网卡限制、集成显卡限制、CPU型号、FLASH卡型号、FLASH卡容量、网卡型号、内存型号、内存外频、加密卡型号、以及电源型号等

终端针对不同交易类型的交易资源请求,以及该网关引擎的硬件配置信息,分别建立每个下游线程池的配置参数,使得在确保每个下游线程池的处理效率的情况下,所有下游线程池能够最大程度的适配所有交易类型的交易资源请求。其中,配置参数用于确定下游线程池的业务处理架构、以下游线程池的业务处理效率,该配置参数包括但不限于下游线程池的线程数、下游线程池的最大线程数、以及下游线程池的基础参数。

步骤S102,基于各交易类型的交易资源请求,调整初始容器线程池的参数信息,得到容器线程池,并基于容器线程池对各交易类型的交易资源请求进行预处理,得到各交易类型的交易资源请求的初始处理结果。

本实施例中,终端基于各交易类型的交易资源请求,重建网关引擎的Jetty容器中的线程池,得到容器线程池,使得该容器线程池能够处理所有交易类型的交易资源请求。然后,终端基于该重建的容器线程池,对所有交易类型的交易资源请求进行预处理,得到各交易类型的交易资源请求的初始处理结果。其中预处理为交易资源请求的预处理过程。具体的重建过程后续将详细说明。其中,通过容器线程池对每个交易类型的各交易资源请求进行预处理,得到的各交易资源请求对应的初始处理结果处于同一数据维度,提升了对不同初始处理结果对应的交易资源请求之间的区别的识别精准度。

步骤S103,识别各下游线程池的线程池类型,并基于各交易类型的初始处理结果、以及线程池寻优策略,在各线程池类型的下游线程池和容器线程池中,筛选各初始处理结果对应的目标线程池。

本实施例中,终端识别每个下游线程池的线程池类型,然后终端基于各交易类型的初始处理结果、以及线程池寻优策略,在各线程池类型对应的下游线程池和容器线程池中,筛选各初始处理结果对应的目标线程池。其中,线程池类型为各下游线程池的交易资源标识对应的类型,该线程池类型包括但不限于应用线程池、API线程池、operation线程池、默认线程池等。具体的寻优过程后续将详细说明。其中通过筛选每个初始处理结果对应的目标线程池用于提升对每个初始处理结果的处理效率。

步骤S104,基于各初始结果对应的交易类型,对各目标线程池对应的初始处理结果进行排序,得到各目标线程池的处理序列,并按照各目标线程池的处理序列,对各初始处理结果进行业务处理,得到各交易资源请求的处理结果。

本实施例中,终端基于各目标线程池对应的各初始处理结果的交易类型的顺序,对各目标线程池对应的初始处理结果进行排序,得到各目标线程池的处理序列。其中交易类型的顺序为预设于终端的顺序,例如,该顺序为1.非常重要类型、2.重要类型、3.一般重要类型、4.普通类型。最后,终端按照各目标线程池的处理序列,对各初始处理结果进行业务处理,得到各交易资源请求的处理结果。

具体的,本方案如图2所示,通过重建的容器(容器线程池)对各交易资源请求进行预处理,然后基于各下游线程池的线程池类型,筛选各交易资源请求适配的目标线程池,其中,在该交易资源请求没有适配的目标线程池的情况下,基于该交易资源请求,重新构建新线程池,作为该交易资源请求的目标线程池,在该交易资源请求构建新线程池失败的情况下,直接将容器线程池作为该交易资源请求的目标线程池。最后,通过各交易资源请求的目标线程池分别对各交易资源请求进行业务处理,得到各交易资源请求的处理结果。

基于上述方案,通过针对不同类型的交易资源请求,构建不同配置参数的下游线程池,并通过线程池寻优策略,对各类型的交易资源请求对应的初始处理结果适配对应的目标线程池,从而对各类型的交易资源请求进行划分,释放容器线程池的业务处理任务。然后,通过各交易资源请求的类型确定每个交易资源请求的处理顺序,使得在确保重要型交易资源的处理进程不被占用的情况下,使得各类型的交易资源请求均能正常进行业务处理,从而提升了所有交易资源请求的执行效率。

可选的,基于各交易类型的交易资源请求、以及硬件配置信息,确定各初始下游线程池的配置参数,得到各下游线程池,包括:获取多个初始下游线程池,并识别各交易类型的交易资源请求的数目;基于各交易类型,确定各初始下游线程池的交易资源标识,并按照各初始下游线程池的交易资源标识,对各初始下游线程池进行划分,得到多个线程池组;针对每个线程池组,识别线程池组的交易资源标识对应的交易类型的交易资源请求的数目,并基于线程池组的交易资源标识对应的交易类型的交易资源请求的数目、以及硬件配置信息,确定线程池组中的各初始下游线程池的配置参数,得到各下游线程池。

本实施例中,终端获取多个初始下游线程池,并识别各交易类型的交易资源请求的数目。然后,终端基于各交易类型,确定各初始下游线程池的交易资源标识。其中,交易资源标识为该交易资源的颗粒度划分准则进行确定,该交易资源标识包括但不限于是应用、API、operation、默认资源等。然后,终端按照各初始下游线程池的交易资源标识,对各初始下游线程池进行划分,得到多个线程池组。其中,每个线程池组包含多个相同交易资源标识的初始下游线程池。针对每个线程池组,终端识别线程池组的交易资源标识对应的交易类型的交易资源请求的数目。然后,终端基于线程池组的交易资源标识对应的交易类型的交易资源请求的数目、以及硬件配置信息,确定线程池组中的各初始下游线程池的配置参数。具体的确定配置参数的过程后续将详细说明。

基于上述方案,基于不同的交易资源请求,设置不同的下游线程池,提升了每个下游线程池处理交易资源请求的效率。

可选的,配置参数包括线程数、最大线程数、以及基础参数,基于线程池组的交易资源标识对应的交易类型的交易资源请求的数目、以及硬件配置信息,确定线程池组中的各初始下游线程池的配置参数,得到各下游线程池,包括:基于硬件配置信息,确定线程池组的各初始下游线程池的目标基础参数,并识别线程池组中的所有初始下游线程池的数目;基于线程池组的交易资源标识对应的交易类型的交易资源请求的数目、以及线程池组中的所有初始下游线程池的数目,确定线程池组中的每个初始下游线程池的线程数、以及线程池组中的每个初始下游线程池的最大线程数,得到各初始下游线程池的配置参数,并基于各初始下游线程池的配置参数,确定各下游线程池

本实施例中,终端基于硬件配置信息,确定线程池组的各初始下游线程池的目标基础参数。然后,终端识别线程池组中的所有初始下游线程池的数目。其次,终端基于线程池组的交易资源标识对应的交易类型的交易资源请求的数目、以及线程池组中的所有初始下游线程池的数目,对每个初始下游线程池对应的交易资源请求的数目进行均分,得到线程池组中的每个初始下游线程池的最大线程数。然后,终端基于每个初始下游线程池在最优处理效率时对应的线程数,确定线程池组中的每个初始下游线程池的线程数。

基于上述方案,通过线程池组的交易资源标识对应的交易类型的交易资源请求的数目,划分每个下游线程池的线程数、以及每个下游线程池的最大线程数,提升了确定的每个下游线程池的线程数、以及每个下游线程池的最大线程数的精准度。

可选的,基于各交易类型的交易资源请求,调整初始容器线程池的参数信息,得到容器线程池,包括:基于各交易类型的交易资源请求的数目,确定初始容器线程池的线程数、以及初始容器线程池的最大线程数,并基于预设的容器配置策略、初始容器线程池的线程数、以及初始容器线程池的最大线程数,调整初始容器线程池的参数信息,得到容器线程池。

本实施例中,终端基于各交易类型的交易资源请求的数目,确定容器线程池的线程数,并基于该网关引擎的硬件配置信息,以及所有交易类型的交易资源请求的数目,确定该容器线程池的最大线程数。最后,终端将该容器线程池的线程数、以及该容器线程池的最大线程数,作为该容器线程池的配置参数,并根据通讯协议容器中配置的线程池,调整容器线程池。

基于上述方案,通过各交易类型的交易资源请求的数目,调整容器线程池,提升了容器线程池的处理效率。

可选的,基于各交易类型的初始处理结果、以及线程池寻优策略,在各线程池类型的下游线程池和容器线程池中,筛选各初始处理结果对应的目标线程池,包括:针对每个交易类型的初始处理结果,基于交易类型的初始处理结果、以及各下游线程池的交易资源标识,查询初始处理结果适配的初始目标线程池的交易资源标识,并按照预设的各线程池类型的调用顺序,在各初始目标线程池中,筛选目标交易资源标识对应的初始目标线程池,作为目标线程池;在初始处理结果没有适配的初始目标线程池的交易资源标识的情况下,基于容器线程池、没有适配的初始目标线程池的交易资源标识的初始处理结果,确定没有适配的初始处理结果的目标线程池。

本实施例中,终端针对每个交易类型的初始处理结果,基于交易类型的初始处理结果、以及各下游线程池的交易资源标识,按照每个交易类型的顺序,分别查询每个交易类型的初始处理结果适配的初始目标线程池的交易资源标识,并按照预设的各线程池类型的调用顺序,在各初始目标线程池中,筛选目标交易资源标识对应的初始目标线程池,作为目标线程池。其中,在目标线程池对应的初始处理结果的数目满足目标线程池的线程数的情况下,目标线程池无法继续适配更多的初始处理结果。其中,线程池类型的调用顺序例如operation线程池>API线程池>应用线程池>默认线程池。然后,终端在初始处理结果没有适配的初始目标线程池的交易资源标识的情况下,基于容器线程池、以及没有适配的初始目标线程池的交易资源标识的初始处理结果,确定没有适配的初始处理结果的目标线程池。具体的确定过程后续将详细说明。

基于上述方案,通过交易类型的顺序,筛选目标线程池,确保了重要型交易类型的交易资源请求不会频繁等待,提升了重要型交易类型的交易资源请求的处理效率。

可选的,基于容器线程池、没有适配的初始处理结果,确定没有适配的初始处理结果的目标线程池,包括:基于没有适配的初始目标线程池的交易资源标识的初始处理结果、以及硬件配置信息,创建没有适配的初始目标线程池的交易资源标识的初始处理结果对应的新线程池作为目标线程池;在创建新线程池失败的情况下,将容器线程池作为创建新线程池失败的初始处理结果对应的目标线程池。

本实施例中,终端基于没有适配的初始目标线程池的交易资源标识的初始处理结果、以及硬件配置信息,创建没有适配的初始目标线程池的交易资源标识的初始处理结果对应的新线程池作为目标线程池。其中,具体的创建过程为,基于各相同交易类型的初始处理结果,在各下游线程池中,随机筛选一个符合该交易类型的下游线程池,并在没有适配的初始目标线程池的该交易类型的初始处理结果的数目不大于该下游线程池的线程数的情况下,将该下游线程池的线程数修改为没有适配的初始目标线程池的该交易类型的初始处理结果的数目,并将已修改线程数对应的线程池,作为没有适配的初始目标线程池的该交易类型的初始处理结果的新线程池。在没有适配的初始目标线程池的该交易类型的初始处理结果的数目大于该下游线程池的线程数的情况下,终端重新获取与该下游线程池相同的线程池,作为没有适配的初始目标线程池的该交易类型的初始处理结果的新线程池。

在创建新线程池失败的情况下,终端直接将容器线程池作为创建新线程池失败的初始处理结果对应的目标线程池。

基于上述方案,通过对各没有适配的目标线程池的初始交易结果,确定各初始交易结果的目标线程池,确保各初始交易结果对应的交易资源请求均能进行业务处理,提升了对所有交易资源请求的执行全面性。

可选的,基于各初始结果对应的交易类型,对各目标线程池对应的初始处理结果进行排序,得到各目标线程池的处理序列,包括:针对每个目标线程池,识别目标线程池对应的各初始处理结果,并识别各初始处理结果对应的交易类型,按照各交易类型的顺序,对目标线程池对应的各初始处理结果进行排序,得到目标线程池的处理序列。

本实施例中,终端针对每个目标线程池,识别该目标线程池对应的各初始处理结果。然后,终端按照初始处理结果与交易资源请求的交易类型之间的对应关系,识别该目标线程池的各初始处理结果对应的交易类型。再后,终端按照各交易类型的顺序,对目标线程池对应的各初始处理结果进行排序,得到目标线程池的处理序列。其中,相同交易类型的处理顺序随机。

基于上述方案,通过对相同目标线程池的各初始处理结果进行排序,从而确保重要型交易资源请求对应的初始处理结果的处理进程,不被其他类型的交易资源请求对应的初始处理结果占用。

应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图3所示,提供了一种交易资源隔离示例,该示例包括以下步骤:

步骤S301,获取多个交易类型的交易资源请求、以及网关引擎的硬件配置信息。

步骤S302,获取多个初始下游线程池,并识别各交易类型的交易资源请求的数目。

步骤S303,基于各交易类型,确定各初始下游线程池的交易资源标识,并按照各初始下游线程池的交易资源标识,对各初始下游线程池进行划分,得到多个线程池组。

步骤S304,针对每个线程池组,识别线程池组的交易资源标识对应的交易类型的交易资源请求的数目。

步骤S305,基于硬件配置信息,确定线程池组的各初始下游线程池的目标基础参数,并识别线程池组中的所有初始下游线程池的数目。

步骤S306,基于线程池组的交易资源标识对应的交易类型的交易资源请求的数目、以及线程池组中的所有初始下游线程池的数目,确定线程池组中的每个初始下游线程池的线程数、以及线程池组中的每个初始下游线程池的最大线程数,得到各初始下游线程池的配置参数,并基于各初始下游线程池的配置参数,确定各下游线程池。

步骤S307,基于各交易类型的交易资源请求的数目,确定初始容器线程池的线程数、以及初始容器线程池的最大线程数,并基于预设的容器配置策略、初始容器线程池的线程数、以及初始容器线程池的最大线程数,调整初始容器线程池的参数信息,得到容器线程池。

步骤S308,基于容器线程池对各交易类型的交易资源请求进行预处理,得到各交易类型的交易资源请求的初始处理结果。

步骤S309,针对每个交易类型的初始处理结果,基于交易类型的初始处理结果、以及各下游线程池的交易资源标识,按照每个交易类型的顺序,分别查询初始处理结果适配的初始目标线程池的交易资源标识,并按照预设的各线程池类型的调用顺序,在各初始目标线程池中,筛选目标交易资源标识对应的初始目标线程池,作为目标线程池。

步骤S310,在初始处理结果没有适配的初始目标线程池的交易资源标识的情况下,基于没有适配的初始目标线程池的交易资源标识的初始处理结果、以及硬件配置信息,创建没有适配的初始目标线程池的交易资源标识的初始处理结果对应的新线程池作为目标线程池。

步骤S311,在创建新线程池失败的情况下,将容器线程池作为创建新线程池失败的初始处理结果对应的目标线程池。

步骤S312,针对每个目标线程池,识别目标线程池对应的各初始处理结果,并识别各初始处理结果对应的交易类型,按照各交易类型的顺序,对目标线程池对应的各初始处理结果进行排序,得到目标线程池的处理序列。

步骤S313,按照各目标线程池的处理序列,对各初始处理结果进行业务处理,得到各交易资源请求的处理结果。

基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的交易资源隔离方法的交易资源隔离装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个交易资源隔离装置实施例中的具体限定可以参见上文中对于交易资源隔离方法的限定,在此不再赘述。

在一个实施例中,如图4所示,提供了一种交易资源隔离装置,包括:获取模块410、预处理模块420、筛选模块430和处理模块440,其中:

获取模块410,用于获取多个交易类型的交易资源请求、以及网关引擎的硬件配置信息,并基于各所述交易类型的交易资源请求、以及所述硬件配置信息,确定各初始下游线程池的配置参数,得到各下游线程池;

预处理模块420,用于基于各所述交易类型的交易资源请求,调整初始容器线程池的参数信息,得到容器线程池,并基于所述容器线程池对各所述交易类型的交易资源请求进行预处理,得到各所述交易类型的交易资源请求的初始处理结果;

筛选模块430,用于识别各所述下游线程池的线程池类型,并基于各所述交易类型的初始处理结果、以及线程池寻优策略,在各所述线程池类型的下游线程池和所述容器线程池中,筛选各所述初始处理结果对应的目标线程池;

处理模块440,用于基于各所述初始结果对应的交易类型,对各所述目标线程池对应的初始处理结果进行排序,得到各所述目标线程池的处理序列,并按照各所述目标线程池的处理序列,对各所述初始处理结果进行业务处理,得到各所述交易资源请求的处理结果。

可选的,所述获取模块410,具体用于:

获取多个初始下游线程池,并识别各所述交易类型的交易资源请求的数目;

基于各所述交易类型,确定各所述初始下游线程池的交易资源标识,并按照各所述初始下游线程池的交易资源标识,对各所述初始下游线程池进行划分,得到多个线程池组;

针对每个线程池组,识别所述线程池组的交易资源标识对应的交易类型的交易资源请求的数目,并基于所述线程池组的交易资源标识对应的交易类型的交易资源请求的数目、以及所述硬件配置信息,确定所述线程池组中的各初始下游线程池的配置参数,得到各下游线程池。

可选的,所述配置参数包括线程数、最大线程数、以及基础参数,所述获取模块410,具体用于:

基于所述硬件配置信息,确定所述线程池组的各初始下游线程池的目标基础参数,并识别所述线程池组中的所有初始下游线程池的数目;

基于所述线程池组的交易资源标识对应的交易类型的交易资源请求的数目、以及所述线程池组中的所有初始下游线程池的数目,确定所述线程池组中的每个初始下游线程池的线程数、以及所述线程池组中的每个初始下游线程池的最大线程数,得到各所述初始下游线程池的配置参数,并基于各所述初始下游线程池的配置参数,确定各下游线程池。

可选的,所述预处理模块420,具体用于:

基于各所述交易类型的交易资源请求的数目,确定初始容器线程池的线程数、以及所述初始容器线程池的最大线程数,并基于预设的容器配置策略、所述初始容器线程池的线程数、以及所述初始容器线程池的最大线程数,调整所述初始容器线程池的参数信息,得到容器线程池。

可选的,所述筛选模块430,具体用于:

针对每个交易类型的初始处理结果,基于所述交易类型的初始处理结果、以及各所述下游线程池的交易资源标识,按照每个交易类型的顺序,分别查询所述初始处理结果适配的初始目标线程池的交易资源标识,并按照预设的各所述线程池类型的调用顺序,在各所述初始目标线程池中,筛选目标交易资源标识对应的初始目标线程池,作为目标线程池;

在所述初始处理结果没有适配的初始目标线程池的交易资源标识的情况下,基于所述容器线程池、所述没有适配的初始目标线程池的交易资源标识的初始处理结果,确定所述没有适配的初始处理结果的目标线程池。

可选的,所述筛选模块430,具体用于:

基于所述没有适配的初始目标线程池的交易资源标识的初始处理结果、以及所述硬件配置信息,创建所述没有适配的初始目标线程池的交易资源标识的初始处理结果对应的新线程池作为目标线程池;

在创建新线程池失败的情况下,将所述容器线程池作为所述创建新线程池失败的初始处理结果对应的目标线程池。

可选的,所述处理模块440,具体用于:

针对每个目标线程池,识别所述目标线程池对应的各初始处理结果,并识别各所述初始处理结果对应的交易类型,按照各所述交易类型的顺序,对所述目标线程池对应的各初始处理结果进行排序,得到所述目标线程池的处理序列。

上述交易资源隔离装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种交易资源隔离方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现第一方面中任一项所述的方法的步骤。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现第一方面中任一项所述的方法的步骤。

在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面中任一项所述的方法的步骤。

需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

相关技术
  • 资产交易方法、装置、存储介质及计算机设备
  • 专利交易支付方法、装置、计算机设备及存储介质
  • 交易路由配置方法、装置、计算机设备和存储介质
  • 资源分配方法、装置、计算机设备及计算机可读存储介质
  • 资源抢占的方法、装置、设备和计算机存储介质
  • 一种交易资源量预测方法、装置、计算机设备及存储介质
  • 一种交易资源处理方法、系统、计算机设备和存储介质
技术分类

06120116480208