CN117555708B - Windows微服务框架程序调用方法、系统和设备 - Google Patents
Windows微服务框架程序调用方法、系统和设备 Download PDFInfo
- Publication number
- CN117555708B CN117555708B CN202410041531.9A CN202410041531A CN117555708B CN 117555708 B CN117555708 B CN 117555708B CN 202410041531 A CN202410041531 A CN 202410041531A CN 117555708 B CN117555708 B CN 117555708B
- Authority
- CN
- China
- Prior art keywords
- program
- encapsulation
- information
- windows
- packaged
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 230000004044 response Effects 0.000 claims abstract description 50
- 230000004048 modification Effects 0.000 claims abstract description 11
- 238000012986 modification Methods 0.000 claims abstract description 11
- 238000007792 addition Methods 0.000 claims abstract description 10
- 238000012217 deletion Methods 0.000 claims abstract description 10
- 230000037430 deletion Effects 0.000 claims abstract description 10
- 230000006870 function Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 11
- 238000004806 packaging method and process Methods 0.000 claims description 4
- 238000012545 processing Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 4
- 238000005538 encapsulation Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
- G06F9/548—Object oriented; Remote method invocation [RMI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请涉及Windows微服务框架程序调用方法、系统和设备,该方法在接收到来自流程调度系统的HTTP请求后,从数据库中查询HTTP请求对应的封装程序信息;HTTP请求包括请求头和请求体,请求头用于标识封装程序信息对应的封装程序实例的程序代码或软件类型,请求体用于唯一确定封装程序信息对应的封装程序;使用查询到的封装程序信息调用Windows控制台运行封装程序信息对应的封装程序;封装程序通过Spring‑Cloud微服务进行新增、修改、删除、查询和运行;运行封装程序完毕后,以HTTP响应形式发送封装程序的运行结果到流程调度系统,支持了网页端流程调度系统运行商业软件程序。
Description
技术领域
本发明属于数据处理技术领域,涉及一种Windows微服务框架程序调用方法、系统和设备。
背景技术
商业软件程序是流程任务调度系统的重要组成之一。目前常用的Windows程序封装运行方法是将程序封装为.exe文件或其他格式的应用程序文件,流程调度任务运行时使用控制台命名运行应用程序。目前常用的Windows程序封装运行方法其缺点在于:(1)封装后的程序难以更改,每次更改需要重新封装;(2)对应网页端流程调度系统,简单的将程序封装为应用程序无法满足远程调用、数据传递和查询运行状态等问题。因此,急需一种性能更强的网页端商业软件程序调用技术。
发明内容
针对上述传统方法中存在的问题,本发明提出了一种Windows微服务框架程序调用方法、一种Windows微服务框架程序调用系统和一种计算机设备,能够实现网页端流程调度任务远程设置并调用商业软件,支持网页端流程调度系统运行商业软件程序。
为了实现上述目的,本发明实施例采用以下技术方案:
一方面,提供一种Windows微服务框架程序调用方法,包括步骤:
接收到来自流程调度系统的HTTP请求后,从数据库中查询HTTP请求对应的封装程序信息;HTTP请求包括请求头和请求体,请求头用于标识封装程序信息对应的封装程序实例的程序代码或软件类型,请求体用于唯一确定封装程序信息对应的封装程序;
使用查询到的封装程序信息调用Windows控制台运行封装程序信息对应的封装程序;封装程序通过Spring-Cloud微服务进行新增、修改、删除、查询和运行;
运行封装程序完毕后,以HTTP响应形式发送封装程序的运行结果到流程调度系统。
另一方面,还提供一种Windows微服务框架程序调用系统,包括:
程序查询模块,用于接收到来自流程调度系统的HTTP请求后,从数据库中查询HTTP请求对应的封装程序信息;HTTP请求包括请求头和请求体,请求头用于标识封装程序信息对应的封装程序实例的程序代码或软件类型,请求体用于唯一确定封装程序信息对应的封装程序;
调用控制模块,用于使用查询到的封装程序信息调用Windows控制台运行封装程序信息对应的封装程序;封装程序通过Spring-Cloud微服务进行新增、修改、删除、查询和运行;
响应模块,用于运行封装程序完毕后,以HTTP响应形式发送封装程序的运行结果到流程调度系统。
又一方面,还提供一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述的Windows微服务框架程序调用方法的步骤。
再一方面,还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的Windows微服务框架程序调用方法的步骤。
上述技术方案中的一个技术方案具有如下优点和有益效果:
上述Windows微服务框架程序调用方法、系统和设备,通过结合Spring-Cloud微服务框架与Windows商业软件程序封装,实现网页端流程调度任务远程调用运行Windows商业软件程序。相比于传统方法,上述技术方案将Spring-Boot微服务框架与程序封装运行相结合,实现了Windows商业软件程序的远程调度运行,能够完成传统方法所不具有的网页端流程调度任务远程调用运行Windows商业软件程序功能,解决了网页端流程调度系统无法使用Windows端商业软件程序的问题,并且操作简易,功能实用。
附图说明
为了更清楚地说明本申请实施例或传统技术中的技术方案,下面将对实施例或传统技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中Windows微服务框架程序调用方法的流程示意图;
图2为另一个实施例中Windows微服务框架程序调用方法的流程示意图;
图3为一个实施例中封装程序运行处理的过程示意图;
图4为一个实施例中封装程序运行阶段的流程图;
图5为一个实施例中Windows微服务框架程序调用系统的模块框架示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。
需要说明的是,在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置展示该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。
本领域技术人员可以理解,本文所描述的实施例可以与其它实施例相结合。在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
本发明将Spring-Cloud微服务框架与Windows系统本机的程序封装运行结合,建立了Windows微服务框架下程序封装运行方法,使得网页端的流程调度任务能够远程调用商业软件程序。
下面将结合本发明实施例图中的附图,对本发明实施方式进行详细说明。
请参阅图1,在一个实施例中,提供了一种Windows微服务框架程序调用方法,包括如下处理步骤S12至S16:
S12,接收到来自流程调度系统的HTTP请求后,从数据库中查询HTTP请求对应的封装程序信息;HTTP请求包括请求头和请求体,请求头用于标识封装程序信息对应的封装程序实例的程序代码或软件类型,请求体用于唯一确定封装程序信息对应的封装程序;
S14,使用查询到的封装程序信息调用Windows控制台运行封装程序信息对应的封装程序;封装程序通过Spring-Cloud微服务进行新增、修改、删除、查询和运行;
S16,运行封装程序完毕后,以HTTP响应形式发送封装程序的运行结果到流程调度系统。
可以理解,在实际应用中,上述各封装程序实例可以预先利用各相应商业软件的程序信息及其文件进行封装后存储到Spring-Cloud微服务所部署的Windows服务器的数据库中,以供后续调用流程中可以直接查询调用。可以将各相应商业软件的程序封装为.exe文件或其他格式的应用程序文件,流程调度任务运行时使用Windows控制台命名运行应用程序,以避免传统技术中对应网页端流程调度系统,简单的将程序封装为应用程序无法满足远程调用、数据传递和查询运行状态等问题,本实施例中将Spring-Cloud微服务框架与Windows系统本机的程序封装运行结合,建立了Windows微服务框架下程序封装运行的新方法,使得网页端的流程调度任务能够远程调用商业软件程序。
具体的,流程调度任务远程调用封装程序时需要向Windows服务器发送HTTP请求,以向Windows服务器请求所需的封装程序调用。其中,该HTTP请求包括:请求头(Headers)和请求体(Body)。请求头中包含参数名Plugin及其值,用以标识对应封装程序实例代码或软件类型。请求体包含封装程序标识号ID,用以唯一确定对应封装程序。该HTTP请求的请求地址为Windows微服务网关Gateway,Windows微服务网关在接收到该HTTP请求后,根据请求头中Plugin参数的值判断封装程序的类型,不同类型封装程序的调用请求会被分发到用来运行不同类型程序的Windows服务器上(如请求头中参数Plugin的值是MATLAB,那么微服务网关会根据配置文件中的路由信息将该封装程序运行HTTP请求分发给安装有MATLAB软件的服务器,其他类型亦如此,且单个服务器可以运行多种类型的程序)。
Spring-Cloud微服务接收到HTTP请求后,使用封装程序标识号ID在数据库中查询其封装程序信息,这些封装程序信息可以包括用户新建封装程序实例时从客户端提供的信息。当查询到HTTP请求对应的封装程序信息时,Windows服务器的系统将创建新的线程调用Windows控制台执行封装程序信息对应的封装程序,以实现对该封装程序信息对应的封装程序运行处理。在数据库中存储的Spring-Cloud微服务框架下封装程序实例是可以新增、修改、删除和查询的,因此这些封装程序实例所对应的封装程序可以通过该Spring-Cloud微服务框架所提供的接口和功能,实现新增、修改、删除、查询和运行,从而支持网页端流程调度任务远程设置并调用商业软件。
在封装程序运行完毕后,Spring-Cloud微服务将会以HTTP响应形式发送运行结果到流程调度系统,其响应体的内容可以包括程序运行状态及程序输出参数信息。在程序调用过程中,流程调度系统需要以一定的时间间隔向微服务发送HTTP请求,以实时获知封装程序的运行状态,从而避免可能的重复调用和系统资源浪费。
上述Windows微服务框架程序调用方法,通过结合Spring-Cloud微服务框架与Windows商业软件程序封装,实现网页端流程调度任务远程调用运行Windows商业软件程序。相比于传统方法,上述技术方案将Spring-Boot微服务框架与程序封装运行相结合,实现了Windows商业软件程序的远程调度运行,能够完成传统方法所不具有的网页端流程调度任务远程调用运行Windows商业软件程序功能,解决了网页端流程调度系统无法使用Windows端商业软件程序的问题,并且操作简易,功能实用。
在一个实施例中,如图2所示,上述的Windows微服务框架程序调用方法还可以包括如下处理步骤:
S10,获取Windows客户端提供的待封装程序信息;待封装程序信息包括待封装程序的基本信息、程序文件、文件信息和程序输入输出参数;
S11,根据待封装程序信息,利用Spring-Cloud微服务将待封装程序信息对应的待封装程序封装为一个封装程序实例并存入数据库。
可以理解,对于每一需要封装的商业软件对应的封装程序,Spring-Cloud微服务根据Windows客户端提供的程序信息及文件,将其封装为一个封装程序实例。具体的,新增封装程序需要程序的基本信息、程序文件及其文件信息,以及程序输入输出参数的信息。
进一步的,程序的基本信息可以包括程序名称、类型、控制台运行命令和备注;程序文件可以包括输入文件、输出文件、主函数程序文件、扩展函数程序文件及其他程序运行所需文件(即程序运行附属文件),文件信息可以包括文件类型和文件路径;而程序输入输出参数的信息可以包括参数名称、参数类型、数据类型、默认值、单位、所属输入和输出文件名称。本领域技术人员可以理解,待封装程序的前述全部信息都可以直接由用户通过Windows客户端录入或者导入而实现其信息提供。
通过上述封装程序的实例封装和存库处理,可以利用Spring-Cloud微服务快速自动化完成Windows商业软件程序的封装和实例化处理。
在一个实施例中,如图3所示,关于上述的步骤S14,具体可以包括如下处理步骤:
S142,将封装程序的数据库表组件的运行状态设为运行中;
S144,创建新的线程调用Windows控制台执行封装程序的控制台运行命令;
S146,运行封装程序完成时,将封装程序的数据库表组件的运行状态设为运行完毕并等待获取输出;
S148,在运行封装程序的输出数据被获取为运行结果后,将封装程序的数据库表组件的运行状态设为未运行。
可以理解,使用查询到的上述封装程序信息后,即可用于运行该相应的封装程序。如图4所示,为封装程序运行阶段的流程图,具体步骤可以展示如下:
封装程序的数据库表中配置有标识其运行状态的字段,例如但不限于用0表示封装程序未运行、用1表示封装程序运行中和用2表示封装程序运行完毕并等待获取输出等运行状态。
在运行封装程序时,服务器系统首先将负责运行该封装程序的组件的运行状态从0修改为1,并创建新的线程调用Windows控制台执行查询到的封装程序信息中的控制台运行命令,以此调用相应商业软件开始运行程序;如有多个封装程序实例需要同时运行,服务器系统会给每个程序的运行单独创建一个线程,各个程序的运行相互不影响。
运行完成后将负责运行该封装程序的组件的运行状态从1修改为2,商业软件进程结束,封装程序运行线程结束;封装程序运行结束产生的输出数据被获取后,将组件的运行状态设置为0,表示着该封装程序实例运行完毕。该封装程序运行完毕,以HTTP响应形式发送运行结果到流程调度系统,其响应体内容可以包括:程序运行状态和程序输出参数信息。
在一个实施例中,若HTTP请求为流程调度系统首次发送的HTTP请求,则返回的HTTP响应中程序运行状态为开始运行,无程序输入输出参数的信息。HTTP响应用于指示流程调度系统在接收到HTTP响应后继续发送HTTP请求。
可以理解,流程调度系统需要以一定的时间间隔向Spring-Cloud微服务发送HTTP请求:对于首次发送的HTTP请求,Spring-Cloud微服务返回的HTTP响应中程序运行状态为开始运行,无程序输入输出参数信息。流程调度系统接收到该响应则会继续发送请求,以实现对封装程序的运行状态的持续跟踪。
在一个实施例中,若HTTP请求为流程调度系统在封装程序运行中途发送的HTTP请求,则返回的HTTP响应中程序运行状态为运行中,无程序输入输出参数的信息;HTTP响应用于指示流程调度系统接收到HTTP响应后继续发送HTTP请求。
可以理解,如果当前发送的HTTP请求是在封装程序运行中途发送的HTTP请求,那么Spring-Cloud微服务返回的HTTP响应中程序运行状态为运行中,无程序输入输出参数信息。流程调度系统接收到该HTTP响应则继续发送请求,以实现对封装程序的运行状态的持续跟踪,以便提高封装程序的调用效率和可靠性。
在一个实施例中,若HTTP请求为流程调度系统在封装程序运行完毕后发送的HTTP请求,则返回的HTTP响应中程序运行状态为运行完毕并有程序输入输出参数的信息;HTTP响应用于指示流程调度系统接收到HTTP响应后停止发送HTTP请求。
可以理解,如果当前发送的HTTP请求是流程调度系统在程序运行完毕后发送的HTTP请求,那么Spring-Cloud微服务返回的HTTP响应中程序运行状态为运行完毕,并且有输入输出参数信息。流程调度系统接收到该响应则停止发送请求,当前调用的该封装程序运行到此结束。
应该理解的是,虽然上述流程图1至图4中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且上述流程图1至图4的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本发明已经在测试中试运行了多个Windows端商业软件程序,能够完成现有方法所不具有的网页端流程调度任务远程调用运行Windows商业软件程序功能,并且操作简易、功能实用。
在一个实施例中,如图5所示,提供一种Windows微服务框架程序调用系统100,包括程序查询模块11、调用控制模块13和响应模块15,其中,程序查询模块11用于接收到来自流程调度系统的HTTP请求后,从数据库中查询HTTP请求对应的封装程序信息;HTTP请求包括请求头和请求体,请求头用于标识封装程序信息对应的封装程序实例的程序代码或软件类型,请求体用于唯一确定封装程序信息对应的封装程序。调用控制模块13用于使用查询到的封装程序信息调用Windows控制台运行封装程序信息对应的封装程序;封装程序通过Spring-Cloud微服务进行新增、修改、删除、查询和运行。响应模块15用于运行封装程序完毕后,以HTTP响应形式发送封装程序的运行结果到流程调度系统。
上述Windows微服务框架程序调用系统100,通过结合Spring-Cloud微服务框架与Windows商业软件程序封装,实现网页端流程调度任务远程调用运行Windows商业软件程序。相比于传统方法,上述技术方案将Spring-Boot微服务框架与程序封装运行相结合,实现了Windows商业软件程序的远程调度运行,能够完成传统方法所不具有的网页端流程调度任务远程调用运行Windows商业软件程序功能,解决了网页端流程调度系统无法使用Windows端商业软件程序的问题,并且操作简易,功能实用。
在一个实施例中,上述Windows微服务框架程序调用系统100还可以包括程序信息获取模块和程序封装模块,其中,程序信息获取模块用于获取Windows客户端提供的待封装程序信息;待封装程序信息包括待封装程序的基本信息、程序文件、文件信息和程序输入输出参数。程序封装模块用于根据待封装程序信息,利用Spring-Cloud微服务将待封装程序信息对应的待封装程序封装为一个封装程序实例并存入数据库。
在一个实施例中,待封装程序的基本信息包括待封装程序的程序名称、类型、控制台运行命令和备注,程序文件包括待封装程序的输入文件、输出文件、主函数程序文件、扩展函数程序文件及程序运行附属文件,文件信息包括待封装程序的文件类型和文件路径,程序输入输出参数包括待封装程序的参数名称、参数类型、数据类型、数据默认值、数据单位、所属输入文件名称及所属输出文件名称。
在一个实施例中,上述调用控制模块13具体可以用于:将封装程序的数据库表组件的运行状态设为运行中;创建新的线程调用Windows控制台执行封装程序的控制台运行命令;运行封装程序完成时,将封装程序的数据库表组件的运行状态设为运行完毕并等待获取输出;在运行封装程序的输出数据被获取为运行结果后,将封装程序的数据库表组件的运行状态设为未运行。
在一个实施例中,若HTTP请求为流程调度系统首次发送的HTTP请求,则返回的HTTP响应中程序运行状态为开始运行,无程序输入输出参数的信息;HTTP响应用于指示流程调度系统在接收到HTTP响应后继续发送HTTP请求。
在一个实施例中,若HTTP请求为流程调度系统在封装程序运行中途发送的HTTP请求,则返回的HTTP响应中程序运行状态为运行中,无程序输入输出参数的信息;HTTP响应用于指示流程调度系统接收到HTTP响应后继续发送HTTP请求。
在一个实施例中,若HTTP请求为流程调度系统在封装程序运行完毕后发送的HTTP请求,则返回的HTTP响应中程序运行状态为运行完毕并有程序输入输出参数的信息;HTTP响应用于指示流程调度系统接收到HTTP响应后停止发送HTTP请求。
关于Windows微服务框架程序调用系统100的具体限定,可以参见上文中Windows微服务框架程序调用方法的相应限定,在此不再赘述。上述Windows微服务框架程序调用系统100中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于具备数据处理功能的设备中,也可以软件形式存储于前述设备的存储器中,以便于处理器调用执行以上各个模块对应的操作,前述设备可以是但不限于本领域已有的各型数据计算与处理设备。
在一个实施例中,还提供一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现如下处理步骤:接收到来自流程调度系统的HTTP请求后,从数据库中查询HTTP请求对应的封装程序信息;HTTP请求包括请求头和请求体,请求头用于标识封装程序信息对应的封装程序实例的程序代码或软件类型,请求体用于唯一确定封装程序信息对应的封装程序;使用查询到的封装程序信息调用Windows控制台运行封装程序信息对应的封装程序;封装程序通过Spring-Cloud微服务进行新增、修改、删除、查询和运行;运行封装程序完毕后,以HTTP响应形式发送封装程序的运行结果到流程调度系统。
可以理解,上述计算机设备除上述述及的存储器和处理器外,还包括其他本说明书未列出的软硬件组成部分,具体可以根据不同应用场景下的具体计算机设备的型号确定,本说明书不再一一列出详述。
在一个实施例中,处理器执行计算机程序时还可以实现上述Windows微服务框架程序调用方法各实施例中增加的步骤或者子步骤。
在一个实施例中,还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如下处理步骤:接收到来自流程调度系统的HTTP请求后,从数据库中查询HTTP请求对应的封装程序信息;HTTP请求包括请求头和请求体,请求头用于标识封装程序信息对应的封装程序实例的程序代码或软件类型,请求体用于唯一确定封装程序信息对应的封装程序;使用查询到的封装程序信息调用Windows控制台运行封装程序信息对应的封装程序;封装程序通过Spring-Cloud微服务进行新增、修改、删除、查询和运行;运行封装程序完毕后,以HTTP响应形式发送封装程序的运行结果到流程调度系统。
在一个实施例中,计算机程序被处理器执行时,还可以实现上述Windows微服务框架程序调用方法各实施例中增加的步骤或者子步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线式动态随机存储器(RambusDRAM,简称RDRAM)以及接口动态随机存储器(DRDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可做出若干变形和改进,都属于本申请保护范围。因此本申请专利的保护范围应以所附权利要求为准。
Claims (7)
1.一种Windows微服务框架程序调用方法,其特征在于,包括步骤:
接收到来自流程调度系统的HTTP请求后,从数据库中查询所述HTTP请求对应的封装程序信息;所述HTTP请求包括请求头和请求体,所述请求头用于标识所述封装程序信息对应的封装程序实例的程序代码或软件类型,所述请求体用于唯一确定所述封装程序信息对应的封装程序;
使用查询到的封装程序信息调用Windows控制台运行所述封装程序信息对应的封装程序;所述封装程序通过Spring-Cloud微服务进行新增、修改、删除、查询和运行;
运行所述封装程序完毕后,以HTTP响应形式发送所述封装程序的运行结果到所述流程调度系统;其中,所述Windows微服务框架程序调用方法还包括步骤:
获取Windows客户端提供的待封装程序信息;所述待封装程序信息包括所述待封装程序的基本信息、程序文件、文件信息和程序输入输出参数;
根据所述待封装程序信息,利用所述Spring-Cloud微服务将所述待封装程序信息对应的待封装程序封装为一个封装程序实例并存入数据库;
所述待封装程序的基本信息包括所述待封装程序的程序名称、类型、控制台运行命令和备注,所述程序文件包括所述待封装程序的输入文件、输出文件、主函数程序文件、扩展函数程序文件及程序运行附属文件,所述文件信息包括所述待封装程序的文件类型和文件路径,所述程序输入输出参数包括所述待封装程序的参数名称、参数类型、数据类型、数据默认值、数据单位、所属输入文件名称及所属输出文件名称。
2.根据权利要求1所述的Windows微服务框架程序调用方法,其特征在于,使用查询到的封装程序信息调用Windows控制台运行所述封装程序信息对应的封装程序的步骤,包括:
将所述封装程序的数据库表组件的运行状态设为运行中;
创建新的线程调用所述Windows控制台执行所述封装程序的控制台运行命令;
运行所述封装程序完成时,将所述封装程序的数据库表组件的运行状态设为运行完毕并等待获取输出;
在运行所述封装程序的输出数据被获取为所述运行结果后,将所述封装程序的数据库表组件的运行状态设为未运行。
3.根据权利要求2所述的Windows微服务框架程序调用方法,其特征在于,若所述HTTP请求为所述流程调度系统首次发送的HTTP请求,则返回的所述HTTP响应中程序运行状态为开始运行,无程序输入输出参数的信息;所述HTTP响应用于指示所述流程调度系统在接收到所述HTTP响应后继续发送HTTP请求。
4.根据权利要求2所述的Windows微服务框架程序调用方法,其特征在于,若所述HTTP请求为所述流程调度系统在所述封装程序运行中途发送的HTTP请求,则返回的所述HTTP响应中程序运行状态为运行中,无程序输入输出参数的信息;所述HTTP响应用于指示所述流程调度系统接收到所述HTTP响应后继续发送HTTP请求。
5.根据权利要求2所述的Windows微服务框架程序调用方法,其特征在于,若所述HTTP请求为所述流程调度系统在所述封装程序运行完毕后发送的HTTP请求,则返回的所述HTTP响应中程序运行状态为运行完毕并有程序输入输出参数的信息;所述HTTP响应用于指示所述流程调度系统接收到所述HTTP响应后停止发送HTTP请求。
6.一种Windows微服务框架程序调用系统,其特征在于,包括:
程序查询模块,用于接收到来自流程调度系统的HTTP请求后,从数据库中查询所述HTTP请求对应的封装程序信息;所述HTTP请求包括请求头和请求体,所述请求头用于标识所述封装程序信息对应的封装程序实例的程序代码或软件类型,所述请求体用于唯一确定所述封装程序信息对应的封装程序;
调用控制模块,用于使用查询到的封装程序信息调用Windows控制台运行所述封装程序信息对应的封装程序;所述封装程序通过Spring-Cloud微服务进行新增、修改、删除、查询和运行;
响应模块,用于运行所述封装程序完毕后,以HTTP响应形式发送所述封装程序的运行结果到所述流程调度系统;其中,所述Windows微服务框架程序调用系统还包括:
程序信息获取模块,用于获取Windows客户端提供的待封装程序信息;所述待封装程序信息包括所述待封装程序的基本信息、程序文件、文件信息和程序输入输出参数;
程序封装模块,用于根据所述待封装程序信息,利用所述Spring-Cloud微服务将所述待封装程序信息对应的待封装程序封装为一个封装程序实例并存入数据库;所述待封装程序的基本信息包括所述待封装程序的程序名称、类型、控制台运行命令和备注,所述程序文件包括所述待封装程序的输入文件、输出文件、主函数程序文件、扩展函数程序文件及程序运行附属文件,所述文件信息包括所述待封装程序的文件类型和文件路径,所述程序输入输出参数包括所述待封装程序的参数名称、参数类型、数据类型、数据默认值、数据单位、所属输入文件名称及所属输出文件名称。
7.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5任一项所述的Windows微服务框架程序调用方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410041531.9A CN117555708B (zh) | 2024-01-11 | 2024-01-11 | Windows微服务框架程序调用方法、系统和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410041531.9A CN117555708B (zh) | 2024-01-11 | 2024-01-11 | Windows微服务框架程序调用方法、系统和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117555708A CN117555708A (zh) | 2024-02-13 |
CN117555708B true CN117555708B (zh) | 2024-03-26 |
Family
ID=89815151
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410041531.9A Active CN117555708B (zh) | 2024-01-11 | 2024-01-11 | Windows微服务框架程序调用方法、系统和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117555708B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107911430A (zh) * | 2017-11-06 | 2018-04-13 | 上海电机学院 | 一种微服务基础设施装置 |
CN110324177A (zh) * | 2019-05-31 | 2019-10-11 | 中国人民解放军国防科技大学 | 一种微服务架构下的服务请求处理方法、系统及介质 |
CN112468340A (zh) * | 2020-11-24 | 2021-03-09 | 上海浦东发展银行股份有限公司 | 一种用于多租户的预审业务数据配置系统 |
US11068261B1 (en) * | 2020-01-17 | 2021-07-20 | Jpmorgan Chase Bank, N.A. | Method and system for developing microservices at scale |
CN114254606A (zh) * | 2021-11-19 | 2022-03-29 | 青岛海尔科技有限公司 | 微服务框架模型 |
CN114697371A (zh) * | 2022-04-13 | 2022-07-01 | 中国农业银行股份有限公司 | 一种远程调用方法及装置 |
CN114995879A (zh) * | 2022-06-28 | 2022-09-02 | 北京慧点科技有限公司 | 一种基于低代码化平台的信息处理方法及系统 |
CN115480780A (zh) * | 2022-08-12 | 2022-12-16 | 浙江中控技术股份有限公司 | 基于Windows系统的微服务应用高效部署方法 |
CN115640143A (zh) * | 2022-07-28 | 2023-01-24 | 平安科技(深圳)有限公司 | 微服务处理方法、装置、电子设备及存储介质 |
CN117194064A (zh) * | 2023-07-28 | 2023-12-08 | 新华三网络信息安全软件有限公司 | 一种远程调用方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11785119B2 (en) * | 2018-10-02 | 2023-10-10 | Google Llc | Cloud-based microservices system |
US20230409417A1 (en) * | 2022-06-14 | 2023-12-21 | International Business Machines Corporation | Automated generation of application programming interfaces for microservices |
-
2024
- 2024-01-11 CN CN202410041531.9A patent/CN117555708B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107911430A (zh) * | 2017-11-06 | 2018-04-13 | 上海电机学院 | 一种微服务基础设施装置 |
CN110324177A (zh) * | 2019-05-31 | 2019-10-11 | 中国人民解放军国防科技大学 | 一种微服务架构下的服务请求处理方法、系统及介质 |
US11068261B1 (en) * | 2020-01-17 | 2021-07-20 | Jpmorgan Chase Bank, N.A. | Method and system for developing microservices at scale |
CN112468340A (zh) * | 2020-11-24 | 2021-03-09 | 上海浦东发展银行股份有限公司 | 一种用于多租户的预审业务数据配置系统 |
CN114254606A (zh) * | 2021-11-19 | 2022-03-29 | 青岛海尔科技有限公司 | 微服务框架模型 |
CN114697371A (zh) * | 2022-04-13 | 2022-07-01 | 中国农业银行股份有限公司 | 一种远程调用方法及装置 |
CN114995879A (zh) * | 2022-06-28 | 2022-09-02 | 北京慧点科技有限公司 | 一种基于低代码化平台的信息处理方法及系统 |
CN115640143A (zh) * | 2022-07-28 | 2023-01-24 | 平安科技(深圳)有限公司 | 微服务处理方法、装置、电子设备及存储介质 |
CN115480780A (zh) * | 2022-08-12 | 2022-12-16 | 浙江中控技术股份有限公司 | 基于Windows系统的微服务应用高效部署方法 |
CN117194064A (zh) * | 2023-07-28 | 2023-12-08 | 新华三网络信息安全软件有限公司 | 一种远程调用方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN117555708A (zh) | 2024-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2017409830B2 (en) | Multi-task scheduling method and system, application server and computer-readable storage medium | |
CN110351342A (zh) | 业务指令处理方法、装置、计算机设备和存储介质 | |
CN107689976B (zh) | 一种文件传输方法及装置 | |
CN109088764A (zh) | 访问请求处理方法及相关设备 | |
CN111861482B (zh) | 一种区块链对账方法和系统 | |
WO2019047441A1 (zh) | 一种通信优化方法及系统 | |
CN110677462B (zh) | 多区块链网络的访问处理方法、系统、装置及存储介质 | |
CN111131352A (zh) | 主题切换方法及装置 | |
CN112511591A (zh) | 一种医院接口数据交互的实现方法、装置、设备和介质 | |
CN105718307B (zh) | 进程管理方法及进程管理装置 | |
CN116233164A (zh) | 用于采集设备数据的方法、装置、存储介质及处理器 | |
CN112422450A (zh) | 计算机设备、服务请求的流量控制方法及装置 | |
CN115329170A (zh) | 网页抓取方法、装置、设备以及存储介质 | |
CN117555708B (zh) | Windows微服务框架程序调用方法、系统和设备 | |
CN113094395B (zh) | 数据查询方法、计算机设备和存储介质 | |
US20170286440A1 (en) | Method, business processing server and data processing server for storing and searching transaction history data | |
CN101719069A (zh) | Java系统的Web服务化方法与装置 | |
CN115686663A (zh) | 在线文件预览方法、装置及计算机设备 | |
CN113918245A (zh) | 一种数据调用方法、装置、设备及计算机可读存储介质 | |
CN109587239B (zh) | 一种访问请求的处理方法、服务器及存储介质 | |
CN113590336A (zh) | 边缘计算设备的算法管理方法及装置 | |
CN112068899A (zh) | 插件加载方法、装置、电子设备及存储介质 | |
CN111353117B (zh) | 基于key-value型内存数据库的WEB跨域cookie管理系统 | |
CN114780267B (zh) | 一种接口调用方法、装置、设备及存储介质 | |
CN117076508B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |