CN117440000A - 并行调用接口方法、装置、电子设备及可读存储介质 - Google Patents

并行调用接口方法、装置、电子设备及可读存储介质 Download PDF

Info

Publication number
CN117440000A
CN117440000A CN202311365875.7A CN202311365875A CN117440000A CN 117440000 A CN117440000 A CN 117440000A CN 202311365875 A CN202311365875 A CN 202311365875A CN 117440000 A CN117440000 A CN 117440000A
Authority
CN
China
Prior art keywords
interface
execution
thread
task execution
call
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
Application number
CN202311365875.7A
Other languages
English (en)
Inventor
刘跃荣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Life Insurance Company of China Ltd
Original Assignee
Ping An Life Insurance Company of China Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ping An Life Insurance Company of China Ltd filed Critical Ping An Life Insurance Company of China Ltd
Priority to CN202311365875.7A priority Critical patent/CN117440000A/zh
Publication of CN117440000A publication Critical patent/CN117440000A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • H04L67/1091Interfacing with client-server systems or between P2P systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请涉及金融科技技术领域,提供了一种并行调用接口方法、装置、电子设备及计算机可读存储介质,方法包括:获取任务执行信息;对任务执行信息进行分析处理得到任务执行接口列表,其中,任务执行接口列表包括多个接口名称以及与接口名称对应的接口参数;根据每个接口名称从预设的调用系统中确定出对应的待调用接口,并根据对应的接口参数为待调用接口在预设的线程池中创建执行线程;对线程池中的所有执行线程进行并行执行处理得到多个接口调用结果;对多个接口调用结果进行组合得到接口调用结果列表。通过上述技术方案,提高接口调用效率,从而给用户更好的使用体验。

Description

