WO2021093671A1 - Task processing method, system, apparatus and device, and computer readable storage medium - Google Patents

Task processing method, system, apparatus and device, and computer readable storage medium Download PDF

Info

Publication number
WO2021093671A1
WO2021093671A1 PCT/CN2020/126822 CN2020126822W WO2021093671A1 WO 2021093671 A1 WO2021093671 A1 WO 2021093671A1 CN 2020126822 W CN2020126822 W CN 2020126822W WO 2021093671 A1 WO2021093671 A1 WO 2021093671A1
Authority
WO
WIPO (PCT)
Prior art keywords
task
platform
operation task
microservice
external
Prior art date
Application number
PCT/CN2020/126822
Other languages
French (fr)
Chinese (zh)
Inventor
杨峙岳
尹强
刘有
王和平
黄山
邸帅
卢道和
Original Assignee
深圳前海微众银行股份有限公司
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 深圳前海微众银行股份有限公司 filed Critical 深圳前海微众银行股份有限公司
Publication of WO2021093671A1 publication Critical patent/WO2021093671A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • G06F9/4862Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration the task being a mobile agent, i.e. specifically designed to migrate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources

Definitions

  • This application relates to the field of financial technology (Fintech) technology, in particular to task processing methods, systems, devices, equipment and computer-readable storage media based on platform interaction.
  • Financial technology Fetech
  • the microservice platform has high concurrency, high performance, and high availability of big data operations, requests and other operational tasks full lifecycle management capabilities.
  • the microservice platform is an open source system platform that can realize platform interaction by establishing a connection between the microservice platform and external platforms , To use the capabilities of the microservice platform to manage operational tasks.
  • the interaction between the current microservice platform and external platforms is through RPC (Remote Procedure Call, remote procedure call) method, RPC method requires corresponding development on the microservice platform and the external platform, the development cost is higher, and the development coupling is higher, which reduces the willingness to access the external platform. How to reduce the degree of coupling between the microservice platform and the external platform, increase the willingness to access external platforms, and effectively utilize the capabilities of the microservice platform to achieve operational task management has become a technical problem that needs to be solved urgently.
  • the main purpose of this application is to propose a task processing method, system, device, device, and computer-readable storage medium based on platform interaction, which aims to solve the current high coupling between microservice platforms and external platforms, which makes the willingness of external platforms to access Reduction, leading to the technical problem that the micro-service platform cannot be effectively used to achieve operational task management.
  • the task processing method based on platform interaction includes the following steps:
  • the task information corresponding to the operation task is acquired;
  • the operation task is submitted to an external platform through the preset agent node, so that the external platform can process the operation task;
  • the status information of the operation task fed back by the external platform is received, and the status of the operation task is flipped according to the status information until the execution of the operation task is completed.
  • the method before the step of obtaining task information corresponding to the operation task when the operation task is received, the method includes:
  • access information corresponding to the external platform access request is obtained, where the access information includes a code for realizing interaction between the microservice platform and the external platform;
  • the step of judging whether to transfer the operation task according to the task information includes:
  • the task type corresponding to the first task identifier is a microservice task type, it is determined not to transfer the operation task
  • the task type corresponding to the first task identifier is an agent task type, it is determined that the operation task is to be transferred.
  • the step of receiving the status information of the operation task fed back by the external platform, and flipping the status of the operation task according to the status information until the execution of the operation task is completed includes:
  • the acquisition request is sent to an external platform through the preset proxy node, so that the external platform locates the operation task according to the second task identifier in the acquisition request, and obtains the log corresponding to the operation task, or status information;
  • the step of receiving the status information of the operation task fed back by the external platform, and flipping the status of the operation task according to the status information until the execution of the operation task is completed includes:
  • the callback method is executed and the state of the operation task is adjusted according to the trigger event until the execution of the operation task is completed.
  • the step of receiving the status information of the operation task fed back by the external platform, and turning the status of the operation task according to the status information until after the execution of the operation task is completed includes:
  • the execution result information of the operation task is fed back to the user terminal, and the resources of the operation task are released.
  • the task processing method based on platform interaction further includes:
  • the present application also provides a task processing system based on platform interaction.
  • the task processing system based on platform interaction includes: a microservice platform and an external platform connected in communication, the microservice platform and the The external platform interaction implements the following steps:
  • the microservice platform When the microservice platform receives the operation task, the microservice platform obtains the task information corresponding to the operation task;
  • the microservice platform judges whether to transfer the operation task according to the task information
  • the microservice platform submits the operation task to an external platform through the preset agent node, so that the external platform can process the operation task;
  • the external platform executes the operation task to generate the log or status information corresponding to the operation task, and the external platform calls the network interface of the microservice platform to feed back the log or the status information;
  • the microservice platform When the microservice platform detects that the network interface is called, the microservice platform obtains the log or the status information fed back by the network interface;
  • the microservice platform performs state inversion of the operation task according to the log or the status information until the execution of the operation task is completed.
  • the present application also provides a task processing device based on platform interaction.
  • this application also provides a task processing device based on platform interaction.
  • the task processing device based on platform interaction includes: a memory, a processor, and a A task processing program based on platform interaction running on the platform, and when the task processing program based on platform interaction is executed by the processor, the steps of the task processing method based on platform interaction as described above are implemented.
  • the present application also provides a computer-readable storage medium, the computer-readable storage medium stores a task processing program based on platform interaction, and the task processing program based on platform interaction is executed by a processor.
  • the present application also provides a computer-readable storage medium, the computer-readable storage medium stores a task processing program based on platform interaction, and the task processing program based on platform interaction is executed by a processor.
  • the interaction between the microservice platform and the external platform is realized through the preset proxy node. Developers do not need to carry out corresponding development on the microservice platform and the external platform, which reduces the development cost and development coupling degree, and improves the external The willingness of platform access to effectively utilize the capabilities of the microservice platform to achieve operational task management.
  • FIG. 1 is a schematic diagram of a device structure of a hardware operating environment involved in a solution of an embodiment of the present application
  • FIG. 2 is a schematic flowchart of a first embodiment of a task processing method based on platform interaction according to this application;
  • FIG. 3 is a schematic diagram of a specific scenario in the first embodiment of a task processing method based on platform interaction according to this application;
  • FIG. 4 is a schematic flowchart of a second embodiment of a task processing method based on platform interaction according to this application;
  • FIG. 5 is a schematic flowchart of a third embodiment of a task processing method based on platform interaction according to this application;
  • FIG. 6 is a schematic diagram of a specific scenario of an embodiment of a task processing system based on platform interaction according to this application;
  • FIG. 7 is a schematic diagram of functional modules of an embodiment of a task processing apparatus based on platform interaction according to this application.
  • FIG. 1 is a schematic diagram of the device structure of the hardware operating environment involved in the solution of the embodiment of the present application.
  • the task processing device based on platform interaction in the embodiment of the present application may be a terminal or a server.
  • the task processing device based on platform interaction may include: a processor 1001, such as a CPU, a network interface 1004, a user interface 1003, and a memory 1005, communication bus 1002.
  • the communication bus 1002 is used to implement connection and communication between these components.
  • the user interface 1003 may include a display screen (Display) and an input unit such as a keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface and a wireless interface.
  • the network interface 1004 may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface).
  • the memory 1005 can be a high-speed RAM memory or a stable memory (non-volatile memory), such as disk storage.
  • the memory 1005 may also be a storage device independent of the aforementioned processor 1001.
  • FIG. 1 does not constitute a limitation on the device, and may include more or fewer components than those shown in the figure, or a combination of certain components, or different component arrangements.
  • the memory 1005 as a computer storage medium may include an operating system, a network communication module, a user interface module, and a task processing program based on platform interaction.
  • the network interface 1004 is mainly used to connect to the back-end server and communicate with the back-end server; the user interface 1003 is mainly used to connect to the client (user side) to communicate with the client; and the processor 1001 can be used to call a task processing program based on platform interaction stored in the memory 1005, and perform operations in the following task processing method based on platform interaction.
  • RPC Remote Procedure Call, remote procedure call
  • RPC is an inter-process communication method
  • RPC allows the program to call another address space (usually on another machine sharing the network) procedures or functions, without the programmer's explicit coding
  • the details of this remote call That is, whether the programmer calls the local or remote, the calling code written is basically the same.
  • the application of such platform interaction methods in distributed systems is extremely wide, but there are still some shortcomings. For example, when the microservice platform is an open source project Linkis system platform, the following types of problems arise:
  • the deployment of the RPC method is more complicated.
  • the RPC method requires the deployment of several basic services, such as service registration and discovery centers, which is not conducive to agile development.
  • the task information corresponding to the operation task is acquired;
  • the operation task is submitted to an external platform through the preset agent node, so that the external platform can process the operation task;
  • the status information of the operation task fed back by the external platform is received, and the status of the operation task is flipped according to the status information until the execution of the operation task is completed.
  • the task processing method in this embodiment is applied to task processing equipment in financial institutions (banking institutions, insurance institutions, securities institutions, etc.) in the financial industry.
  • the task processing equipment is the hardware carrier of the task processing platform.
  • the tasks in this embodiment The processing platform can be set on the microservice platform.
  • the task processing platform in this embodiment can also be used as an intermediate platform to connect the microservice platform and the external platform.
  • the microservice platform involved in this embodiment refers to a big data middleware platform developed by the financial industry.
  • the microservice platform integrates multiple computing storage engines, such as Spark, TiSpark, Hive, Python, and HBase, for external provision Unified REST/WebSocket/JDBC interface, submit data middleware that executes SQL, Pyspark, HiveQL, Scala and other scripts.
  • the microservice platform is the Linkis system platform (The Linkis system platform is based on the microservice architecture and provides financial-level multi-tenant isolation, resource management and control, authority isolation and other enterprise-level features, and supports unified variable, UDF, function, and user resource file management. With high concurrency, high performance, high availability big data job/request full life cycle management capabilities).
  • the external platform involved in this embodiment is a platform with functions other than the microservice platform function.
  • the microservice platform is the Linkis system platform
  • the Linkis system platform supports many internal execution engines, such as spark, hive, python, Hbase, etc.
  • the Linkis system platform does not have the mail sending function, quality inspection function
  • the external platform can be the mail system platform, data quality inspection platform and so on.
  • this embodiment takes the task processing platform set on the microservice platform as an example for description.
  • the agent node of the external platform is set in the microservice platform in advance, and the microservice platform and the microservice platform are implemented through the agent node.
  • the interaction between external platforms specifically, includes:
  • access information corresponding to the external platform access request is obtained, where the access information includes a code for realizing interaction between the microservice platform and the external platform;
  • the micro service platform receives the external platform access request, the micro service platform obtains the access information corresponding to the external platform access request, and the access information contains the code for realizing the interaction between the micro service platform and the external platform;
  • the service platform compiles the code in the access information to form a jar package, that is, the microservice platform compiles the code in the access information into a binary language that can be recognized by the computer, and the microservice platform encapsulates the compiled information to form a jar package.
  • the service platform adds the jar package to the plug-in directory of the microservice platform according to the specified naming rules; the microservice platform starts the microservice to initialize, and generates the proxy node corresponding to the external platform to interact with the platform through the proxy node, that is, the microservice platform
  • the microservice platform When receiving the microservice startup request, query the plug-in directory to load the jar package to form a preset proxy node corresponding to the external platform, so as to provide services through the preset proxy node.
  • the external platform connects to the microservice platform in the form of plug-ins.
  • the external platform only needs to implement the necessary interfaces and place the implemented jar package in the plug-in directory specified by the microservice platform to interact with the microservice platform. ;
  • the external platform access cost is low, and the external platform and the microservice platform are in a low-coupling state.
  • the external platform developers want to access the microservice platform, and there is almost no need to modify the native code of the external platform.
  • the service platform is completely decoupled.
  • the microservice platform is the Linkis system platform, and the external platform wants to interact with the Linkis system platform.
  • the external platform wants to interact with the Linkis system platform.
  • the AppJointEntrance application joint interface
  • the AppJointEntrance microservice in the Linkis system platform is started, it will go to the plugin directory to load the jar package to form AppJoint to provide the service.
  • AppJoint is a top-level abstract interface. AppJoint provides the interface methods needed for the Linkis system platform and external platforms to interact. AppJoint has functions such as submitting execution, querying task status, querying task logs, and killing tasks.
  • An external platform (such as a data quality inspection platform) wants to interact with the microservice platform, and the way of interaction is determined by the external platform itself.
  • the access method of AppJoint in this embodiment has the following advantages: 1. There is no need to perform specific development on the microservice platform and external platform at the same time, 2. The deployment method is simple; Compared with the direct use of HTTP, the access method has the following advantages: unified interfaces; 2. Do not implement strong binding between interfaces and specific services to facilitate horizontal expansion.
  • AppJoint is not only applicable to the Linkis system. For other microservice platforms that wish to access multiple external platforms and obtain the execution capabilities of these external platforms, AppJoint is also a good way. AppJoint can act like a joint. , To connect different platforms, and coordinate different platforms to work, just like a person's elbow joint, connect the person's upper arm and lower arm and coordinate the movement of the two. The introduction of Appjoint allows a microservice system to access a variety of external platforms, and to interact with these external platforms in a unified way. Realize the decoupling between different platforms.
  • the microservice platform can submit the operation task submitted by the user to the external platform for execution, and obtain the information generated by the operation of the operation task on the external platform, so as to realize the management of the operation task, specifically:
  • Fig. 2 is a schematic flowchart of a first embodiment of a task processing method based on platform interaction according to this application. The method includes:
  • Step S10 when an operation task is received, task information corresponding to the operation task is obtained;
  • the microservice platform receives operation tasks, and the triggering method of operation tasks is not specifically limited, that is, operation tasks can be triggered actively, for example, the customer clicks "Business Management" on the terminal to actively trigger the operation task; in addition, the operation task can also be automatic Triggered, for example, the micro-service platform presets the operation task of performing data update every day in the early morning, and the micro-service platform automatically triggers the operation task of data update when it arrives in the early morning.
  • the microservice platform When the microservice platform receives an operation task, the microservice platform obtains task information corresponding to the operation task, where the task information includes task identification and task execution information.
  • Step S20 judging whether to transfer the operation task according to the task information.
  • the task types of the operation tasks in this embodiment are various.
  • the task types include the spark hive and other micro-service task types supported by the micro-service platform, as well as the agent task types that the micro-service platform does not support, such as data quality inspection. Operation task, operation task of mail sending, etc.
  • the microservice platform needs to determine whether to transfer the operation task according to the task information of the operation task.
  • the microservice platform is the Linkis system platform, and the Linkis system platform is set with LinkisGateway.
  • the LinkisGateway recognizes the task identifier and determines whether to forward the operation task.
  • the specified parameters are preset in the LinkisGateway, if the task of the operation task is If the identifier contains the specified parameter, the microservice platform will keep the operation task in itself for execution; if the task identifier of the operation task does not contain the specified parameter, then the operation task will be forwarded by LinkisGateway to the corresponding preset agent node.
  • This embodiment provides a specific implementation method for judging whether to transfer an operation task based on task information, including:
  • Step a1 extract the first task identifier in the task information, and determine the task type corresponding to the first task identifier;
  • Step a2 if the task type corresponding to the first task identifier is a microservice task type, it is determined not to transfer the operation task;
  • Step a3 If the task type corresponding to the first task identifier is an agent task type, it is determined that the operation task is to be transferred.
  • the microservice platform extracts the first task identifier in the task information, and the microservice platform determines the task type corresponding to the first task identifier; that is, the task identifier and task type mapping table is preset in the microservice platform, and the microservice platform queries the mapping table , Obtain the task type corresponding to the first task identifier. If the task type corresponding to the first task identifier is a microservice task type, the microservice platform retains the operation task for execution; if the task type corresponding to the first task identifier is an agent task Type, the micro-service platform submits the operation task to the preset agent node.
  • step S30 if the operation task is to be transferred, the operation task is submitted to an external platform through the preset agent node, so that the external platform can process the operation task.
  • the microservice platform submits the operation task to the external platform through the preset agent node, so that the external platform can process the operation task; in this embodiment, the microservice platform Connect with external platforms, and coordinate the work of the micro-service platform and external platforms.
  • Step S40 Receive state information of the operation task fed back by the external platform, and perform state inversion of the operation task according to the state information until the execution of the operation task is completed.
  • the microservice platform receives the status information of the operation task fed back by the external platform.
  • the status information includes: initialization status, waiting scheduling status, running status, failure status or success status; the microservice platform flips the status of the operation task according to the status information until the operation task The execution is completed to realize the management of operational tasks.
  • the interaction between the microservice platform and the external platform is realized through the preset agent node, and the developer does not need to carry out corresponding development on the microservice platform and the external platform, which reduces the development cost and development coupling degree, and improves the external platform Willingness to access to effectively utilize the capabilities of the microservice platform to achieve operational task management.
  • step S40 in this embodiment it includes: when the microservice platform detects that the execution of the operation task is completed, the microservice platform feeds back the execution result information of the operation task to the user terminal that sends the operation task, and releases the resource of the operation task.
  • the second embodiment of the task processing method based on platform interaction of the present application is proposed.
  • this embodiment is a refinement of step S30 in the first embodiment.
  • This embodiment specifically describes the way to update the status of the operation task in a synchronous manner to realize the management of the operation task, including:
  • Step S31 Receive a second task identifier set by the external platform for the operation task, encapsulate the second task identifier, and generate an acquisition request containing the second task identifier.
  • the preset agent node in the microservice platform receives the second task identifier set by the external platform for the operation task, and the microservice platform encapsulates the second task identifier, and generates an acquisition request containing the second task identifier.
  • Step S32 Send the acquisition request to an external platform through the preset proxy node, so that the external platform locates the operation task according to the second task identifier in the acquisition request, and obtains the corresponding operation task Log or status information.
  • the microservice platform sends the acquisition request carrying the second task identifier to the external platform through the preset agent node, so that the external platform locates the operation task according to the second task identifier in the acquisition request, and the external platform determines the operation task corresponding to the second task identifier ,
  • the external platform obtains the log or status information corresponding to the operation task, and sends the log or status information to the preset agent node of the microservice platform.
  • Step S33 Receive the log or status information corresponding to the acquisition request that the external platform feeds back to the preset agent node, and adjust the status of the operation task according to the log or the status information until the operation task The execution is complete.
  • the microservice platform receives the log or status information corresponding to the acquisition request that the external platform feeds back to the preset agent node, and the microservice platform adjusts the status of the operation task according to the log or status information until the execution of the operation task is completed.
  • the preset agent node in the microservice platform sends the operation task in the form of HTTP request to the external platform, and the external platform obtains the operation task in the manner of HTTP request.
  • the external platform sets the second task flag for the operation task, and sets the second task
  • the mark is fed back to the preset agent node in the microservice platform.
  • the microservice platform encapsulates the second task mark into a request body (for example, Action). Every time the task thread is running in the future, the preset agent node will Carry the above action into the acquisition request to request an external platform. After the external platform receives the acquisition request, it will locate the operation task according to the content in the action, and obtain the log or status information of the operation task.
  • the external platform will return the log to the appjoint.
  • the external platform returns the status information to the appjoint, and the microservice platform adjusts the status of the operation task according to the log or status information until the execution of the operation task is completed.
  • the preset agent node sends operation tasks in the form of HTTP requests, and the task information corresponding to the operation tasks is directly invoked by HTTP, and does not require interface design and specific services to achieve strong binding, which is convenient for external platforms Horizontal expansion.
  • this embodiment is a refinement of step S30 in the first embodiment.
  • This embodiment specifically illustrates the way of performing operation task status update asynchronously to realize operation task management, including:
  • Step S34 Receive the second task identifier of the operation task fed back by the external platform, and generate an asynchronous response instance corresponding to the second task identifier, wherein a listener is set in the asynchronous response instance, and the listener is Set the callback method.
  • the microservice platform receives the second task identifier of the operation task fed back by the external platform, and the microservice platform generates an asynchronous response instance corresponding to the second task identifier, wherein a listener is set in the asynchronous response instance, and a callback method is set in the listener .
  • Step S35 When the asynchronous response instance monitors the trigger event of the operation task corresponding to the second task identifier, execute the callback method and adjust the state of the operation task according to the trigger event until the operation task is executed carry out.
  • the microservice platform monitors the operation task corresponding to the second task identifier through the asynchronous response instance.
  • the microservice platform executes the callback method and adjusts the operation task according to the actual information of the trigger event. Status until the completion of the operation task execution.
  • the external platform will package and encapsulate the data and send it to the microservice platform designated for A restful interface for asynchronous callbacks.
  • the microservice platform will manage the operation task.
  • the microservice platform will find the operation task according to the second task table of the task carried in the restful interface. If the request carries information such as state flip or log, the listener in the corresponding task will call the set callback method.
  • the callback method includes the state reversal of the task in the microservice platform, the subsequent operations after the task reversal (such as persisting to data, etc.), and the writing of the log to the directory managed by the microservice platform.
  • the communication protocol in this embodiment is simple to implement and deploy using HTTP.
  • the listener mode is used to implement the callback of the task when the status information changes.
  • the callback method is performed in the HTTP mode, and a url (url) is set for each operation task.
  • the design can be composed of $ ⁇ prefix prefix ⁇ /$ ⁇ task id ⁇ /callback callback, so that after the external platform calls the url, the microservice platform can directly know the task ID that the external platform wants to update, and then find it through the task ID The operation task, update the task), the external platform only needs to request this url to achieve asynchronous return. After the task is executed by the external system, the external platform returns an asynchronous response and returns the generated information to the microservice platform , To achieve convenient asynchronous communication between the two platforms.
  • microservice platform can offline some external platforms, including:
  • the microservice platform when the microservice platform receives an external platform offline request, the microservice platform obtains the platform identifier corresponding to the external platform offline request; the microservice platform queries its own plug-in catalog, and the microservice platform obtains the jar package corresponding to the platform identifier. Delete the jar package for the microservice platform, and identify the external platform corresponding to the offline platform.
  • the micro-service platform can offline the external platform by deleting the jar package, which realizes the hot-plugging of the external platform. The offline of the external platform will not affect the micro-service platform or interact with the micro-service platform. Other operating platforms.
  • An embodiment of the present application also provides a task processing system based on platform interaction.
  • the task processing device based on platform interaction includes: a microservice platform and an external platform that are communicatively connected.
  • the interaction between the microservice platform and the external platform realizes the following step:
  • the microservice platform When the microservice platform receives the operation task, the microservice platform obtains the task information corresponding to the operation task;
  • the microservice platform judges whether to transfer the operation task according to the task information
  • the microservice platform submits the operation task to an external platform through the preset agent node, so that the external platform can process the operation task;
  • the external platform executes the operation task to generate the log or status information corresponding to the operation task, and the external platform calls the network interface of the microservice platform to feed back the log or the status information;
  • the microservice platform When the microservice platform detects that the network interface is called, the microservice platform obtains the log or the status information fed back by the network interface;
  • the microservice platform performs state inversion of the operation task according to the log or the status information until the execution of the operation task is completed.
  • a user submits a task to the microservice platform.
  • the microservice platform receives an operation task
  • the microservice platform obtains task information corresponding to the operation task.
  • the microservice platform determines the microservice platform based on the task information.
  • the operation task is not supported and needs to be performed with the help of an external platform.
  • the microservice platform submits the operation task to the preset agent node, and the operation task is submitted to the external platform through the preset agent node, so that the external platform can process the operation task.
  • the external platform After the external platform receives the request, the external platform repackages the operation task into a task that it can perform. After the task is generated, the external platform returns a response to the microservice platform. After the default proxy node in the microservice platform receives this response, it will generate an asynchronous response instance, in which a listener will be set, and the callback method will be set in the listener. Once the event that triggers it is monitored, it will be executed. The callback method is used to call the network interface of the microservice platform to feed back the log or status information of the operation task.
  • the microservice platform When the microservice platform detects that the network interface is called, the microservice platform obtains the log or the status information fed back by the network interface; the microservice platform reverses the status of the operation task according to the log or status information until the execution of the operation task is completed.
  • an embodiment of the present application also provides a task processing device based on platform interaction, and the task processing device based on platform interaction includes:
  • the request receiving module 10 is configured to obtain task information corresponding to the operation task when the operation task is received;
  • the transfer judgment module 20 is configured to judge whether to transfer the operation task according to the task information
  • the task forwarding module 30 is configured to, if the operation task is to be transferred, submit the operation task to an external platform through the preset agent node, so that the external platform can process the operation task;
  • the receiving and turning module 40 is configured to receive the state information of the operation task fed back by the external platform, and perform state inversion of the operation task according to the state information until the execution of the operation task is completed.
  • the task processing device based on platform interaction includes:
  • the information acquisition module is used to acquire the access information corresponding to the external platform access request when the external platform access request is received, wherein the access information contains the code for realizing the interaction between the microservice platform and the external platform;
  • the information insertion module is used to compile the code in the access information to form a jar package, and add the jar package to the plug-in directory of the microservice platform;
  • the load generation module is used to query the plug-in directory to load the jar package when receiving the microservice startup request to form a preset proxy node.
  • the transfer judgment module 20 includes:
  • An identification extraction unit configured to extract the first task identification in the task information, and determine the task type corresponding to the first task identification
  • a first determining unit configured to determine not to transfer the operation task if the task type corresponding to the first task identifier is a microservice task type
  • the second determining unit is configured to determine that the operation task is to be transferred if the task type corresponding to the first task identifier is an agent task type.
  • the receiving and turning module 40 includes:
  • a receiving and generating unit configured to receive a second task identifier set by the external platform for the operation task, encapsulate the second task identifier, and generate an acquisition request including the second task identifier;
  • the request sending unit is configured to send the acquisition request to an external platform through the preset proxy node, so that the external platform locates the operation task according to the second task identifier in the acquisition request, and acquires the Log or status information corresponding to the operation task;
  • the receiving adjustment unit is configured to receive the log or status information corresponding to the acquisition request that the external platform feeds back to the preset agent node, and adjust the status of the operation task according to the log or the status information, until all The execution of the operation task is completed.
  • the receiving and turning module 40 includes:
  • the receiving and generating unit is configured to receive the second task identifier of the operation task fed back by the external platform, and generate an asynchronous response instance corresponding to the second task identifier, wherein a listener is set in the asynchronous response instance, and the Set the callback method in the listener;
  • the callback flipping unit is configured to execute the callback method and adjust the state of the operation task according to the trigger event when the asynchronous response instance monitors the trigger event of the operation task corresponding to the second task identifier, until the The operation task is completed.
  • the task processing device based on platform interaction includes:
  • the resource release module is configured to, when the completion of the execution of the operation task is detected, feedback the execution result information of the operation task to the user terminal, and release the resources of the operation task.
  • the task processing device based on platform interaction includes:
  • the offline request module is used to obtain the platform ID corresponding to the offline request of the external platform when the offline request of the external platform is received;
  • the platform offline module is used to query the plug-in directory of the microservice platform, obtain the jar package corresponding to the platform identifier, delete the jar package, and offline the external platform corresponding to the platform identifier.
  • the application also provides a computer-readable storage medium.
  • the computer-readable storage medium of the present application stores a task processing program based on platform interaction, and when the task processing program based on platform interaction is executed by a processor, the steps of the task processing method based on platform interaction as described above are realized.
  • the technical solution of this application essentially or the part that contributes to the existing technology can be embodied in the form of a software product, and the computer software product is stored in a storage medium (such as ROM/RAM) as described above. , Magnetic disks, optical disks), including several instructions to make a terminal device (which can be a mobile phone, a computer, a server, an air conditioner, or a network device, etc.) execute the method described in each embodiment of the present application.
  • a terminal device which can be a mobile phone, a computer, a server, an air conditioner, or a network device, etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

A task processing method, system, apparatus and device based on platform interaction, and a computer readable storage medium, relating to the technical field of financial technology (Fintech). The method comprises: when an operation task is received, obtaining task information corresponding to the operation task (S10); determining, according to the task information, whether the operation task is to be transferred (S20); if the operation task is to be transferred, submitting the operation task to an external platform by means of a preset agent node so as to enable the external platform to process the operation task (S30); and receiving state information, fed back by the external platform, of the operation task, and performing state overturning on the operation task according to the state information till execution of the operation task is finished (S40).

Description

任务处理方法、系统、装置、设备及计算机可读存储介质Task processing method, system, device, equipment and computer readable storage medium
本申请要求于2019年11月13日申请的、申请号为201911110236.X、名称为“任务处理方法、系统、装置、设备及计算机可读存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of the Chinese patent application filed on November 13, 2019, the application number is 201911110236.X, and the name is "task processing methods, systems, devices, equipment, and computer-readable storage media", all of which are Incorporated in this application by reference.
技术领域Technical field
本申请涉及金融科技(Fintech)技术领域,尤其涉及基于平台交互的任务处理方法、系统、装置、设备及计算机可读存储介质。This application relates to the field of financial technology (Fintech) technology, in particular to task processing methods, systems, devices, equipment and computer-readable storage media based on platform interaction.
背景技术Background technique
随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,金融平台交互技术也不例外,但由于金融行业的安全性、实时性要求,也对技术提出的更高的要求。With the development of computer technology, more and more technologies are applied in the financial field. The traditional financial industry is gradually transforming to Fintech. The financial platform interactive technology is no exception, but due to the security and real-time requirements of the financial industry , But also higher requirements for technology.
微服务平台具备高并发、高性能、高可用的大数据作业、请求等操作任务全生命周期管理能力,微服务平台是开源系统平台,可以通过建立微服务平台与外部平台之间连接实现平台交互,以利用微服务平台的能力管理操作任务。当前微服务平台与外部平台之间交互是通过RPC(Remote Procedure Call,远程过程调用)方式,RPC方式需要在微服务平台与外部平台进行相应的开发,开发成本较高,开发的耦合度较高,使得外部平台接入的意愿降低。如何降低微服务平台与外部平台耦合度,提高外部平台接入的意愿,以有效地利用微服务平台的能力实现操作任务管理成为了当前亟待解决的技术问题。The microservice platform has high concurrency, high performance, and high availability of big data operations, requests and other operational tasks full lifecycle management capabilities. The microservice platform is an open source system platform that can realize platform interaction by establishing a connection between the microservice platform and external platforms , To use the capabilities of the microservice platform to manage operational tasks. The interaction between the current microservice platform and external platforms is through RPC (Remote Procedure Call, remote procedure call) method, RPC method requires corresponding development on the microservice platform and the external platform, the development cost is higher, and the development coupling is higher, which reduces the willingness to access the external platform. How to reduce the degree of coupling between the microservice platform and the external platform, increase the willingness to access external platforms, and effectively utilize the capabilities of the microservice platform to achieve operational task management has become a technical problem that needs to be solved urgently.
技术解决方案Technical solutions
本申请的主要目的在于提出一种基于平台交互的任务处理方法、系统、装置、设备及计算机可读存储介质,旨在解决当前微服务平台与外部平台耦合度高,使得外部平台接入的意愿降低,导致不能有效利用微服务平台实现操作任务管理的技术问题。The main purpose of this application is to propose a task processing method, system, device, device, and computer-readable storage medium based on platform interaction, which aims to solve the current high coupling between microservice platforms and external platforms, which makes the willingness of external platforms to access Reduction, leading to the technical problem that the micro-service platform cannot be effectively used to achieve operational task management.
为实现上述目的,本申请提供一种基于平台交互的任务处理方法,所述基于平台交互的任务处理方法包括如下步骤:In order to achieve the above objective, this application provides a task processing method based on platform interaction. The task processing method based on platform interaction includes the following steps:
在接收到操作任务时,获取所述操作任务对应的任务信息;When an operation task is received, the task information corresponding to the operation task is acquired;
根据所述任务信息判断是否要转移所述操作任务;Judging whether to transfer the operation task according to the task information;
若要转移所述操作任务,则通过所述预设代理节点将所述操作任务提交至外部平台,以使外部平台处理所述操作任务;If the operation task is to be transferred, the operation task is submitted to an external platform through the preset agent node, so that the external platform can process the operation task;
接收所述外部平台反馈的所述操作任务的状态信息,根据所述状态信息对所述操作任务进行状态翻转,直至所述操作任务执行完成。The status information of the operation task fed back by the external platform is received, and the status of the operation task is flipped according to the status information until the execution of the operation task is completed.
在一实施例中,所述在接收到操作任务时,获取所述操作任务对应的任务信息的步骤之前,包括:In an embodiment, before the step of obtaining task information corresponding to the operation task when the operation task is received, the method includes:
在接收到外部平台接入请求时,获取外部平台接入请求对应的接入信息,其中,所述接入信息中包含实现微服务平台与外部平台之间交互的代码;When an external platform access request is received, access information corresponding to the external platform access request is obtained, where the access information includes a code for realizing interaction between the microservice platform and the external platform;
将所述接入信息中的代码编译形成jar包,将所述jar包添加至所述微服务平台的插件目录下;Compiling the code in the access information to form a jar package, and adding the jar package to the plug-in directory of the microservice platform;
在接收到微服务启动请求时,查询所述插件目录加载所述jar包,形成预设代理节点。Upon receiving the microservice startup request, query the plug-in directory to load the jar package to form a preset proxy node.
在一实施例中,所述根据所述任务信息判断是否要转移所述操作任务的步骤,包括:In an embodiment, the step of judging whether to transfer the operation task according to the task information includes:
提取所述任务信息中的第一任务标识,确定所述第一任务标识对应的任务类型;Extracting the first task identifier in the task information, and determining the task type corresponding to the first task identifier;
若所述第一任务标识对应的任务类型为微服务任务类型,则判定不要转移所述操作任务;If the task type corresponding to the first task identifier is a microservice task type, it is determined not to transfer the operation task;
若所述第一任务标识对应的任务类型为代理任务类型,则判定要转移所述操作任务。If the task type corresponding to the first task identifier is an agent task type, it is determined that the operation task is to be transferred.
在一实施例中,所述接收所述外部平台反馈的所述操作任务的状态信息,根据所述状态信息对所述操作任务进行状态翻转,直至所述操作任务执行完成的步骤,包括:In an embodiment, the step of receiving the status information of the operation task fed back by the external platform, and flipping the status of the operation task according to the status information until the execution of the operation task is completed includes:
接收所述外部平台为所述操作任务设置的第二任务标识,将所述第二任务标识封装,生成包含所述第二任务标识的获取请求;Receiving a second task identifier set by the external platform for the operation task, encapsulating the second task identifier, and generating an acquisition request including the second task identifier;
通过所述预设代理节点将所述获取请求发送至外部平台,以使所述外部平台根据所述获取请求中的第二任务标识定位所述操作任务,并获取所述操作任务对应的日志或者状态信息;The acquisition request is sent to an external platform through the preset proxy node, so that the external platform locates the operation task according to the second task identifier in the acquisition request, and obtains the log corresponding to the operation task, or status information;
接收所述外部平台反馈至所述预设代理节点的所述获取请求对应的日志或状态信息,根据所述日志或所述状态信息调整所述操作任务的状态,直至所述操作任务执行完成。Receive the log or status information corresponding to the acquisition request that the external platform feeds back to the preset agent node, and adjust the status of the operation task according to the log or the status information until the execution of the operation task is completed.
在一实施例中,所述接收所述外部平台反馈的所述操作任务的状态信息,根据所述状态信息对所述操作任务进行状态翻转,直至所述操作任务执行完成的步骤,包括:In an embodiment, the step of receiving the status information of the operation task fed back by the external platform, and flipping the status of the operation task according to the status information until the execution of the operation task is completed includes:
接收所述外部平台反馈的所述操作任务的第二任务标识,生成所述第二任务标识对应的异步响应实例,其中,所述异步响应实例中设置监听器,所述监听器中设置回调方法;Receive the second task identifier of the operation task fed back by the external platform, and generate an asynchronous response instance corresponding to the second task identifier, wherein a listener is set in the asynchronous response instance, and a callback method is set in the listener ;
在所述异步响应实例监听到所述第二任务标识对应操作任务的触发事件时,执行所述回调方法并按照所述触发事件调整所述操作任务的状态,直至所述操作任务执行完成。When the asynchronous response instance monitors the trigger event of the operation task corresponding to the second task identifier, the callback method is executed and the state of the operation task is adjusted according to the trigger event until the execution of the operation task is completed.
在一实施例中,所述接收所述外部平台反馈的所述操作任务的状态信息,根据所述状态信息对所述操作任务进行状态翻转,直至所述操作任务执行完成的步骤之后,包括:In an embodiment, the step of receiving the status information of the operation task fed back by the external platform, and turning the status of the operation task according to the status information until after the execution of the operation task is completed, includes:
在检测到所述操作任务执行完成时,将所述操作任务的执行结果信息反馈至用户端,并释放所述操作任务的资源。When it is detected that the execution of the operation task is completed, the execution result information of the operation task is fed back to the user terminal, and the resources of the operation task are released.
在一实施例中,所述基于平台交互的任务处理方法,还包括:In an embodiment, the task processing method based on platform interaction further includes:
在接收到外部平台下线请求时,获取外部平台下线请求对应的平台标识;When receiving the offline request of the external platform, obtain the platform ID corresponding to the offline request of the external platform;
查询微服务平台的插件目录,获取所述平台标识对应的jar包,删除所述jar包,并下线所述平台标识对应的外部平台。Query the plug-in directory of the microservice platform, obtain the jar package corresponding to the platform identifier, delete the jar package, and offline the external platform corresponding to the platform identifier.
此外,为实现上述目的,本申请还提供一种基于平台交互的任务处理系统,所述基于平台交互的任务处理系统包括:通信连接的微服务平台和外部平台,所述微服务平台和所述外部平台交互实现以下步骤:In addition, in order to achieve the above objective, the present application also provides a task processing system based on platform interaction. The task processing system based on platform interaction includes: a microservice platform and an external platform connected in communication, the microservice platform and the The external platform interaction implements the following steps:
微服务平台在接收到操作任务时,微服务平台获取所述操作任务对应的任务信息;When the microservice platform receives the operation task, the microservice platform obtains the task information corresponding to the operation task;
微服务平台根据所述任务信息判断是否要转移所述操作任务;The microservice platform judges whether to transfer the operation task according to the task information;
若要转移所述操作任务,微服务平台则通过所述预设代理节点将所述操作任务提交至外部平台,以使外部平台处理所述操作任务;If the operation task is to be transferred, the microservice platform submits the operation task to an external platform through the preset agent node, so that the external platform can process the operation task;
外部平台执行所述操作任务,产生所述操作任务对应的日志或状态信息,外部平台调用所述微服务平台的网络接口反馈所述日志或所述状态信息;The external platform executes the operation task to generate the log or status information corresponding to the operation task, and the external platform calls the network interface of the microservice platform to feed back the log or the status information;
微服务平台在检测到所述网络接口被调用时,微服务平台获取所述网络接口反馈的所述日志或所述状态信息;When the microservice platform detects that the network interface is called, the microservice platform obtains the log or the status information fed back by the network interface;
微服务平台根据所述日志或所述状态信息对所述操作任务进行状态翻转,直至所述操作任务执行完成。The microservice platform performs state inversion of the operation task according to the log or the status information until the execution of the operation task is completed.
此外,为实现上述目的,本申请还提供一种基于平台交互的任务处理装置。In addition, in order to achieve the above objective, the present application also provides a task processing device based on platform interaction.
此外,为实现上述目的,本申请还提供一种基于平台交互的任务处理设备,所述基于平台交互的任务处理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于平台交互的任务处理程序,所述基于平台交互的任务处理程序被所述处理器执行时实现如上所述的基于平台交互的任务处理方法的步骤。In addition, in order to achieve the above objective, this application also provides a task processing device based on platform interaction. The task processing device based on platform interaction includes: a memory, a processor, and a A task processing program based on platform interaction running on the platform, and when the task processing program based on platform interaction is executed by the processor, the steps of the task processing method based on platform interaction as described above are implemented.
此外,为实现上述目的,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于平台交互的任务处理程序,所述基于平台交互的任务处理程序被处理器执行时实现如上所述的基于平台交互的任务处理方法的步骤。In addition, in order to achieve the above object, the present application also provides a computer-readable storage medium, the computer-readable storage medium stores a task processing program based on platform interaction, and the task processing program based on platform interaction is executed by a processor. When realizing the steps of the task processing method based on platform interaction as described above.
本申请实施例中通过预设代理节点实现微服务平台与外部平台之间的交互,开发人员不需要在微服务平台与外部平台进行相应的开发,降低了开发成本和开发的耦合度,提高外部平台接入的意愿,以有效地利用微服务平台的能力实现操作任务管理。In the embodiment of this application, the interaction between the microservice platform and the external platform is realized through the preset proxy node. Developers do not need to carry out corresponding development on the microservice platform and the external platform, which reduces the development cost and development coupling degree, and improves the external The willingness of platform access to effectively utilize the capabilities of the microservice platform to achieve operational task management.
附图说明Description of the drawings
图1是本申请实施例方案涉及的硬件运行环境的设备结构示意图;FIG. 1 is a schematic diagram of a device structure of a hardware operating environment involved in a solution of an embodiment of the present application;
图2为本申请基于平台交互的任务处理方法第一实施例的流程示意图;2 is a schematic flowchart of a first embodiment of a task processing method based on platform interaction according to this application;
图3为本申请基于平台交互的任务处理方法第一实施例中的具体场景示意图;3 is a schematic diagram of a specific scenario in the first embodiment of a task processing method based on platform interaction according to this application;
图4为本申请基于平台交互的任务处理方法第二实施例的流程示意图;4 is a schematic flowchart of a second embodiment of a task processing method based on platform interaction according to this application;
图5为本申请基于平台交互的任务处理方法第三实施例的流程示意图;5 is a schematic flowchart of a third embodiment of a task processing method based on platform interaction according to this application;
图6为本申请基于平台交互的任务处理系统一实施例的具体场景示意图;6 is a schematic diagram of a specific scenario of an embodiment of a task processing system based on platform interaction according to this application;
图7为本申请基于平台交互的任务处理装置一实施例的功能模块示意图。FIG. 7 is a schematic diagram of functional modules of an embodiment of a task processing apparatus based on platform interaction according to this application.
本发明的实施方式Embodiments of the present invention
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。It should be understood that the specific embodiments described here are only used to explain the application, and not used to limit the application.
如图1所示,图1是本申请实施例方案涉及的硬件运行环境的设备结构示意图。As shown in FIG. 1, FIG. 1 is a schematic diagram of the device structure of the hardware operating environment involved in the solution of the embodiment of the present application.
本申请实施例基于平台交互的任务处理设备可以是终端或服务器,如图1所示,该基于平台交互的任务处理设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。The task processing device based on platform interaction in the embodiment of the present application may be a terminal or a server. As shown in FIG. 1, the task processing device based on platform interaction may include: a processor 1001, such as a CPU, a network interface 1004, a user interface 1003, and a memory 1005, communication bus 1002. Among them, the communication bus 1002 is used to implement connection and communication between these components. The user interface 1003 may include a display screen (Display) and an input unit such as a keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface and a wireless interface. The network interface 1004 may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface). The memory 1005 can be a high-speed RAM memory or a stable memory (non-volatile memory), such as disk storage. Optionally, the memory 1005 may also be a storage device independent of the aforementioned processor 1001.
本领域技术人员可以理解,图1中示出的设备结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。Those skilled in the art can understand that the structure of the device shown in FIG. 1 does not constitute a limitation on the device, and may include more or fewer components than those shown in the figure, or a combination of certain components, or different component arrangements.
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及基于平台交互的任务处理程序。As shown in FIG. 1, the memory 1005 as a computer storage medium may include an operating system, a network communication module, a user interface module, and a task processing program based on platform interaction.
在图1所示的设备中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的基于平台交互的任务处理程序,并执行下述基于平台交互的任务处理方法中的操作。In the device shown in Figure 1, the network interface 1004 is mainly used to connect to the back-end server and communicate with the back-end server; the user interface 1003 is mainly used to connect to the client (user side) to communicate with the client; and the processor 1001 can be used to call a task processing program based on platform interaction stored in the memory 1005, and perform operations in the following task processing method based on platform interaction.
现有技术中微服务平台与外部平台交互是使用RPC(Remote Procedure Call,远程过程调用)方式,RPC是一种进程间通信方式,RPC允许程序调用另一个地址空间(通常是共享网络的另一台机器上)的过程或函数,而不用程序员显式编码这个远程调用的细节。即,程序员无论是调用本地的还是远程的,本质上编写的调用代码基本相同。这样的平台交互方式在分布式系统中的应用是极其广泛的,但是仍然有一些不足,例如,微服务平台一个是开源项目Linkis系统平台时,产生的问题有以下类型:In the prior art, the interaction between the microservice platform and the external platform uses RPC (Remote Procedure Call, remote procedure call) method, RPC is an inter-process communication method, RPC allows the program to call another address space (usually on another machine sharing the network) procedures or functions, without the programmer's explicit coding The details of this remote call. That is, whether the programmer calls the local or remote, the calling code written is basically the same. The application of such platform interaction methods in distributed systems is extremely wide, but there are still some shortcomings. For example, when the microservice platform is an open source project Linkis system platform, the following types of problems arise:
1)、当前平台交互RPC方式调用双方都需要在自己的平台进行相应的开发,开发的耦合度较高。如果要为要进行一套RPC的开发,Linkis系统平台与外部平台两边的开发成本较高,外部平台接入的意愿会降低。1) Both parties of the current platform interaction RPC method need to develop correspondingly on their own platforms, and the degree of development coupling is relatively high. If you want to develop a set of RPC, the development cost of the Linkis system platform and the external platform is higher, and the willingness to access the external platform will be reduced.
2)、RPC方式接入方案是嵌入式的,不具有插件开发插拔式的特点。由于使用现有市面上的RPC框架会使linkis系统平台和外部平台引入更多的依赖,不可以保持linkis系统平台和外部平台的代码清洁度。2) The RPC access scheme is embedded and does not have the characteristics of plug-in development. Since the use of the existing RPC framework on the market will cause the linkis system platform and external platforms to introduce more dependencies, the code cleanliness of the linkis system platform and external platforms cannot be maintained.
3)、RPC方式的部署比较复杂,RPC方式需要部署若干基础服务,比如服务注册与发现中心等,不利于敏捷开发。3) The deployment of the RPC method is more complicated. The RPC method requires the deployment of several basic services, such as service registration and discovery centers, which is not conducive to agile development.
基于上述硬件结构和平台交互问题,提出本申请基于平台交互的任务处理方法实施例。Based on the foregoing hardware structure and platform interaction issues, an embodiment of the task processing method based on platform interaction in this application is proposed.
本申请基于平台交互的任务处理方法第一实施例包括:The first embodiment of the task processing method based on platform interaction of this application includes:
在接收到操作任务时,获取所述操作任务对应的任务信息;When an operation task is received, the task information corresponding to the operation task is acquired;
根据所述任务信息判断是否要转移所述操作任务;Judging whether to transfer the operation task according to the task information;
若要转移所述操作任务,则通过所述预设代理节点将所述操作任务提交至外部平台,以使外部平台处理所述操作任务;If the operation task is to be transferred, the operation task is submitted to an external platform through the preset agent node, so that the external platform can process the operation task;
接收所述外部平台反馈的所述操作任务的状态信息,根据所述状态信息对所述操作任务进行状态翻转,直至所述操作任务执行完成。The status information of the operation task fed back by the external platform is received, and the status of the operation task is flipped according to the status information until the execution of the operation task is completed.
本实施例中的任务处理方法应用于金融行业的金融机构(银行机构、保险机构、证券机构等)中的任务处理设备,该任务处理设备是任务处理平台的硬件载体,本实施例中的任务处理平台可以设置在微服务平台上,此外,本实施例中的任务处理平台还可以作为一个中间平台对接微服务平台和外部平台。The task processing method in this embodiment is applied to task processing equipment in financial institutions (banking institutions, insurance institutions, securities institutions, etc.) in the financial industry. The task processing equipment is the hardware carrier of the task processing platform. The tasks in this embodiment The processing platform can be set on the microservice platform. In addition, the task processing platform in this embodiment can also be used as an intermediate platform to connect the microservice platform and the external platform.
本实施例中的涉及的微服务平台是指金融行业开发的大数据中间件平台,微服务平台打通了多个计算存储引擎,如:Spark、TiSpark、Hive、Python和HBase等,用于对外提供统一REST/WebSocket/JDBC接口,提交执行SQL、Pyspark、HiveQL、Scala等脚本的数据中间件。例如,微服务平台为Linkis系统平台(Linkis系统平台是基于微服务架构,提供了金融级多租户隔离、资源管控、权限隔离等企业级特性,支持统一变量、UDF、函数、用户资源文件管理,具备高并发、高性能、高可用的大数据作业/请求全生命周期管理能力)。The microservice platform involved in this embodiment refers to a big data middleware platform developed by the financial industry. The microservice platform integrates multiple computing storage engines, such as Spark, TiSpark, Hive, Python, and HBase, for external provision Unified REST/WebSocket/JDBC interface, submit data middleware that executes SQL, Pyspark, HiveQL, Scala and other scripts. For example, the microservice platform is the Linkis system platform (The Linkis system platform is based on the microservice architecture and provides financial-level multi-tenant isolation, resource management and control, authority isolation and other enterprise-level features, and supports unified variable, UDF, function, and user resource file management. With high concurrency, high performance, high availability big data job/request full life cycle management capabilities).
本实施例中的涉及的外部平台是具有微服务平台功能之外其他功能的平台,例如,微服务平台为Linkis系统平台,Linkis系统平台支持很多内部执行引擎,如spark、hive、python、Hbase等,但是Linkis系统平台不具有邮件发送功能,质量检测功能,则外部平台可以是邮件系统平台,数据质量检测平台等等。The external platform involved in this embodiment is a platform with functions other than the microservice platform function. For example, the microservice platform is the Linkis system platform, and the Linkis system platform supports many internal execution engines, such as spark, hive, python, Hbase, etc. , But the Linkis system platform does not have the mail sending function, quality inspection function, the external platform can be the mail system platform, data quality inspection platform and so on.
为了方便理解,本实施例中以任务处理平台设置在微服务平台上为例进行说明,在本实施例中,预先在微服务平台中设置外部平台的代理节点,通过代理节点实现微服务平台与外部平台之间的交互,具体地,包括:In order to facilitate understanding, this embodiment takes the task processing platform set on the microservice platform as an example for description. In this embodiment, the agent node of the external platform is set in the microservice platform in advance, and the microservice platform and the microservice platform are implemented through the agent node. The interaction between external platforms, specifically, includes:
在接收到外部平台接入请求时,获取外部平台接入请求对应的接入信息,其中,所述接入信息中包含实现微服务平台与外部平台之间交互的代码;When an external platform access request is received, access information corresponding to the external platform access request is obtained, where the access information includes a code for realizing interaction between the microservice platform and the external platform;
将所述接入信息中的代码编译形成jar包,将所述jar包添加至所述微服务平台的插件目录下;Compiling the code in the access information to form a jar package, and adding the jar package to the plug-in directory of the microservice platform;
在接收到微服务启动请求时,查询所述插件目录加载所述jar包,形成预设代理节点。Upon receiving the microservice startup request, query the plug-in directory to load the jar package to form a preset proxy node.
即,本实施例中微服务平台接收外部平台接入请求,微服务平台获取外部平台接入请求对应的接入信息,接入信息中包含实现微服务平台与外部平台之间交互的代码;微服务平台将接入信息中的代码编译形成jar包,即,微服务平台将接入信息中的代码进行编译形成计算机可以识别的二进制语言,微服务平台将编译后信息进行封装形成jar包,微服务平台将jar包按照指定的命名规则添加至微服务平台的插件目录下;微服务平台启动微服务进行初始化,生成外部平台对应的代理节点,以通过代理节点进行平台交互,即,微服务平台在接收到微服务启动请求时,查询插件目录加载jar包,形成外部平台对应的预设代理节点,以通过预设代理节点提供服务。That is, in this embodiment, the micro service platform receives the external platform access request, the micro service platform obtains the access information corresponding to the external platform access request, and the access information contains the code for realizing the interaction between the micro service platform and the external platform; The service platform compiles the code in the access information to form a jar package, that is, the microservice platform compiles the code in the access information into a binary language that can be recognized by the computer, and the microservice platform encapsulates the compiled information to form a jar package. The service platform adds the jar package to the plug-in directory of the microservice platform according to the specified naming rules; the microservice platform starts the microservice to initialize, and generates the proxy node corresponding to the external platform to interact with the platform through the proxy node, that is, the microservice platform When receiving the microservice startup request, query the plug-in directory to load the jar package to form a preset proxy node corresponding to the external platform, so as to provide services through the preset proxy node.
本实施例中外部平台的接入微服务平台采用插件的方式,外部平台只需要实现必要的接口,并将实现的jar包放置到微服务平台指定的插件目录,就可以与微服务平台实现交互;本实施例中外部平台接入成本低,外部平台与微服务平台是低耦合的状态,外部平台开发者想要接入微服务平台,几乎不需要对外部平台的原生代码进行修改,与微服务平台完全解耦。In this embodiment, the external platform connects to the microservice platform in the form of plug-ins. The external platform only needs to implement the necessary interfaces and place the implemented jar package in the plug-in directory specified by the microservice platform to interact with the microservice platform. ; In this embodiment, the external platform access cost is low, and the external platform and the microservice platform are in a low-coupling state. The external platform developers want to access the microservice platform, and there is almost no need to modify the native code of the external platform. The service platform is completely decoupled.
例如,微服务平台为Linkis系统平台,外部平台希望与Linkis系统平台进行交互,首先将实现交互的代码编译打包成jar包之后,按照命名规范放置到Linkis系统平台中AppJointEntrance(应用关节接口)的插件目录下面,Linkis系统平台中AppJointEntrance微服务启动之后,会去插件目录下面加载jar包形成AppJoint以提供服务。For example, the microservice platform is the Linkis system platform, and the external platform wants to interact with the Linkis system platform. First, after compiling and packaging the interactive code into a jar package, it is placed in the AppJointEntrance (application joint interface) plug-in of the Linkis system platform according to the naming convention. Under the directory, after the AppJointEntrance microservice in the Linkis system platform is started, it will go to the plugin directory to load the jar package to form AppJoint to provide the service.
可以理解的是,AppJoint是一个顶层抽象接口,AppJoint提供了Linkis系统平台和外部平台进行交互所需要的接口方法,AppJoint具有提交执行、查询任务状态、查询任务日志以及杀死任务等功能。一个外部平台(如数据质量检测平台)希望和微服务平台进行交互执行,交互实现的方式由外部平台的自己决定。It is understandable that AppJoint is a top-level abstract interface. AppJoint provides the interface methods needed for the Linkis system platform and external platforms to interact. AppJoint has functions such as submitting execution, querying task status, querying task logs, and killing tasks. An external platform (such as a data quality inspection platform) wants to interact with the microservice platform, and the way of interaction is determined by the external platform itself.
本实施例中AppJoint的接入方式与RPC方式相比,具有以下优点:1.不有需要同时对微服务平台和外部平台进行特定的开发,2、部署方式简单;本实施例在AppJoint的接入方式与直接采用HTTP的方式相比,具有以下优点:接口统一;2、不要将接口与具体业务实现强绑定,方便横向扩展。Compared with the RPC method, the access method of AppJoint in this embodiment has the following advantages: 1. There is no need to perform specific development on the microservice platform and external platform at the same time, 2. The deployment method is simple; Compared with the direct use of HTTP, the access method has the following advantages: unified interfaces; 2. Do not implement strong binding between interfaces and specific services to facilitate horizontal expansion.
AppJoint的理念不仅适用于Linkis系统,对于另外的希望接入多个外部平台,并获取这些外部平台执行能力的其他微服务平台而言,AppJoint也是一种很好的方式,AppJoint能够像一个关节一样,将不同平台进行连接,并协调不同平台进行工作,就像人的肘部关节一样连接人的上臂和下臂并协调两者进行运动。Appjoint的引入可以让一个微服务系统能够接入各式各样的外部平台,并能够以一种统一的方式与这些外部平台进行交互执行。实现了不同平台之间的解耦合。The concept of AppJoint is not only applicable to the Linkis system. For other microservice platforms that wish to access multiple external platforms and obtain the execution capabilities of these external platforms, AppJoint is also a good way. AppJoint can act like a joint. , To connect different platforms, and coordinate different platforms to work, just like a person's elbow joint, connect the person's upper arm and lower arm and coordinate the movement of the two. The introduction of Appjoint allows a microservice system to access a variety of external platforms, and to interact with these external platforms in a unified way. Realize the decoupling between different platforms.
进一步,在建立预设代理节点之后,微服务平台可以将用户提交的操作任务提交给外部平台执行,并获取操作任务在外部平台运行产生的信息,实现操作任务的管理,具体地:Further, after the establishment of the preset agent node, the microservice platform can submit the operation task submitted by the user to the external platform for execution, and obtain the information generated by the operation of the operation task on the external platform, so as to realize the management of the operation task, specifically:
参照图2,图2为本申请基于平台交互的任务处理方法第一实施例的流程示意图,所述方法包括:Referring to Fig. 2, Fig. 2 is a schematic flowchart of a first embodiment of a task processing method based on platform interaction according to this application. The method includes:
步骤S10,在接收到操作任务时,获取所述操作任务对应的任务信息;Step S10, when an operation task is received, task information corresponding to the operation task is obtained;
微服务平台接收操作任务,操作任务的触发方式不作具体限定,即,操作任务可以是主动触发的,例如,客户在终端上点击“业务办理”主动触发操作任务;此外,操作任务还可以是自动触发的,例如,微服务平台中预设每日凌晨执行数据更新的操作任务,微服务平台在到达凌晨时,自动触发数据更新的操作任务。The microservice platform receives operation tasks, and the triggering method of operation tasks is not specifically limited, that is, operation tasks can be triggered actively, for example, the customer clicks "Business Management" on the terminal to actively trigger the operation task; in addition, the operation task can also be automatic Triggered, for example, the micro-service platform presets the operation task of performing data update every day in the early morning, and the micro-service platform automatically triggers the operation task of data update when it arrives in the early morning.
微服务平台在接收到操作任务时,微服务平台获取操作任务对应的任务信息,其中,任务信息包括任务标识和任务执行信息等。When the microservice platform receives an operation task, the microservice platform obtains task information corresponding to the operation task, where the task information includes task identification and task execution information.
步骤S20,根据所述任务信息判断是否要转移所述操作任务。Step S20, judging whether to transfer the operation task according to the task information.
本实施例中操作任务的任务类型是多种多样的,比如任务类型包括微服务平台支持的spark hive等微服务任务类型,同时也包括微服务平台不支持的代理任务类型,比如数据质量检测的操作任务、邮件发送的操作任务等。微服务平台需要根据操作任务的任务信息确定是否要转移操作任务。The task types of the operation tasks in this embodiment are various. For example, the task types include the spark hive and other micro-service task types supported by the micro-service platform, as well as the agent task types that the micro-service platform does not support, such as data quality inspection. Operation task, operation task of mail sending, etc. The microservice platform needs to determine whether to transfer the operation task according to the task information of the operation task.
例如,结合图3,微服务平台为Linkis系统平台,Linkis系统平台设置有LinkisGateway,LinkisGateway中识别任务标识,确定是否将操作任务进行转发,例如,LinkisGateway中预先设定指定参数,若操作任务的任务标识中包含指定参数,则微服务平台将操作任务保留在自身进行执行;若操作任务的任务标识中不包含指定参数,那么操作任务就会被LinkisGateway转发到对应的预设代理节点。For example, in conjunction with Figure 3, the microservice platform is the Linkis system platform, and the Linkis system platform is set with LinkisGateway. The LinkisGateway recognizes the task identifier and determines whether to forward the operation task. For example, the specified parameters are preset in the LinkisGateway, if the task of the operation task is If the identifier contains the specified parameter, the microservice platform will keep the operation task in itself for execution; if the task identifier of the operation task does not contain the specified parameter, then the operation task will be forwarded by LinkisGateway to the corresponding preset agent node.
本实施例中给出了一种根据任务信息判断是否要转移操作任务的具体实现方式,包括:This embodiment provides a specific implementation method for judging whether to transfer an operation task based on task information, including:
步骤a1,提取所述任务信息中的第一任务标识,确定所述第一任务标识对应的任务类型;Step a1, extract the first task identifier in the task information, and determine the task type corresponding to the first task identifier;
步骤a2,若所述第一任务标识对应的任务类型为微服务任务类型,则判定不要转移所述操作任务;Step a2, if the task type corresponding to the first task identifier is a microservice task type, it is determined not to transfer the operation task;
步骤a3,若所述第一任务标识对应的任务类型为代理任务类型,则判定要转移所述操作任务。Step a3: If the task type corresponding to the first task identifier is an agent task type, it is determined that the operation task is to be transferred.
即,微服务平台提取任务信息中的第一任务标识,微服务平台确定第一任务标识对应的任务类型;即,微服务平台中预设任务标识与任务类型映射表,微服务平台查询映射表,获取第一任务标识对应的任务类型,若第一任务标识对应的任务类型为微服务任务类型,微服务平台将操作任务保留在自身进行执行;若第一任务标识对应的任务类型为代理任务类型,微服务平台则将操作任务提交至预设代理节点。That is, the microservice platform extracts the first task identifier in the task information, and the microservice platform determines the task type corresponding to the first task identifier; that is, the task identifier and task type mapping table is preset in the microservice platform, and the microservice platform queries the mapping table , Obtain the task type corresponding to the first task identifier. If the task type corresponding to the first task identifier is a microservice task type, the microservice platform retains the operation task for execution; if the task type corresponding to the first task identifier is an agent task Type, the micro-service platform submits the operation task to the preset agent node.
步骤S30,若要转移所述操作任务,则通过所述预设代理节点将所述操作任务提交至外部平台,以使外部平台处理所述操作任务。In step S30, if the operation task is to be transferred, the operation task is submitted to an external platform through the preset agent node, so that the external platform can process the operation task.
若将操作任务提交至预设代理节点,微服务平台则通过预设代理节点将操作任务提交至外部平台,以使外部平台处理操作任务;本实施例中通过预设代理节点,将微服务平台和外部平台进行连接,并协调微服务平台和外部平台进行工作。If the operation task is submitted to the preset agent node, the microservice platform submits the operation task to the external platform through the preset agent node, so that the external platform can process the operation task; in this embodiment, the microservice platform Connect with external platforms, and coordinate the work of the micro-service platform and external platforms.
步骤S40,接收所述外部平台反馈的所述操作任务的状态信息,根据所述状态信息对所述操作任务进行状态翻转,直至所述操作任务执行完成。Step S40: Receive state information of the operation task fed back by the external platform, and perform state inversion of the operation task according to the state information until the execution of the operation task is completed.
微服务平台接收外部平台反馈的操作任务的状态信息,状态信息包括:初始化状态、等待调度状态、运行状态、失败状态或成功状态;微服务平台根据状态信息对操作任务进行状态翻转,直至操作任务执行完成,以实现操作任务的管理。The microservice platform receives the status information of the operation task fed back by the external platform. The status information includes: initialization status, waiting scheduling status, running status, failure status or success status; the microservice platform flips the status of the operation task according to the status information until the operation task The execution is completed to realize the management of operational tasks.
本实施例中通过预设代理节点实现微服务平台与外部平台之间的交互,开发人员不需要在微服务平台与外部平台进行相应的开发,降低了开发成本和开发的耦合度,提高外部平台接入的意愿,以有效地利用微服务平台的能力实现操作任务管理。In this embodiment, the interaction between the microservice platform and the external platform is realized through the preset agent node, and the developer does not need to carry out corresponding development on the microservice platform and the external platform, which reduces the development cost and development coupling degree, and improves the external platform Willingness to access to effectively utilize the capabilities of the microservice platform to achieve operational task management.
在本实施例步骤S40之后包括:微服务平台在检测到操作任务执行完成时,微服务平台将操作任务的执行结果信息反馈至发送操作任务的用户端,并释放操作任务的资源。After step S40 in this embodiment, it includes: when the microservice platform detects that the execution of the operation task is completed, the microservice platform feeds back the execution result information of the operation task to the user terminal that sends the operation task, and releases the resource of the operation task.
进一步地,基于本申请基于平台交互的任务处理方法第一实施例,提出本申请基于平台交互的任务处理方法第二实施例。Further, based on the first embodiment of the task processing method based on platform interaction of the present application, the second embodiment of the task processing method based on platform interaction of the present application is proposed.
参照图4,本实施例是第一实施例中步骤S30的细化,本实施例中具体说明了通过同步方式进行操作任务状态更新,实现操作任务管理的方式,包括:Referring to Figure 4, this embodiment is a refinement of step S30 in the first embodiment. This embodiment specifically describes the way to update the status of the operation task in a synchronous manner to realize the management of the operation task, including:
步骤S31,接收所述外部平台为所述操作任务设置的第二任务标识,将所述第二任务标识封装,生成包含所述第二任务标识的获取请求。Step S31: Receive a second task identifier set by the external platform for the operation task, encapsulate the second task identifier, and generate an acquisition request containing the second task identifier.
微服务平台中的预设代理节点接收外部平台为操作任务设置的第二任务标识,微服务平台将第二任务标识封装,生成包含第二任务标识的获取请求。The preset agent node in the microservice platform receives the second task identifier set by the external platform for the operation task, and the microservice platform encapsulates the second task identifier, and generates an acquisition request containing the second task identifier.
步骤S32,通过所述预设代理节点将所述获取请求发送至外部平台,以使所述外部平台根据所述获取请求中的第二任务标识定位所述操作任务,并获取所述操作任务对应的日志或者状态信息。Step S32: Send the acquisition request to an external platform through the preset proxy node, so that the external platform locates the operation task according to the second task identifier in the acquisition request, and obtains the corresponding operation task Log or status information.
微服务平台通过预设代理节点将携带第二任务标识的获取请求发送至外部平台,以使外部平台根据获取请求中的第二任务标识定位操作任务,外部平台确定第二任务标识对应的操作任务,外部平台获取该操作任务对应的日志或者状态信息,并将日志或者状态信息发送至微服务平台的预设代理节点。The microservice platform sends the acquisition request carrying the second task identifier to the external platform through the preset agent node, so that the external platform locates the operation task according to the second task identifier in the acquisition request, and the external platform determines the operation task corresponding to the second task identifier , The external platform obtains the log or status information corresponding to the operation task, and sends the log or status information to the preset agent node of the microservice platform.
步骤S33,接收所述外部平台反馈至所述预设代理节点的所述获取请求对应的日志或状态信息,根据所述日志或所述状态信息调整所述操作任务的状态,直至所述操作任务执行完成。Step S33: Receive the log or status information corresponding to the acquisition request that the external platform feeds back to the preset agent node, and adjust the status of the operation task according to the log or the status information until the operation task The execution is complete.
微服务平台接收外部平台反馈至预设代理节点的获取请求对应的日志或状态信息,微服务平台根据日志或状态信息调整操作任务的状态,直至操作任务执行完成。The microservice platform receives the log or status information corresponding to the acquisition request that the external platform feeds back to the preset agent node, and the microservice platform adjusts the status of the operation task according to the log or status information until the execution of the operation task is completed.
即,微服务平台中预设代理节点以HTTP请求的方式发送操作任务发送至外部平台,外部平台获取HTTP请求的方式的操作任务,外部平台为操作任务设置第二任务标记,并将第二任务标记反馈至微服务平台中的预设代理节点,微服务平台将该第二任务标记封装成一个请求体(例如,Action),在以后每次该任务线程在运行的时候,预设代理节点会将上述的action携带到获取请求中,去请求外部平台。外部平台收到获取请求之后,会根据action中的内容定位到该操作任务,并获取操作任务的日志或状态信息,如果获取到操作任务的日志,外部平台就会将日志返回给appjoint,如果获取操作任务的状态信息,外部平台则将状态信息返回给appjoint,微服务平台根据日志或状态信息调整操作任务的状态,直至操作任务执行完成。That is, the preset agent node in the microservice platform sends the operation task in the form of HTTP request to the external platform, and the external platform obtains the operation task in the manner of HTTP request. The external platform sets the second task flag for the operation task, and sets the second task The mark is fed back to the preset agent node in the microservice platform. The microservice platform encapsulates the second task mark into a request body (for example, Action). Every time the task thread is running in the future, the preset agent node will Carry the above action into the acquisition request to request an external platform. After the external platform receives the acquisition request, it will locate the operation task according to the content in the action, and obtain the log or status information of the operation task. If the log or status information of the operation task is obtained, the external platform will return the log to the appjoint. For the status information of the operation task, the external platform returns the status information to the appjoint, and the microservice platform adjusts the status of the operation task according to the log or status information until the execution of the operation task is completed.
本实施例中预设代理节点以HTTP请求的方式发送操作任务,及操作任务对应任务信息,以直接采用HTTP的方式调用相比,不需要接口的设计与具体业务实现强绑定,方便外部平台横向扩展。In this embodiment, the preset agent node sends operation tasks in the form of HTTP requests, and the task information corresponding to the operation tasks is directly invoked by HTTP, and does not require interface design and specific services to achieve strong binding, which is convenient for external platforms Horizontal expansion.
进一步地,基于本申请基于平台交互的任务处理方法上述实施例,提出本申请基于平台交互的任务处理方法第三实施例。Further, based on the foregoing embodiments of the task processing method based on platform interaction of the present application, a third embodiment of the task processing method based on platform interaction of the present application is proposed.
参照图5,本实施例是第一实施例中步骤S30的细化,本实施例中具体说明了通过异步方式进行操作任务状态更新,实现操作任务管理的方式,包括:Referring to Figure 5, this embodiment is a refinement of step S30 in the first embodiment. This embodiment specifically illustrates the way of performing operation task status update asynchronously to realize operation task management, including:
步骤S34,接收所述外部平台反馈的所述操作任务的第二任务标识,生成所述第二任务标识对应的异步响应实例,其中,所述异步响应实例中设置监听器,所述监听器中设置回调方法。Step S34: Receive the second task identifier of the operation task fed back by the external platform, and generate an asynchronous response instance corresponding to the second task identifier, wherein a listener is set in the asynchronous response instance, and the listener is Set the callback method.
微服务平台接收所述外部平台反馈的操作任务的第二任务标识,微服务平台生成第二任务标识对应的异步响应实例,其中,异步响应实例中设置监听器,所述监听器中设置回调方法。The microservice platform receives the second task identifier of the operation task fed back by the external platform, and the microservice platform generates an asynchronous response instance corresponding to the second task identifier, wherein a listener is set in the asynchronous response instance, and a callback method is set in the listener .
步骤S35,在所述异步响应实例监听到所述第二任务标识对应操作任务的触发事件时,执行所述回调方法并按照所述触发事件调整所述操作任务的状态,直至所述操作任务执行完成。Step S35: When the asynchronous response instance monitors the trigger event of the operation task corresponding to the second task identifier, execute the callback method and adjust the state of the operation task according to the trigger event until the operation task is executed carry out.
微服务平台通过异步响应实例对第二任务标识对应操作任务进行监听,在监听到第二任务标识对应操作任务的触发事件时,微服务平台执行回调方法并按照触发事件的实际信息调整操作任务的状态,直至操作任务执行完成。The microservice platform monitors the operation task corresponding to the second task identifier through the asynchronous response instance. When the trigger event of the operation task corresponding to the second task identifier is monitored, the microservice platform executes the callback method and adjusts the operation task according to the actual information of the trigger event. Status until the completion of the operation task execution.
即,操作任务在外部平台执行时,会有任务状态的翻转,也会有任务日志的产生,一旦有这些任务信息的产生,外部平台就把这些数据打包封装发送到微服务平台指定的用于异步回调的restful接口。该restful接口被调用后,微服务平台会对该操作任务进行管理。微服务平台会根据restful接口中所带的任务的第二任务表,找到操作任务,如果请求中携带了状态翻转或日志等信息,对应的任务中的监听器就会调用设置好的回调方法,回调方法包括微服务平台中任务的状态翻转、任务翻转之后的后续操作(例如持久化到数据等)、以及日志写入到微服务平台管理的目录中。That is, when an operation task is executed on an external platform, there will be task status flips, and task logs will also be generated. Once the task information is generated, the external platform will package and encapsulate the data and send it to the microservice platform designated for A restful interface for asynchronous callbacks. After the restful interface is called, the microservice platform will manage the operation task. The microservice platform will find the operation task according to the second task table of the task carried in the restful interface. If the request carries information such as state flip or log, the listener in the corresponding task will call the set callback method. The callback method includes the state reversal of the task in the microservice platform, the subsequent operations after the task reversal (such as persisting to data, etc.), and the writing of the log to the directory managed by the microservice platform.
本实施例中通信协议采用HTTP实现和部署简单,同时使用监听器方式实现了任务在状态信息改变时的回调,回调方式采用HTTP的方式的进行的,为每一个操作任务设定一个url(url的设计可以由${prefix前缀}/${任务id}/callback回调构成,这样外部平台进行调用url之后,微服务平台就可以直接知道外部平台想要更新的任务标识,然后通过任务标识,找到该操作任务,对该任务进行更新),外部平台只需要请求这个url就可以实现异步返回,任务在外部系统执行之后,外部平台返回一个异步的响应,并将产生的信息返回给被微服务平台,实现了两个平台之间便捷地异步通信。The communication protocol in this embodiment is simple to implement and deploy using HTTP. At the same time, the listener mode is used to implement the callback of the task when the status information changes. The callback method is performed in the HTTP mode, and a url (url) is set for each operation task. The design can be composed of ${prefix prefix}/${task id}/callback callback, so that after the external platform calls the url, the microservice platform can directly know the task ID that the external platform wants to update, and then find it through the task ID The operation task, update the task), the external platform only needs to request this url to achieve asynchronous return. After the task is executed by the external system, the external platform returns an asynchronous response and returns the generated information to the microservice platform , To achieve convenient asynchronous communication between the two platforms.
进一步地,基于本申请基于平台交互的任务处理方法的上述实施例,提出本申请基于平台交互的任务处理方法第四实施例。Further, based on the foregoing embodiment of the task processing method based on platform interaction of the present application, a fourth embodiment of the task processing method based on platform interaction of the present application is proposed.
本实施例中可以与其他任意一个实施例进行结合,本实施例中微服务平台可以下线一些外部平台,包括:This embodiment can be combined with any of the other embodiments. In this embodiment, the microservice platform can offline some external platforms, including:
在接收到外部平台下线请求时,获取外部平台下线请求对应的平台标识;When receiving the offline request of the external platform, obtain the platform ID corresponding to the offline request of the external platform;
查询微服务平台的插件目录,获取所述平台标识对应的jar包,删除所述jar包,并下线所述平台标识对应的外部平台。Query the plug-in directory of the microservice platform, obtain the jar package corresponding to the platform identifier, delete the jar package, and offline the external platform corresponding to the platform identifier.
本实施例中微服务平台接收到外部平台下线请求时,微服务平台获取外部平台下线请求对应的平台标识;微服务平台查询自身的插件目录,微服务平台获取平台标识对应的jar包,微服务平台删除jar包,以下线平台标识对应的外部平台。本实施例中微服务平台可以通过删除jar包的方式进行外部平台的下线,实现了外部平台的热插拔,外部平台下线也不会影响到微服务平台,或者与微服务平台交互的其他操作平台。In this embodiment, when the microservice platform receives an external platform offline request, the microservice platform obtains the platform identifier corresponding to the external platform offline request; the microservice platform queries its own plug-in catalog, and the microservice platform obtains the jar package corresponding to the platform identifier. Delete the jar package for the microservice platform, and identify the external platform corresponding to the offline platform. In this embodiment, the micro-service platform can offline the external platform by deleting the jar package, which realizes the hot-plugging of the external platform. The offline of the external platform will not affect the micro-service platform or interact with the micro-service platform. Other operating platforms.
本申请实施例还提供一种基于平台交互的任务处理系统,所述基于平台交互的任务处理装置包括:通信连接的微服务平台和外部平台,所述微服务平台和所述外部平台交互实现以下步骤:An embodiment of the present application also provides a task processing system based on platform interaction. The task processing device based on platform interaction includes: a microservice platform and an external platform that are communicatively connected. The interaction between the microservice platform and the external platform realizes the following step:
微服务平台在接收到操作任务时,微服务平台获取所述操作任务对应的任务信息;When the microservice platform receives the operation task, the microservice platform obtains the task information corresponding to the operation task;
微服务平台根据所述任务信息判断是否要转移所述操作任务;The microservice platform judges whether to transfer the operation task according to the task information;
若要转移所述操作任务,微服务平台则通过所述预设代理节点将所述操作任务提交至外部平台,以使外部平台处理所述操作任务;If the operation task is to be transferred, the microservice platform submits the operation task to an external platform through the preset agent node, so that the external platform can process the operation task;
外部平台执行所述操作任务,产生所述操作任务对应的日志或状态信息,外部平台调用所述微服务平台的网络接口反馈所述日志或所述状态信息;The external platform executes the operation task to generate the log or status information corresponding to the operation task, and the external platform calls the network interface of the microservice platform to feed back the log or the status information;
微服务平台在检测到所述网络接口被调用时,微服务平台获取所述网络接口反馈的所述日志或所述状态信息;When the microservice platform detects that the network interface is called, the microservice platform obtains the log or the status information fed back by the network interface;
微服务平台根据所述日志或所述状态信息对所述操作任务进行状态翻转,直至所述操作任务执行完成。The microservice platform performs state inversion of the operation task according to the log or the status information until the execution of the operation task is completed.
参照图6,本实施例中用户提交任务到微服务平台,微服务平台在接收到操作任务时,微服务平台获取所述操作任务对应的任务信息,微服务平台根据任务信息,确定微服务平台不支持执行该操作任务,需要借助外部平台进行执行,微服务平台将操作任务提交至预设代理节点,通过预设代理节点将操作任务提交至外部平台,以使外部平台处理操作任务。6, in this embodiment, a user submits a task to the microservice platform. When the microservice platform receives an operation task, the microservice platform obtains task information corresponding to the operation task. The microservice platform determines the microservice platform based on the task information. The operation task is not supported and needs to be performed with the help of an external platform. The microservice platform submits the operation task to the preset agent node, and the operation task is submitted to the external platform through the preset agent node, so that the external platform can process the operation task.
外部平台接收到请求之后,外部平台会将操作任务重新封装成一个它本身能执行的任务。生成任务之后,外部平台就返回响应给微服务平台。微服务平台中的预设代理节点收到这个响应之后,会生成一个异步的响应实例,该实例中会设置一个监听器,监听器中设置了回调方法,一旦监听到触发它的事件,就执行该回调方法,以调用微服务平台的网络接口反馈操作任务的日志或状态信息。After the external platform receives the request, the external platform repackages the operation task into a task that it can perform. After the task is generated, the external platform returns a response to the microservice platform. After the default proxy node in the microservice platform receives this response, it will generate an asynchronous response instance, in which a listener will be set, and the callback method will be set in the listener. Once the event that triggers it is monitored, it will be executed. The callback method is used to call the network interface of the microservice platform to feed back the log or status information of the operation task.
微服务平台在检测到网络接口被调用时,微服务平台获取网络接口反馈的日志或所述状态信息;微服务平台根据日志或状态信息对操作任务进行状态翻转,直至操作任务执行完成。When the microservice platform detects that the network interface is called, the microservice platform obtains the log or the status information fed back by the network interface; the microservice platform reverses the status of the operation task according to the log or status information until the execution of the operation task is completed.
上述平台交互的任务处理系统所执行的方法可参照本申请基于平台交互的任务处理方法各个实施例,此处不再赘述。For the method executed by the task processing system based on platform interaction, please refer to the various embodiments of the task processing method based on platform interaction in this application, which will not be repeated here.
参照图7,本申请实施例还提供一种基于平台交互的任务处理装置,所述基于平台交互的任务处理装置包括:Referring to FIG. 7, an embodiment of the present application also provides a task processing device based on platform interaction, and the task processing device based on platform interaction includes:
请求接收模块10,用于在接收到操作任务时,获取所述操作任务对应的任务信息;The request receiving module 10 is configured to obtain task information corresponding to the operation task when the operation task is received;
转移判断模块20,用于根据所述任务信息判断是否要转移所述操作任务;The transfer judgment module 20 is configured to judge whether to transfer the operation task according to the task information;
任务转发模块30,用于若要转移所述操作任务,则通过所述预设代理节点将所述操作任务提交至外部平台,以使外部平台处理所述操作任务;The task forwarding module 30 is configured to, if the operation task is to be transferred, submit the operation task to an external platform through the preset agent node, so that the external platform can process the operation task;
接收翻转模块40,用于接收所述外部平台反馈的所述操作任务的状态信息,根据所述状态信息对所述操作任务进行状态翻转,直至所述操作任务执行完成。The receiving and turning module 40 is configured to receive the state information of the operation task fed back by the external platform, and perform state inversion of the operation task according to the state information until the execution of the operation task is completed.
在一实施例中,所述基于平台交互的任务处理装置,包括:In an embodiment, the task processing device based on platform interaction includes:
信息获取模块,用于在接收到外部平台接入请求时,获取外部平台接入请求对应的接入信息,其中,所述接入信息中包含实现微服务平台与外部平台之间交互的代码;The information acquisition module is used to acquire the access information corresponding to the external platform access request when the external platform access request is received, wherein the access information contains the code for realizing the interaction between the microservice platform and the external platform;
信息插入模块,用于将所述接入信息中的代码编译形成jar包,将所述jar包添加至所述微服务平台的插件目录下;The information insertion module is used to compile the code in the access information to form a jar package, and add the jar package to the plug-in directory of the microservice platform;
加载生成模块,用于在接收到微服务启动请求时,查询所述插件目录加载所述jar包,形成预设代理节点。The load generation module is used to query the plug-in directory to load the jar package when receiving the microservice startup request to form a preset proxy node.
在一实施例中,所述转移判断模块20,包括:In an embodiment, the transfer judgment module 20 includes:
标识提取单元,用于提取所述任务信息中的第一任务标识,确定所述第一任务标识对应的任务类型;An identification extraction unit, configured to extract the first task identification in the task information, and determine the task type corresponding to the first task identification;
第一判定单元,用于若所述第一任务标识对应的任务类型为微服务任务类型,则判定不要转移所述操作任务;A first determining unit, configured to determine not to transfer the operation task if the task type corresponding to the first task identifier is a microservice task type;
第二判定单元,用于若所述第一任务标识对应的任务类型为代理任务类型,则判定要转移所述操作任务。The second determining unit is configured to determine that the operation task is to be transferred if the task type corresponding to the first task identifier is an agent task type.
在一实施例中,所述接收翻转模块40,包括:In an embodiment, the receiving and turning module 40 includes:
接收生成单元,用于接收所述外部平台为所述操作任务设置的第二任务标识,将所述第二任务标识封装,生成包含所述第二任务标识的获取请求;A receiving and generating unit, configured to receive a second task identifier set by the external platform for the operation task, encapsulate the second task identifier, and generate an acquisition request including the second task identifier;
请求发送单元,用于通过所述预设代理节点将所述获取请求发送至外部平台,以使所述外部平台根据所述获取请求中的第二任务标识定位所述操作任务,并获取所述操作任务对应的日志或者状态信息;The request sending unit is configured to send the acquisition request to an external platform through the preset proxy node, so that the external platform locates the operation task according to the second task identifier in the acquisition request, and acquires the Log or status information corresponding to the operation task;
接收调整单元,用于接收所述外部平台反馈至所述预设代理节点的所述获取请求对应的日志或状态信息,根据所述日志或所述状态信息调整所述操作任务的状态,直至所述操作任务执行完成。The receiving adjustment unit is configured to receive the log or status information corresponding to the acquisition request that the external platform feeds back to the preset agent node, and adjust the status of the operation task according to the log or the status information, until all The execution of the operation task is completed.
在一实施例中,所述接收翻转模块40,包括:In an embodiment, the receiving and turning module 40 includes:
接收生成单元,用于接收所述外部平台反馈的所述操作任务的第二任务标识,生成所述第二任务标识对应的异步响应实例,其中,所述异步响应实例中设置监听器,所述监听器中设置回调方法;The receiving and generating unit is configured to receive the second task identifier of the operation task fed back by the external platform, and generate an asynchronous response instance corresponding to the second task identifier, wherein a listener is set in the asynchronous response instance, and the Set the callback method in the listener;
回调翻转单元,用于在所述异步响应实例监听到所述第二任务标识对应操作任务的触发事件时,执行所述回调方法并按照所述触发事件调整所述操作任务的状态,直至所述操作任务执行完成。The callback flipping unit is configured to execute the callback method and adjust the state of the operation task according to the trigger event when the asynchronous response instance monitors the trigger event of the operation task corresponding to the second task identifier, until the The operation task is completed.
在一实施例中,所述的基于平台交互的任务处理装置,包括:In an embodiment, the task processing device based on platform interaction includes:
资源释放模块,用于在检测到所述操作任务执行完成时,将所述操作任务的执行结果信息反馈至用户端,并释放所述操作任务的资源。The resource release module is configured to, when the completion of the execution of the operation task is detected, feedback the execution result information of the operation task to the user terminal, and release the resources of the operation task.
在一实施例中,所述的基于平台交互的任务处理装置,包括:In an embodiment, the task processing device based on platform interaction includes:
下线请求模块,用于在接收到外部平台下线请求时,获取外部平台下线请求对应的平台标识;The offline request module is used to obtain the platform ID corresponding to the offline request of the external platform when the offline request of the external platform is received;
平台下线模块,用于查询微服务平台的插件目录,获取所述平台标识对应的jar包,删除所述jar包,并下线所述平台标识对应的外部平台。The platform offline module is used to query the plug-in directory of the microservice platform, obtain the jar package corresponding to the platform identifier, delete the jar package, and offline the external platform corresponding to the platform identifier.
上述各程序模块所执行的方法可参照本申请基于平台交互的任务处理方法各个实施例,此处不再赘述。For the methods executed by the above-mentioned program modules, please refer to the various embodiments of the task processing method based on platform interaction in this application, which will not be repeated here.
本申请还提供一种计算机可读存储介质。The application also provides a computer-readable storage medium.
本申请计算机可读存储介质上存储有基于平台交互的任务处理程序,所述基于平台交互的任务处理程序被处理器执行时实现如上所述的基于平台交互的任务处理方法的步骤。The computer-readable storage medium of the present application stores a task processing program based on platform interaction, and when the task processing program based on platform interaction is executed by a processor, the steps of the task processing method based on platform interaction as described above are realized.
其中,在所述处理器上运行的基于平台交互的任务处理程序被执行时所实现的方法可参照本申请基于平台交互的任务处理方法各个实施例,此处不再赘述。For the method implemented when the task processing program based on platform interaction running on the processor is executed, please refer to the various embodiments of the task processing method based on platform interaction of this application, which will not be repeated here.
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。It should be noted that in this article, the terms "include", "include" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or system including a series of elements not only includes those elements, It also includes other elements not explicitly listed, or elements inherent to the process, method, article, or system. Without more restrictions, the element defined by the sentence "including a..." does not exclude the existence of other identical elements in the process, method, article, or system that includes the element.
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。The serial numbers of the foregoing embodiments of the present application are only for description, and do not represent the advantages and disadvantages of the embodiments.
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。Through the description of the above implementation manners, those skilled in the art can clearly understand that the above-mentioned embodiment method can be implemented by means of software plus the necessary general hardware platform, of course, it can also be implemented by hardware, but in many cases the former is better.的实施方式。 Based on this understanding, the technical solution of this application essentially or the part that contributes to the existing technology can be embodied in the form of a software product, and the computer software product is stored in a storage medium (such as ROM/RAM) as described above. , Magnetic disks, optical disks), including several instructions to make a terminal device (which can be a mobile phone, a computer, a server, an air conditioner, or a network device, etc.) execute the method described in each embodiment of the present application.
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。The above are only the preferred embodiments of the application, and do not limit the scope of the patent for this application. Any equivalent structure or equivalent process transformation made using the content of the description and drawings of the application, or directly or indirectly applied to other related technical fields , The same reason is included in the scope of patent protection of this application.

Claims (11)

  1. 一种基于平台交互的任务处理方法,其中,所述基于平台交互的任务处理方法包括如下步骤:A task processing method based on platform interaction, wherein the task processing method based on platform interaction includes the following steps:
    在接收到操作任务时,获取所述操作任务对应的任务信息;When an operation task is received, the task information corresponding to the operation task is acquired;
    根据所述任务信息判断是否要转移所述操作任务;Judging whether to transfer the operation task according to the task information;
    若要转移所述操作任务,则通过所述预设代理节点将所述操作任务提交至外部平台,以使外部平台处理所述操作任务;If the operation task is to be transferred, the operation task is submitted to an external platform through the preset agent node, so that the external platform can process the operation task;
    接收所述外部平台反馈的所述操作任务的状态信息,根据所述状态信息对所述操作任务进行状态翻转,直至所述操作任务执行完成。The status information of the operation task fed back by the external platform is received, and the status of the operation task is flipped according to the status information until the execution of the operation task is completed.
  2. 如权利要求1所述的基于平台交互的任务处理方法,其中,所述在接收到操作任务时,获取所述操作任务对应的任务信息的步骤之前,包括:The task processing method based on platform interaction according to claim 1, wherein, before the step of obtaining task information corresponding to the operation task when the operation task is received, the method comprises:
    在接收到外部平台接入请求时,获取外部平台接入请求对应的接入信息,其中,所述接入信息中包含实现微服务平台与外部平台之间交互的代码;When an external platform access request is received, access information corresponding to the external platform access request is obtained, where the access information includes a code for realizing interaction between the microservice platform and the external platform;
    将所述接入信息中的代码编译形成jar包,将所述jar包添加至所述微服务平台的插件目录下;Compiling the code in the access information to form a jar package, and adding the jar package to the plug-in directory of the microservice platform;
    在接收到微服务启动请求时,查询所述插件目录加载所述jar包,形成预设代理节点。Upon receiving the microservice startup request, query the plug-in directory to load the jar package to form a preset proxy node.
  3. 如权利要求1所述的基于平台交互的任务处理方法,其中,所述根据所述任务信息判断是否要转移所述操作任务的步骤,包括:The task processing method based on platform interaction according to claim 1, wherein the step of judging whether to transfer the operation task according to the task information comprises:
    提取所述任务信息中的第一任务标识,确定所述第一任务标识对应的任务类型;Extracting the first task identifier in the task information, and determining the task type corresponding to the first task identifier;
    若所述第一任务标识对应的任务类型为微服务任务类型,则判定不要转移所述操作任务;If the task type corresponding to the first task identifier is a microservice task type, it is determined not to transfer the operation task;
    若所述第一任务标识对应的任务类型为代理任务类型,则判定要转移所述操作任务。If the task type corresponding to the first task identifier is an agent task type, it is determined that the operation task is to be transferred.
  4. 如权利要求1所述的基于平台交互的任务处理方法,其中,所述接收所述外部平台反馈的所述操作任务的状态信息,根据所述状态信息对所述操作任务进行状态翻转,直至所述操作任务执行完成的步骤,包括:The task processing method based on platform interaction according to claim 1, wherein the state information of the operation task fed back by the external platform is received, and the state of the operation task is flipped according to the state information until the The steps to complete the execution of the operation task include:
    接收所述外部平台为所述操作任务设置的第二任务标识,将所述第二任务标识封装,生成包含所述第二任务标识的获取请求;Receiving a second task identifier set by the external platform for the operation task, encapsulating the second task identifier, and generating an acquisition request including the second task identifier;
    通过所述预设代理节点将所述获取请求发送至外部平台,以使所述外部平台根据所述获取请求中的第二任务标识定位所述操作任务,并获取所述操作任务对应的日志或者状态信息;The acquisition request is sent to an external platform through the preset proxy node, so that the external platform locates the operation task according to the second task identifier in the acquisition request, and obtains the log corresponding to the operation task, or status information;
    接收所述外部平台反馈至所述预设代理节点的所述获取请求对应的日志或状态信息,根据所述日志或所述状态信息调整所述操作任务的状态,直至所述操作任务执行完成。Receive the log or status information corresponding to the acquisition request that the external platform feeds back to the preset agent node, and adjust the status of the operation task according to the log or the status information until the execution of the operation task is completed.
  5. 如权利要求1所述的基于平台交互的任务处理方法,其中,所述接收所述外部平台反馈的所述操作任务的状态信息,根据所述状态信息对所述操作任务进行状态翻转,直至所述操作任务执行完成的步骤,包括:The task processing method based on platform interaction according to claim 1, wherein the state information of the operation task fed back by the external platform is received, and the state of the operation task is flipped according to the state information until the The steps to complete the execution of the operation task include:
    接收所述外部平台反馈的所述操作任务的第二任务标识,生成所述第二任务标识对应的异步响应实例,其中,所述异步响应实例中设置监听器,所述监听器中设置回调方法;Receive the second task identifier of the operation task fed back by the external platform, and generate an asynchronous response instance corresponding to the second task identifier, wherein a listener is set in the asynchronous response instance, and a callback method is set in the listener ;
    在所述异步响应实例监听到所述第二任务标识对应操作任务的触发事件时,执行所述回调方法并按照所述触发事件调整所述操作任务的状态,直至所述操作任务执行完成。When the asynchronous response instance monitors the trigger event of the operation task corresponding to the second task identifier, the callback method is executed and the state of the operation task is adjusted according to the trigger event until the execution of the operation task is completed.
  6. 如权利要求1所述的基于平台交互的任务处理方法,其中,所述接收所述外部平台反馈的所述操作任务的状态信息,根据所述状态信息对所述操作任务进行状态翻转,直至所述操作任务执行完成的步骤之后,包括:The task processing method based on platform interaction according to claim 1, wherein the state information of the operation task fed back by the external platform is received, and the state of the operation task is flipped according to the state information until the After the completion of the execution of the operation task, the steps include:
    在检测到所述操作任务执行完成时,将所述操作任务的执行结果信息反馈至用户端,并释放所述操作任务的资源。When it is detected that the execution of the operation task is completed, the execution result information of the operation task is fed back to the user terminal, and the resources of the operation task are released.
  7. 如权利要求1至6任意一项所述的基于平台交互的任务处理方法,其中,所述基于平台交互的任务处理方法,还包括:The task processing method based on platform interaction according to any one of claims 1 to 6, wherein the task processing method based on platform interaction further comprises:
    在接收到外部平台下线请求时,获取外部平台下线请求对应的平台标识;When receiving the offline request of the external platform, obtain the platform ID corresponding to the offline request of the external platform;
    查询微服务平台的插件目录,获取所述平台标识对应的jar包,删除所述jar包,并下线所述平台标识对应的外部平台。Query the plug-in directory of the microservice platform, obtain the jar package corresponding to the platform identifier, delete the jar package, and offline the external platform corresponding to the platform identifier.
  8. 一种基于平台交互的任务处理系统,其中,所述基于平台交互的任务处理系统包括:通信连接的微服务平台和外部平台,所述微服务平台和所述外部平台交互实现以下步骤:A task processing system based on platform interaction, wherein the task processing system based on platform interaction includes a microservice platform and an external platform that are communicatively connected, and the interaction between the microservice platform and the external platform implements the following steps:
    微服务平台在接收到操作任务时,微服务平台获取所述操作任务对应的任务信息;When the microservice platform receives the operation task, the microservice platform obtains the task information corresponding to the operation task;
    微服务平台根据所述任务信息判断是否要转移所述操作任务;The microservice platform judges whether to transfer the operation task according to the task information;
    若要转移所述操作任务,微服务平台则通过所述预设代理节点将所述操作任务提交至外部平台,以使外部平台处理所述操作任务;If the operation task is to be transferred, the microservice platform submits the operation task to an external platform through the preset agent node, so that the external platform can process the operation task;
    外部平台执行所述操作任务,产生所述操作任务对应的日志或状态信息,外部平台调用所述微服务平台的网络接口反馈所述日志或所述状态信息;The external platform executes the operation task to generate the log or status information corresponding to the operation task, and the external platform calls the network interface of the microservice platform to feed back the log or the status information;
    微服务平台在检测到所述网络接口被调用时,微服务平台获取所述网络接口反馈的所述日志或所述状态信息;When the microservice platform detects that the network interface is called, the microservice platform obtains the log or the status information fed back by the network interface;
    微服务平台根据所述日志或所述状态信息对所述操作任务进行状态翻转,直至所述操作任务执行完成。The microservice platform performs state inversion of the operation task according to the log or the status information until the execution of the operation task is completed.
  9. 一种基于平台交互的任务处理装置,其中,所述基于平台交互的任务处理装置包括:A task processing device based on platform interaction, wherein the task processing device based on platform interaction includes:
    请求接收模块,用于在接收到操作任务时,获取所述操作任务对应的任务信息;The request receiving module is configured to obtain task information corresponding to the operation task when the operation task is received;
    转移判断模块,用于根据所述任务信息判断是否要转移所述操作任务;The transfer judgment module is used for judging whether to transfer the operation task according to the task information;
    任务转发模块,用于若要转移所述操作任务,则通过所述预设代理节点将所述操作任务提交至外部平台,以使外部平台处理所述操作任务;A task forwarding module, configured to, if the operation task is to be transferred, submit the operation task to an external platform through the preset agent node, so that the external platform can process the operation task;
    接收翻转模块,用于接收所述外部平台反馈的所述操作任务的状态信息,根据所述状态信息对所述操作任务进行状态翻转,直至所述操作任务执行完成。The receiving and turning module is configured to receive the state information of the operation task fed back by the external platform, and perform state inversion of the operation task according to the state information until the execution of the operation task is completed.
  10. 一种基于平台交互的任务处理设备,其中,所述基于平台交互的任务处理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于平台交互的任务处理程序,所述基于平台交互的任务处理程序被所述处理器执行时实现如权利要求1至7中任一项所述的基于平台交互的任务处理方法的步骤。A task processing device based on platform interaction, wherein the task processing device based on platform interaction includes: a memory, a processor, and platform interaction-based task processing stored in the memory and running on the processor A program, when the task processing program based on platform interaction is executed by the processor, the steps of the task processing method based on platform interaction according to any one of claims 1 to 7 are realized.
  11. 一种计算机可读存储介质,其中,所述计算机可读存储介质上存储有基于平台交互的任务处理程序,所述基于平台交互的任务处理程序被处理器执行时实现如权利要求1至7中任一项所述的基于平台交互的任务处理方法的步骤。A computer-readable storage medium, wherein a task processing program based on platform interaction is stored on the computer-readable storage medium, and the task processing program based on platform interaction is implemented by a processor as in claims 1 to 7 Steps of any of the task processing methods based on platform interaction.
PCT/CN2020/126822 2019-11-13 2020-11-05 Task processing method, system, apparatus and device, and computer readable storage medium WO2021093671A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201911110236.X 2019-11-13
CN201911110236.XA CN110851261A (en) 2019-11-13 2019-11-13 Task processing method, system, device, equipment and computer readable storage medium

Publications (1)

Publication Number Publication Date
WO2021093671A1 true WO2021093671A1 (en) 2021-05-20

Family

ID=69600211

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/126822 WO2021093671A1 (en) 2019-11-13 2020-11-05 Task processing method, system, apparatus and device, and computer readable storage medium

Country Status (2)

Country Link
CN (1) CN110851261A (en)
WO (1) WO2021093671A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110851261A (en) * 2019-11-13 2020-02-28 深圳前海微众银行股份有限公司 Task processing method, system, device, equipment and computer readable storage medium
CN111949326A (en) * 2020-08-03 2020-11-17 杭州当虹科技股份有限公司 Micro-service workflow method based on Activiti

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105677453A (en) * 2014-11-19 2016-06-15 腾讯科技(上海)有限公司 Task processing method and device for task platform
CN105704178A (en) * 2014-11-26 2016-06-22 腾讯科技(深圳)有限公司 Task platform access method and task platform access device
US20170295062A1 (en) * 2014-09-24 2017-10-12 Zte Corporation Method, device and system for configuring runtime environment
CN109814917A (en) * 2019-01-16 2019-05-28 中国平安财产保险股份有限公司 Micro services dissemination method, device, computer equipment and storage medium
CN110851261A (en) * 2019-11-13 2020-02-28 深圳前海微众银行股份有限公司 Task processing method, system, device, equipment and computer readable storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170295062A1 (en) * 2014-09-24 2017-10-12 Zte Corporation Method, device and system for configuring runtime environment
CN105677453A (en) * 2014-11-19 2016-06-15 腾讯科技(上海)有限公司 Task processing method and device for task platform
CN105704178A (en) * 2014-11-26 2016-06-22 腾讯科技(深圳)有限公司 Task platform access method and task platform access device
CN109814917A (en) * 2019-01-16 2019-05-28 中国平安财产保险股份有限公司 Micro services dissemination method, device, computer equipment and storage medium
CN110851261A (en) * 2019-11-13 2020-02-28 深圳前海微众银行股份有限公司 Task processing method, system, device, equipment and computer readable storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS: "DataSphere Studio, A One Stop Data Application Development & Management Portal, Is Released!", 2 December 2019 (2019-12-02), XP055813543, Retrieved from the Internet <URL:https://www.oschina.net/news/111781/dataspherestudio-released> *

Also Published As

Publication number Publication date
CN110851261A (en) 2020-02-28

Similar Documents

Publication Publication Date Title
US20220070122A1 (en) Method and Apparatus for Composite User Interface Generation
US8046772B2 (en) System and method for enterprise application interactions
US9020885B2 (en) Systems and methods for collaboration shared state management
US10318358B2 (en) System and method for extending a web service environment to support scalable asynchronous clients
EP3837604B1 (en) In situ triggered function as a service within a service mesh
CN111290865A (en) Service calling method and device, electronic equipment and storage medium
AU2005246375B2 (en) Systems and methods for enterprise collaboration
US20060031497A1 (en) Systems and methods for collaborative content storage
US20060031234A1 (en) Systems and methods for a collaborative group chat
US20050278294A1 (en) Systems and methods for a collaboration presence framework
US20050262185A1 (en) Systems and methods for a collaboration messaging framework
US20050262094A1 (en) Systems and methods for enterprise collaboration
US20050273714A1 (en) Systems and methods for an embedded collaboration client
CN101727475B (en) Method, device and system for acquiring database access process
US20050262007A1 (en) Systems and methods for a collaborative call center
CN113301116A (en) Cross-network communication method, device, system and equipment for microservice application
US9940178B2 (en) System and method for integrating a transactional middleware platform with a centralized audit framework
WO2021093671A1 (en) Task processing method, system, apparatus and device, and computer readable storage medium
US11411812B2 (en) Dynamic service creation for microservice-based integration service
CN111782259A (en) Micro-service management method based on reverse proxy
CN116204239A (en) Service processing method, device and computer readable storage medium
CN111858101B (en) Cloud architecture system-oriented adaptation method, device, equipment and storage medium
US10402307B2 (en) System and method for providing runtime tracing for a web-based client accessing a transactional middleware platform using an extension interface
CN113342845A (en) Data synchronization method, computer device and readable storage medium
WO2024093409A1 (en) Service component calling method and apparatus, and computer device and storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20887281

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20887281

Country of ref document: EP

Kind code of ref document: A1