并行调用接口方法、装置、电子设备及可读存储介质
技术领域
本申请实施例涉及但不限于金融科技技术领域,尤其涉及一种并行调用接口方法、装置、电子设备及计算机可读存储介质。
背景技术
在银行、保险或者证券交易等金融领域,已经越来越多地利用各种金融系统来对各种金融业务进行管理监控处理;在系统开发的过程中,用户通过一个前端功能获取查询结果,但是查询结果需要在后台调用多个接口而获得,目前一般通过多个接口串行调用的方式进行调用控制处理,串行调用耗时是所有接口执行的时间之和,这就有可能因为用户等待时间过长而影响用户的体验。
发明内容
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
为了解决上述背景技术中提到的问题,本申请实施例提供了一种并行调用接口方法、装置、电子设备及计算机可读存储介质,提高接口调用效率,从而给用户更好的使用体验。
第一方面,本申请实施例提供了一种并行调用接口方法,包括:
获取任务执行信息;
对所述任务执行信息进行分析处理得到任务执行接口列表,其中,所述任务执行接口列表包括多个接口名称以及与所述接口名称对应的接口参数;
根据每个所述接口名称从预设的调用系统中确定出对应的待调用接口,并根据对应的所述接口参数为所述待调用接口在预设的线程池中创建执行线程;
对所述线程池中的所有所述执行线程进行并行执行处理得到多个接口调用结果;
对多个所述接口调用结果进行组合得到接口调用结果列表。
根据本申请的一些实施例,所述对所述任务执行信息进行分析处理得到任务执行接口列表,包括:
对所述任务执行信息进行拆分处理得到多个任务执行子信息;
对多个所述任务执行子信息进行识别处理得到多个任务执行接口信息;
将多个所述任务执行接口信息进行组合处理得到所述任务执行接口列表。
根据本申请的一些实施例,所述根据每个所述接口名称从预设的调用系统中确定出对应的待调用接口,包括:
根据所述接口名称和预设的接口信息数据库确定接口标记信息;
将所述接口标记信息与所述调用系统中的标记属性进行匹配处理以筛选得到所述待调用接口。
根据本申请的一些实施例,所述根据对应的所述接口参数为所述待调用接口在预设的线程池中创建执行线程,包括:
根据所述接口参数确定线程执行参数,其中,所述线程执行参数包括线程标记参数和线程控制参数;
根据所述线程标记参数在所述线程池中选定初始线程;
根据所述线程控制参数对所述初始线程进行线程参数修改处理得到所述执行线程。
根据本申请的一些实施例,所述对所述线程池中的所有所述执行线程进行并行执行处理得到多个接口调用结果,包括:
对所述线程池的执行时刻进行设定;
在所述执行时刻到达的情况下,对所述线程池中的所有所述执行线程同时进行执行处理,得到多个所述接口调用结果。
根据本申请的一些实施例,所述对多个所述接口调用结果进行组合得到接口调用结果列表后,所述方法还包括:
对所述接口调用结果列表进行数据压缩处理得到接口调用数据包;
将所述接口调用数据包发送至目标对象,以使所述目标对象对所述接口调用数据包进行结果保存处理。
根据本申请的一些实施例,所述对多个所述接口调用结果进行组合得到接口调用结果列表之前,所述方法还包括:
对所述线程池中的所有所述执行线程进行监测处理得到监测结果;
在所述监测结果表征所述线程池中的所有所述执行线程均执行完毕的情况下,触发所述线程池中的每个所述执行线程进行执行结果组合处理。
第二方面,本申请实施例还提供了一种并行调用接口装置,所述装置包括:
第一处理模块,用于获取任务执行信息;
第二处理模块,用于对所述任务执行信息进行分析处理得到任务执行接口列表,其中,所述任务执行接口列表包括多个接口名称以及与所述接口名称对应的接口参数;
第三处理模块,用于根据每个所述接口名称从预设的调用系统中确定出对应的待调用接口,并根据对应的所述接口参数为所述待调用接口在预设的线程池中创建执行线程;
第四处理模块,用于对所述线程池中的所有所述执行线程进行并行执行处理得到多个接口调用结果;
第五处理模块,用于对多个所述接口调用结果进行组合得到接口调用结果列表。
第三方面,本申请实施例还提供了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上第一方面所述的并行调用接口方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行如上第一方面所述的并行调用接口方法。
根据本申请提供的实施例的并行调用接口方法,至少具有如下有益效果:在进行并行调用接口处理的过程中,首先获取任务执行信息;接着对任务执行信息进行分析处理就可以得到任务执行接口列表,其中,任务执行接口列表包括多个接口名称以及与接口名称对应的接口参数;接着根据每个接口名称从预设的调用系统中确定出对应的待调用接口,并且根据对应的接口参数为待调用接口在预设的线程池中创建执行线程;接着对线程池中的所有执行线程进行并行执行处理就可以得到多个接口调用结果;最后对多个接口调用结果进行组合就可以得到接口调用结果列表。通过上述技术方案,提高接口调用效率,从而给用户更好的使用体验。
附图说明
附图用来提供对本申请技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
图1是本申请一个实施例提供的并行调用接口方法的流程图;
图2是本申请一个实施例提供的步骤S200的具体流程图;
图3是本申请一个实施例提供的步骤S300的具体流程图;
图4是本申请另一个实施例提供的步骤S300的具体流程图;
图5是本申请一个实施例提供的步骤S400的具体流程图;
图6是本申请另一个实施例提供的并行调用接口方法的流程图;
图7是本申请另一个实施例提供的并行调用接口方法的流程图;
图8是本申请一个实施例提供的并行调用接口装置的示意图;
图9是本申请一个实施例提供的电子设备的示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要注意的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
需要说明的是,除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
AI是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学;人工智能是计算机科学的一个分支,人工智能企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能可以对人的意识、思维的信息过程的模拟。人工智能还是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
人工智能即为AI,AI是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能技术所涉及的服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
本申请提供了一种并行调用接口方法、装置、电子设备及计算机可读存储介质,在进行并行调用接口处理的过程中,首先获取任务执行信息;接着对任务执行信息进行分析处理就可以得到任务执行接口列表,其中,任务执行接口列表包括多个接口名称以及与接口名称对应的接口参数;接着根据每个接口名称从预设的调用系统中确定出对应的待调用接口,并且根据对应的接口参数为待调用接口在预设的线程池中创建执行线程;接着对线程池中的所有执行线程进行并行执行处理就可以得到多个接口调用结果;最后对多个接口调用结果进行组合就可以得到接口调用结果列表。通过上述技术方案,提高接口调用效率,从而给用户更好的使用体验。
本申请实施例提供的并行调用接口方法,涉及金融科技技术领域。本申请实施例提供的并行调用接口方法可应用于终端中,也可应用于服务器端中,还可以是运行于终端或服务器端中的软件。在一些实施例中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机等;服务器端可以配置成独立的物理服务器,也可以配置成多个物理服务器构成的服务器集群或者分布式系统,还可以配置成提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN以及大数据和人工智能平台等基础云计算服务的云服务器;软件可以是实现并行调用接口方法的应用等,但并不局限于以上形式。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
需要说明的是,在本申请的各个具体实施方式中,当涉及到需要根据用户信息、用户行为数据,用户历史数据以及用户位置信息等与用户身份或特性相关的数据进行相关处理时,都会先获得用户的许可或者同意,而且,对这些数据的收集、使用和处理等,都会遵守相关法律法规和标准。此外,当本申请实施例需要获取用户的敏感个人信息时,会通过弹窗或者跳转到确认页面等方式获得用户的单独许可或者单独同意,在明确获得用户的单独许可或者单独同意之后,再获取用于使本申请实施例能够正常运行的必要的用户相关数据。
下面结合附图,对本申请实施例作进一步阐述。
如图1所示,图1是本申请一个实施例提供的并行调用接口方法的流程图,该并行调用接口方法包括但不限于步骤S100至S500。
步骤S100,获取任务执行信息;
步骤S200,对任务执行信息进行分析处理得到任务执行接口列表,其中,任务执行接口列表包括多个接口名称以及与接口名称对应的接口参数;
步骤S300,根据每个接口名称从预设的调用系统中确定出对应的待调用接口,并根据对应的接口参数为待调用接口在预设的线程池中创建执行线程;
步骤S400,对线程池中的所有执行线程进行并行执行处理得到多个接口调用结果;
步骤S500,对多个接口调用结果进行组合得到接口调用结果列表。
需要说明的是,在进行并行调用接口处理的过程中,首先获取任务执行信息;接着对任务执行信息进行分析处理就可以得到任务执行接口列表,其中,任务执行接口列表包括多个接口名称以及与接口名称对应的接口参数;接着根据每个接口名称从预设的调用系统中确定出对应的待调用接口,并且根据对应的接口参数为待调用接口在预设的线程池中创建执行线程;接着对线程池中的所有执行线程进行并行执行处理就可以得到多个接口调用结果;最后对多个接口调用结果进行组合就可以得到接口调用结果列表。通过上述技术方案,提高接口调用效率,从而给用户更好的使用体验。
值得注意的是,在金融系统中,执行一个任务可能需要调用多个不同的业务系统接口,以往都是通过串行的方式进行调用执行,但是这样的接口调用方式影响了数据的调用效率,耗时较长;为了解决这一问题,本申请实施例通过并行调用的方式来对不同业务系统中的接口进行调用处理,很好地提升数据调用的效率。
值得注意的是,在并行调用接口的过程中,首先对任务执行信息进行分析处理就可以得到任务执行接口列表,其中,任务执行接口列表包括多个接口名称以及与接口名称对应的接口参数;接着根据每个接口名称从预设的调用系统中确定出对应的待调用接口,并根据对应的接口参数为待调用接口在预设的线程池中创建执行线程;并且对线程池中的所有执行线程进行并行执行处理就可以得到多个接口调用结果;最后对多个接口调用结果进行组合就可以得到接口调用结果列表。
需要说明的是,线程池中可以包括多个线程,每个线程可以用于对接口进行并行执行处理;线程,是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,并且每条线程并行执行不同的任务。轻量进程更多指内核线程,而把用户线程称为线程。线程是独立调度和分派的基本单位。线程可以为操作系统内核调度的内核线程;由用户进程自行调度的用户线程;或者由内核与用户进程,进行混合调度。同一进程中的多条线程将共享该进程中的全部系统资源,如虚拟地址空间,文件描述符和信号处理等等。但同一进程中的多个线程有各自的调用栈,自己的寄存器环境,自己的线程本地存储。一个进程可以有很多线程,每条线程并行执行不同的任务。在同一进程中的各个线程,都可以共享该进程所拥有的资源,这首先表现在:所有线程都具有相同的地址空间(进程的地址空间),这意味着,线程可以访问该地址空间的每一个虚地址;此外,还可以访问进程所拥有的已打开文件、定时器、信号量机构等。由于同一个进程内的线程共享内存和文件,所以线程之间互相通信不必调用内核。
值得注意的是,根据每个接口名称从预设的调用系统中确定出对应的待调用接口,并根据对应的接口参数为待调用接口在预设的线程池中创建执行线程;预设的调用系统中包括多个调用接口,将得到的任务执行接口列表中的每个接口名称与调用系统进行匹配处理,从而就可以从调用系统中确定多个待调用接口;并且根据任务执行接口列表中的接口参数为待调用接口在预设的线程池中创建执行线程;然后对线程池中的所有执行线程进行并行执行处理就可以得到多个接口调用结果;最后对多个接口调用结果进行组合处理就可以得到接口调用结果列表。
值得注意的是,对线程池中的所有执行线程进行并行执行处理就可以得到多个接口调用结果;对多个接口实现并行处理,就可以很好地节省数据调用的时间,整个过程更加简便快捷。
在一些实施例中,如图2所示,上述步骤S200可以包括但不限于步骤S210、步骤S220和步骤S230。
步骤S210,对任务执行信息进行拆分处理得到多个任务执行子信息;
步骤S220,对多个任务执行子信息进行识别处理得到多个任务执行接口信息;
步骤S230,将多个任务执行接口信息进行组合处理得到任务执行接口列表。
需要说明的是,在对任务执行信息进行分析处理的过程中,首先对任务执行信息进行拆分处理就可以得到多个任务执行子信息;接着对多个任务执行子信息进行识别处理就可以得到多个任务执行接口信息;最后将多个任务执行接口信息进行组合处理就可以得到多个任务执行接口列表。
值得注意的是,任务执行信息包括有多个执行步骤信息,而每个执行步骤均需要调用一个接口;因此对任务执行信息进行拆分处理就可以得到多个任务执行子信息;接着对多个任务执行子信息进行识别处理就可以得到多个任务执行接口信息;最后将多个任务执行接口信息进行组合处理就可以得到多个任务执行接口信息。
值得注意的是,将多个任务执行接口信息进行组合处理就可以得到任务执行接口列表,其中,任务执行接口列表中包括有多个接口名称以及与接口名称对应的接口参数,为了后续的接口并行调用做好前提准备。
在一些实施例中,如图3所示,上述步骤S300还可以包括但不限于步骤S310至步骤S320。
步骤S310,根据接口名称和预设的接口信息数据库确定接口标记信息;
步骤S320,将接口标记信息与调用系统中的标记属性进行匹配处理以筛选得到待调用接口。
需要说明的是,根据每个接口名称从预设的调用系统中确定出对应的待调用接口的过程中,首先根据接口名称和预设的接口信息数据库确定接口标记信息;接着将接口标记信息与调用系统中的标记属性进行匹配处理以筛选得到待调用接口。
值得注意的是,接口名称在调用系统中具有唯一性,因此可以根据接口名称和预设的接口信息数据库确定接口标记信息;接着就可以根据接口标记信息从调用系统中进行筛选处理,即将接口标记信息与调用系统中的标记属性进行匹配处理,当两者匹配成功就可以得到相应的待调用接口。
可以理解的是,根据接口名称和预设的接口信息数据库就可以确定接口标记信息;接着根据接口标记信息从调用系统中进行筛选处理就可以得到待调用接口,因为接口标记信息具有唯一性,因此可以从调用系统中进行筛选处理,就能够得到相应的待调用接口。
在一些实施例中,如图4所示,上述步骤S300还可以包括但不限于步骤S330、步骤S340和步骤S350。
步骤S330,根据接口参数确定线程执行参数,其中,线程执行参数包括线程标记参数和线程控制参数;
步骤S340,根据线程标记参数在线程池中选定初始线程;
步骤S350,根据线程控制参数对初始线程进行线程参数修改处理得到执行线程。
需要说明的是,根据对应的接口参数为待调用接口在预设的线程池中创建执行线程的过程中,首先根据接口参数确定线程执行参数,其中,线程执行参数包括线程标记参数和线程控制参数;接着根据线程标记参数在线程池中选定初始线程;后续就可以根据线程控制参数对初始线程进行线程参数修改处理得到执行线程。
值得注意的是,线程执行参数表征线程在执行过程中的一些性能参数,这些性能参数可以基于接口参数而进行转换确定。线程标记参数也是具有唯一性,因此可以根据线程标记参数在线程池中选定得到对应的初始线程;然后根据线程控制参数对初始线程进行调节处理就可以得到执行线程。在对初始线程进行调节处理的过程中主要通过线程控制参数对初始线程的线程参数进行修改处理就可以得到相应的执行线程。
在一些实施例中,如图5所示,上述步骤S400还可以包括但不限于步骤S410和步骤S420。
步骤S410,对线程池的执行时刻进行设定;
步骤S420,在执行时刻到达的情况下,对线程池中的所有执行线程同时进行执行处理,得到多个接口调用结果。
需要说明的是,在对线程池中的所有执行线程进行并行执行处理的过程中,首先对线程池的执行时刻进行设定处理;接着在执行时刻到达的情况下,对线程池中的所有执行线程同时进行执行处理就可以得到多个接口调用结果。
值得注意的是,在执行时刻到达的情况下,对线程池中的所有执行线程同时进行执行处理就可以得到多个接口调用结果,实现了所有接口的并行调用处理,很好地提高了数据的调用效率。
在一些实施例中,如图6所示,在执行完步骤S500之后还可以包括但不限于步骤S610和步骤S620。
步骤S610,对接口调用结果列表进行数据压缩处理得到接口调用数据包;
步骤S620,将接口调用数据包发送至目标对象,以使目标对象对接口调用数据包进行结果保存处理。
需要说明的是,对多个接口调用结果进行组合得到接口调用结果列表后,还需要对接口调用结果列表进行数据压缩处理就可以得到接口调用数据包;接着就可以将接口调用数据包发送到预设的目标对象中,从而目标对象就可以对接口调用数据包进行结果保存处理,以便于维护人员后续对接口的调用情况进行查看处理,从而可以了解接口调用的相关情况。其中,目标对象可以为目标服务器。
在一些实施例中,如图7所示,在执行完上述步骤S500之前还可以包括但不限于步骤S430和步骤S440。
步骤S430,对线程池中的所有执行线程进行监测处理得到监测结果;
步骤S440,在监测结果表征线程池中的所有执行线程均执行完毕的情况下,触发线程池中的每个执行线程进行执行结果组合处理。
需要说明的是,在对多个所述接口调用结果进行组合得到接口调用结果列表之前,还需要对线程池中的所有执行线程进行监测处理得到监测结果;在监测结果表征线程池中的所有执行线程均执行完毕的情况下,触发线程池中的每个执行线程进行执行结果组合处理;通过上述技术方案,可以在线程池中的所有执行线程均被执行完毕的情况下,才会触发线程池中的每个执行线程进行执行结果组合处理,使得接口并行调用的结果验证能够更加准确。
另外,如图8所示,本申请的一个实施例还提供了一种并行调用接口装置10,包括:
第一处理模块100,用于获取任务执行信息;
第二处理模块200,用于对任务执行信息进行分析处理得到任务执行接口列表,其中,任务执行接口列表包括多个接口名称以及与接口名称对应的接口参数;
第三处理模块300,用于根据每个接口名称从预设的调用系统中确定出对应的待调用接口,并根据对应的接口参数为待调用接口在预设的线程池中创建执行线程;
第四处理模块400,用于对线程池中的所有执行线程进行并行执行处理得到多个接口调用结果;
第五处理模块500,用于对多个接口调用结果进行组合得到接口调用结果列表。
需要说明的是,在进行并行调用接口处理的过程中,首先获取任务执行信息;接着对任务执行信息进行分析处理就可以得到任务执行接口列表,其中,任务执行接口列表包括多个接口名称以及与接口名称对应的接口参数;接着根据每个接口名称从预设的调用系统中确定出对应的待调用接口,并且根据对应的接口参数为待调用接口在预设的线程池中创建执行线程;接着对线程池中的所有执行线程进行并行执行处理就可以得到多个接口调用结果;最后对多个接口调用结果进行组合就可以得到接口调用结果列表。通过上述技术方案,提高接口调用效率,从而给用户更好的使用体验。
值得注意的是,在金融系统中,执行一个任务可能需要调用多个不同的业务系统接口,以往都是通过串行的方式进行调用执行,但是这样的接口调用方式影响了数据的调用效率,耗时较长;为了解决这一问题,本申请实施例通过并行调用的方式来对不同业务系统中的接口进行调用处理,很好地提升数据调用的效率。
值得注意的是,在并行调用接口的过程中,首先对任务执行信息进行分析处理就可以得到任务执行接口列表,其中,任务执行接口列表包括多个接口名称以及与接口名称对应的接口参数;接着根据每个接口名称从预设的调用系统中确定出对应的待调用接口,并根据对应的接口参数为待调用接口在预设的线程池中创建执行线程;并且对线程池中的所有执行线程进行并行执行处理就可以得到多个接口调用结果;最后对多个接口调用结果进行组合就可以得到接口调用结果列表。
需要说明的是,线程池中可以包括多个线程,每个线程可以用于对接口进行并行执行处理;线程,是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,并且每条线程并行执行不同的任务。轻量进程更多指内核线程,而把用户线程称为线程。线程是独立调度和分派的基本单位。线程可以为操作系统内核调度的内核线程;由用户进程自行调度的用户线程;或者由内核与用户进程,进行混合调度。同一进程中的多条线程将共享该进程中的全部系统资源,如虚拟地址空间,文件描述符和信号处理等等。但同一进程中的多个线程有各自的调用栈,自己的寄存器环境,自己的线程本地存储。一个进程可以有很多线程,每条线程并行执行不同的任务。在同一进程中的各个线程,都可以共享该进程所拥有的资源,这首先表现在:所有线程都具有相同的地址空间(进程的地址空间),这意味着,线程可以访问该地址空间的每一个虚地址;此外,还可以访问进程所拥有的已打开文件、定时器、信号量机构等。由于同一个进程内的线程共享内存和文件,所以线程之间互相通信不必调用内核。
值得注意的是,根据每个接口名称从预设的调用系统中确定出对应的待调用接口,并根据对应的接口参数为待调用接口在预设的线程池中创建执行线程;预设的调用系统中包括多个调用接口,将得到的任务执行接口列表中的每个接口名称与调用系统进行匹配处理,从而就可以从调用系统中确定多个待调用接口;并且根据任务执行接口列表中的接口参数为待调用接口在预设的线程池中创建执行线程;然后对线程池中的所有执行线程进行并行执行处理就可以得到多个接口调用结果;最后对多个接口调用结果进行组合处理就可以得到接口调用结果列表。
值得注意的是,对线程池中的所有执行线程进行并行执行处理就可以得到多个接口调用结果;对多个接口实现并行处理,就可以很好地节省数据调用的时间,整个过程更加简便快捷。
需要说明的是,在对任务执行信息进行分析处理的过程中,首先对任务执行信息进行拆分处理就可以得到多个任务执行子信息;接着对多个任务执行子信息进行识别处理就可以得到多个任务执行接口信息;最后将多个任务执行接口信息进行组合处理就可以得到多个任务执行接口列表。
值得注意的是,任务执行信息包括有多个执行步骤信息,而每个执行步骤均需要调用一个接口;因此对任务执行信息进行拆分处理就可以得到多个任务执行子信息;接着对多个任务执行子信息进行识别处理就可以得到多个任务执行接口信息;最后将多个任务执行接口信息进行组合处理就可以得到多个任务执行接口信息。
值得注意的是,将多个任务执行接口信息进行组合处理就可以得到任务执行接口列表,其中,任务执行接口列表中包括有多个接口名称以及与接口名称对应的接口参数,为了后续的接口并行调用做好前提准备。
该并行调用接口装置10的具体实施方式与上述并行调用接口方法的具体实施例基本相同,在此不再赘述。
另外,如图9所示,本申请的一个实施例还提供了一种电子设备700,该设备包括:存储器720、处理器710及存储在存储器720上并可在处理器710上运行的计算机程序。
处理器710和存储器720可以通过总线或者其他方式连接。
实现上述实施例的并行调用接口方法所需的非暂态软件程序以及指令存储在存储器720中,当被处理器710执行时,执行上述各实施例的并行调用接口方法,例如,执行以上描述的图1中的方法步骤S100至S500、图2中的方法步骤S210至S230、图3中的方法步骤S310至S320、图4中的方法步骤S330至S350、图5中的方法步骤S410至S420、图6中的方法步骤S610至S620和图7中的方法步骤S430至S440。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
此外,本申请的一个实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个处理器710或控制器执行,例如,被上述设备实施例中的一个处理器710执行,可使得上述处理器710执行上述实施例中的并行调用接口方法,例如,执行以上描述的图1中的方法步骤S100至S500、图2中的方法步骤S210至S230、图3中的方法步骤S310至S320、图4中的方法步骤S330至S350、图5中的方法步骤S410至S420、图6中的方法步骤S610至S620和图7中的方法步骤S430至S440。
上述各实施例可以结合使用,不同实施例之间名称相同的模块可相同可不同。
上述对本申请特定实施例进行了描述,其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,附图中描绘的过程不一定必须按照示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备、计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请实施例提供的装置、设备、计算机可读存储介质与方法是对应的,因此,装置、设备、非易失性计算机存储介质也具有与对应方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述对应装置、设备、计算机存储介质的有益技术效果。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field ProgrammableGateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logiccompiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请实施例可提供为方法、系统、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(Flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带式磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(Transitory Media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示单独存在A、同时存在A和B、单独存在B的情况。其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项”及其类似表达,是指的这些项中的任意组合,包括单项或复数项的任意组合。例如,a,b和c中的至少一项可以表示:a,b,c,a和b,a和c,b和c或a和b和c,其中a,b,c可以是单个,也可以是多个。
本申请实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (10)

1.一种并行调用接口方法,其特征在于,包括:
获取任务执行信息;
对所述任务执行信息进行分析处理得到任务执行接口列表,其中,所述任务执行接口列表包括多个接口名称以及与所述接口名称对应的接口参数;
根据每个所述接口名称从预设的调用系统中确定出对应的待调用接口,并根据对应的所述接口参数为所述待调用接口在预设的线程池中创建执行线程;
对所述线程池中的所有所述执行线程进行并行执行处理得到多个接口调用结果;
对多个所述接口调用结果进行组合得到接口调用结果列表。
2.根据权利要求1所述的并行调用接口方法,其特征在于,所述对所述任务执行信息进行分析处理得到任务执行接口列表,包括:
对所述任务执行信息进行拆分处理得到多个任务执行子信息;
对多个所述任务执行子信息进行识别处理得到多个任务执行接口信息;
将多个所述任务执行接口信息进行组合处理得到所述任务执行接口列表。
3.根据权利要求1所述的并行调用接口方法,其特征在于,所述根据每个所述接口名称从预设的调用系统中确定出对应的待调用接口,包括:
根据所述接口名称和预设的接口信息数据库确定接口标记信息;
将所述接口标记信息与所述调用系统中的标记属性进行匹配处理以筛选得到所述待调用接口。
4.根据权利要求1所述的并行调用接口方法,其特征在于,所述根据对应的所述接口参数为所述待调用接口在预设的线程池中创建执行线程,包括:
根据所述接口参数确定线程执行参数,其中,所述线程执行参数包括线程标记参数和线程控制参数;
根据所述线程标记参数在所述线程池中选定初始线程;
根据所述线程控制参数对所述初始线程进行线程参数修改处理得到所述执行线程。
5.根据权利要求1所述的并行调用接口方法,其特征在于,所述对所述线程池中的所有所述执行线程进行并行执行处理得到多个接口调用结果,包括:
对所述线程池的执行时刻进行设定;
在所述执行时刻到达的情况下,对所述线程池中的所有所述执行线程同时进行执行处理,得到多个所述接口调用结果。
6.根据权利要求1所述的并行调用接口方法,其特征在于,所述对多个所述接口调用结果进行组合得到接口调用结果列表后,所述方法还包括:
对所述接口调用结果列表进行数据压缩处理得到接口调用数据包;
将所述接口调用数据包发送至目标对象,以使所述目标对象对所述接口调用数据包进行结果保存处理。
7.根据权利要求1所述的并行调用接口方法,其特征在于,所述对多个所述接口调用结果进行组合得到接口调用结果列表之前,所述方法还包括:
对所述线程池中的所有所述执行线程进行监测处理得到监测结果;
在所述监测结果表征所述线程池中的所有所述执行线程均执行完毕的情况下,触发所述线程池中的每个所述执行线程进行执行结果组合处理。
8.一种并行调用接口装置,其特征在于,包括:
第一处理模块,用于获取任务执行信息;
第二处理模块,用于对所述任务执行信息进行分析处理得到任务执行接口列表,其中,所述任务执行接口列表包括多个接口名称以及与所述接口名称对应的接口参数;
第三处理模块,用于根据每个所述接口名称从预设的调用系统中确定出对应的待调用接口,并根据对应的所述接口参数为所述待调用接口在预设的线程池中创建执行线程;
第四处理模块,用于对所述线程池中的所有所述执行线程进行并行执行处理得到多个接口调用结果;
第五处理模块,用于对多个所述接口调用结果进行组合得到接口调用结果列表。
9.一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任意一项所述的并行调用接口方法。
10.一种计算机可读存储介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令用于执行权利要求1至7中任意一项所述的并行调用接口方法。
CN202311365875.7A 2023-10-19 2023-10-19 并行调用接口方法、装置、电子设备及可读存储介质 Pending CN117440000A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311365875.7A CN117440000A (zh) 2023-10-19 2023-10-19 并行调用接口方法、装置、电子设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311365875.7A CN117440000A (zh) 2023-10-19 2023-10-19 并行调用接口方法、装置、电子设备及可读存储介质

Publications (1)

Publication Number Publication Date
CN117440000A true CN117440000A (zh) 2024-01-23

Family

ID=89557618

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311365875.7A Pending CN117440000A (zh) 2023-10-19 2023-10-19 并行调用接口方法、装置、电子设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN117440000A (zh)

Similar Documents

Publication Publication Date Title
CN115774552A (zh) 配置化的算法设计方法、装置、电子设备及可读存储介质
CN114710318B (zh) 一种限制爬虫高频访问的方法、装置、设备及介质
CN117440000A (zh) 并行调用接口方法、装置、电子设备及可读存储介质
CN116185617A (zh) 任务处理方法及装置
CN114924876A (zh) 基于分布式异构运算的声纹识别方法、装置及存储介质
CN111967769B (zh) 一种风险识别方法、装置、设备及介质
CN115292196A (zh) 用户界面测试方法、装置、电子设备及可读存储介质
CN115061928A (zh) 微服务自动化测试方法、装置、电子设备及存储介质
CN109903165B (zh) 一种模型合并方法和装置
CN111967767A (zh) 一种业务风险识别方法、装置、设备及介质
CN116909687A (zh) 数据库脚本并行执行方法、装置、电子设备及存储介质
CN117421036A (zh) 组件管理方法、装置、电子设备及计算机可读存储介质
CN117573359B (zh) 一种基于异构集群的计算框架管理系统及方法
CN117032930A (zh) 元数据处理方法、装置、电子设备及计算机可读存储介质
CN117172932A (zh) 实时核身方法、装置、电子设备及计算机可读存储介质
CN115033485A (zh) 大数据自动化测试方法、装置、电子设备及存储介质
CN113656290B (zh) 一种mock点自动识别方法、装置以及设备
CN117421214A (zh) 批量造数方法、装置、电子设备及计算机可读存储介质
CN115017915B (zh) 一种模型训练、任务执行的方法及装置
CN116909926A (zh) 接口覆盖率统计方法、装置、电子设备及可读存储介质
CN111783018B (zh) 一种页面处理方法、装置及设备
US11334716B2 (en) Document anonymization including selective token modification
CN117032788A (zh) 数据管理监控方法、装置、电子设备及可读存储介质
CN115686355A (zh) 分区命名空间固态硬盘区域分配方法、装置及存储介质
CN116911973A (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