CN117093384A - Universal back-end reliable execution method, system, equipment and readable medium - Google Patents

Universal back-end reliable execution method, system, equipment and readable medium Download PDF

Info

Publication number
CN117093384A
CN117093384A CN202311068420.9A CN202311068420A CN117093384A CN 117093384 A CN117093384 A CN 117093384A CN 202311068420 A CN202311068420 A CN 202311068420A CN 117093384 A CN117093384 A CN 117093384A
Authority
CN
China
Prior art keywords
workflow
metadata
execution
monitoring
end reliable
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311068420.9A
Other languages
Chinese (zh)
Inventor
余彦臻
张凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SmartX Inc
Original Assignee
SmartX Inc
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 SmartX Inc filed Critical SmartX Inc
Priority to CN202311068420.9A priority Critical patent/CN117093384A/en
Publication of CN117093384A publication Critical patent/CN117093384A/en
Pending legal-status Critical Current

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/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • 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/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The application provides a general back-end reliable execution method, a system, equipment and a readable medium. The general back-end reliable execution method specifically comprises the following steps: creating a workflow according to business requirements; monitoring preset related events in the workflow, identifying monitoring results of the preset related events, and storing the workflow metadata in a lasting manner for the workflow metadata by matching; and converting the workflow metadata into corresponding operation instructions, reading the operation instructions and executing the workflow according to the operation instructions. The technical scheme of the application can simplify the flow of the workflow, shorten the execution time, realize the processing of the workflow by execution, reduce the dependence on complex distributed transaction protocol and error recovery mechanism, improve the stability and usability of the system, realize the replay and reentry of the workflow by the persistent storage and transmission of metadata, and ensure the consistency of data.

Description

Universal back-end reliable execution method, system, equipment and readable medium
Technical Field
The present application relates to the field of computer technologies, and in particular, to a general back-end reliable execution method, system, device, and readable medium.
Background
In current distributed systems, for workflows that require long, reliable execution, it is often necessary to rely on various distributed transaction protocols and complex error recovery mechanisms. For example, in the context of membership registration and trial period management, logic decisions and handling of trial periods need to be guaranteed through complex transaction management and error recovery mechanisms.
For workflows that require long, reliable execution, in the prior art, it is necessary to rely on complex distributed transaction protocols and error recovery mechanisms, which increases the complexity of development and maintenance.
Further, implementing key semantics including sleep, condition in a workflow is also difficult, and consistency of replay, reentry is often not ensured.
Further, the version update process of the workflow is complex, which may cause data consistency problems during the update process. For long-term or permanently running workflows, existing techniques have difficulty handling metadata persistence and management issues, which may result in the processing power of the scheduler exceeding the limit.
Disclosure of Invention
In order to solve the technical defects that the prior art needs to rely on complex distributed transaction protocols and error recovery mechanisms, which increase the complexity of development and maintenance, the application provides a general back-end reliable execution method, a system, equipment and a readable medium, which are used for monitoring preset related events in a workflow, identifying monitoring results of the preset related events and matching the monitoring results into workflow metadata, so that the processing of the workflow which needs to be reliably executed for a long time can be simplified, the dependence on complex distributed transaction protocols and error recovery mechanisms is reduced, and the stability and usability of the system are improved. Meanwhile, through the persistent storage and transmission of metadata, the replay and reentry of the workflow are realized, and the consistency of the data is ensured.
A first aspect of the present application provides a general back-end reliable execution method, which is characterized in that the method includes:
creating a workflow according to business requirements;
monitoring preset related events in the workflow, identifying monitoring results of the preset related events, and matching the monitoring results into workflow metadata;
performing persistent storage on the workflow metadata;
and converting the workflow metadata into corresponding operation instructions, reading the operation instructions and implementing the execution workflow according to the operation instructions.
In one possible implementation manner of the first aspect, monitoring a preset related event in the workflow includes: and when the life cycle corresponding to each execution process starts, reporting the corresponding life cycle related event and the execution result thereof to a scheduler through remote procedure call.
In one possible implementation manner of the first aspect, identifying the monitoring result of the preset related event, and matching the monitoring result to workflow metadata includes:
collecting the workflow metadata, extracting relevant features of the workflow metadata and defining the relevant features as different weights;
and taking the weight as a scoring reference item, scoring the target metadata and the related metadata thereof, and judging the result with the score larger than a preset threshold value as the target metadata.
In one possible implementation manner of the first aspect, identifying the monitoring result of the preset related event, and matching the monitoring result to workflow metadata includes:
collecting the workflow metadata, extracting relevant features of the workflow metadata and defining the relevant features as different weights;
and taking the weight as a scoring reference item, scoring the target metadata and the related metadata thereof, and judging the result with the score larger than a preset threshold value as the target metadata.
In one possible implementation manner of the first aspect, the persisting the workflow metadata includes:
and (3) persistently recording relevant instruction parameters of the key semantic functions in a database, analyzing the relevant instruction parameters and triggering the continuous execution of the execution process.
In one possible implementation manner of the first aspect, reading the operation instruction and executing the workflow according to the operation instruction includes: in the code iteration process of the function corresponding to the operation instruction, the intermediate state change of the compatible function is realized by injecting patch metadata into the operation instruction, and a version updating mechanism is realized for the workflow.
In one possible implementation manner of the first aspect, reading the operation instruction and executing the workflow according to the operation instruction includes: if an exception or program crash occurs in the execution process, the execution state is returned to the state which is successfully executed from the last time.
In a possible implementation manner of the first aspect, the method further includes:
executing the workflow in a recursion operation mode;
defining preset interval time in the workflow, and transmitting context information of the workflow to a new workflow for continuous execution according to the preset interval time.
A second aspect of the present application provides a general-purpose back-end reliable execution system, which is implemented based on a general-purpose back-end reliable execution method in the first aspect, and the system may include:
the creation unit is used for creating a workflow according to the service requirement;
the monitoring unit is used for monitoring preset related events in the workflow, identifying monitoring results of the preset related events and matching the monitoring results into workflow metadata;
the storage unit is used for carrying out persistent storage on the workflow metadata;
and the execution unit is used for converting the workflow metadata into corresponding operation instructions, reading the operation instructions and executing the workflow according to the operation instructions.
A third aspect of the present application provides an electronic device comprising:
a memory for storing a processing program;
a processor, wherein the processor implements a general back-end reliable execution method according to the first aspect when executing the processing program.
A fourth aspect of the present application provides a readable storage medium having stored thereon a processing program which, when executed by a processor, implements a general-purpose back-end reliable execution method as described in the foregoing first aspect.
The application has at least the following beneficial technical effects:
by the back-end reliable execution method provided by the application, the design greatly simplifies the processing of the workflow which needs to be reliably executed for a long time, reduces the dependence on complex distributed transaction protocols and error recovery mechanisms, and improves the stability and usability of the system; through the persistent storage and transmission of the metadata, the persistent storage and transmission of the metadata comprising key semantics such as s leep, cond it and the like are realized in the workflow, the replay and reentry of the workflow are realized, and the consistency of the data is ensured; by injecting patch metadata, the method is compatible with the intermediate state change of the function, ensures that the function which can be continuously executed in the middle can be processed, ensures the data consistency in the updating process, and improves the maintainability and the usability of the system.
Drawings
Other features, objects and advantages of the present application will become more apparent upon reading of the detailed description of non-limiting embodiments, given with reference to the accompanying drawings in which:
FIG. 1 illustrates a flow chart of a generic back-end reliable execution method, according to an embodiment of the application;
FIG. 2 illustrates a general back-end reliable execution system block diagram, according to an embodiment of the present application.
Detailed Description
In order to solve the technical defects that the prior art needs to rely on complex distributed transaction protocols and error recovery mechanisms, which increase the complexity of development and maintenance, the application provides a general back-end reliable execution method, a system, equipment and a readable medium, which are used for monitoring preset related events in a workflow, identifying monitoring results of the preset related events and matching the monitoring results into workflow metadata, so that the processing of the workflow which needs to be reliably executed for a long time can be simplified, the dependence on complex distributed transaction protocols and error recovery mechanisms is reduced, and the stability and usability of the system are improved. Meanwhile, through the persistent storage and transmission of metadata, the replay and reentry of the workflow are realized, and the consistency of the data is ensured.
The application provides a general back-end reliable execution engine, which is specially designed for processing scenes such as distributed transactions, and the like, and realizes functions of workflow persistence storage, metadata transmission and the like by developing two core components of a scheduler and an executor (Worker), wherein the scheduler is responsible for changing a process (namely, the workflow) reliably executed each time into serialized metadata to be placed into a database and then to be executed by the executor, and the Worker is responsible for managing the node for a process started by each working node.
In some embodiments of the present application, the expansion of the execution performance of the system may achieve horizontal expansion by enhancing the number of workers, so as to achieve the service requirement.
Specifically, fig. 1 shows a flowchart of a general back-end reliable execution method according to an embodiment of the present application, where the general back-end reliable execution method specifically may include:
step S1: and creating a workflow according to the service requirements. It can be understood that a Workflow (Workflow) can automatically perform management on a business process through a computer, and the Workflow mainly solves the problem of automatically performing a process of transferring documents, information or tasks among a plurality of participants according to a certain predefined rule, so as to achieve a certain expected business objective or achieve the objective by taking account of the fact, including collecting business requirements and converting the business requirements into a process definition; in some scenarios, when the demand of a service requires more user interaction, such as diversion, connection or transmission based on user input, a separate open source workflow engine may be deployed such that it may execute a workflow in accordance with relevant service logic and/or scheduling logic based on the workflow engine.
It will be appreciated that workflow lifecycles always start with a flow definition; packing various resources by a developer, then issuing a flow definition in system management (platform), wherein a specific flow engine comprises a flow definition file and a user-defined form task monitoring class; a specific process engine (for example, an Activiti) executes a business process in a task-driven manner according to a process processing route defined in advance; depending on the execution phase.
Step S2: monitoring preset related events in the workflow, identifying monitoring results of the preset related events, and matching the monitoring results into workflow metadata. It is understood that it is responsible for receiving and managing metadata for all workflows. The module monitors various events, transmits the events to the identification module, and matches the events according to event modes corresponding to different workflows to identify a series of original trigger actions of the events. Specifically, when the schedulers match, the event type is first identified, then the specific workflow type is matched, the workflow A is finally triggered once, metadata is transmitted, and the worker is responsible for executing the execution action corresponding to the metadata so as to execute the current workflow.
In some embodiments of the present application, if the implementation defines a workflow a, for executing a business logic for sending mail, the workflow process may include the following steps:
the business logic triggers the workflow A, and the triggering time comprises { workflow type: a, mail content: you good, target mailbox: test@example.com event type: triggering workflow and the like, wherein the triggering workflow corresponds to a series of metadata mail contents, target mailboxes, event modes, actions of the triggering workflow A and the like so as to identify monitoring results of preset related events.
Step S3: and performing persistent storage on the workflow metadata. It will be appreciated that the data persistence module may be responsible for storage and management of all workflow metadata, with the stored workflow metadata being persisted for context transfer when there is a business need.
Step S4: and converting the workflow metadata into corresponding operation instructions, reading the operation instructions and implementing the execution workflow according to the operation instructions. It will be appreciated that the scheduler module may convert the workflow metadata into corresponding operation instructions, assign each operation instruction to an executor module, and the executor module may receive the corresponding operation instruction, and execute the workflow according to the sequential logic order of the operation instructions, thereby completing the current workflow.
In some embodiments of the present application, the operation instruction at least includes execution logic of the workflow, scheduling logic of the workflow, etc., and those skilled in the art may specifically set according to the type and content of the workflow, which is not limited herein.
In the step S2, monitoring the preset related event in the workflow includes: and when the life cycle corresponding to each execution process starts, reporting the corresponding life cycle related event and the execution result thereof to a scheduler through remote procedure call. It will be appreciated that the lifecycle components can be divided into such several states: during installation, after installation, during activation, after activation, discarding; among other reasons, the reason for entering the discard state may include the following: installation (install) failure, activation (activating) failure, new version of Worker replaces existing Worker and becomes activated state; the monitoring method comprises the steps that the monitoring is carried out through a rpc remote procedure call (remote procedue recall, rpc for short) when each life cycle of the worker starts, and corresponding event triggering, event execution and related information of event execution results are reported to a scheduler module.
In some embodiments of the present application, the install (install) state throughout the lifecycle occurs after registration, and an install event callback may be triggered to specify some static resources for offline caching.
In some embodiments of the present application, a client that is not controlled by other workers in an active state of a lifecycle allows the current Worker to complete installation and clears the old cache resources of other workers and associated caches, waiting for a new thread to be activated. After activation (activated), an activate event callback (providing an opportunity to update the cache policy) will be processed in this state, and functional events such as a functional event fetch, sync, push, etc. may be processed.
In the step S2, identifying the monitoring result of the preset related event, and matching the monitoring result to workflow metadata includes:
collecting the workflow metadata, extracting relevant features of the workflow metadata and defining the relevant features as different weights;
and taking the weight as a scoring reference item, scoring the target metadata and the related metadata thereof, and judging the result with the score larger than a preset threshold value as the target metadata.
It can be understood that by collecting metadata of a corresponding service, extracting metadata description features, exploring relationships between data, and defining the related features as different weights according to the different weights, the weights are used as scoring reference items to score target metadata and related metadata thereof, the score can represent similarity between the metadata and the target metadata, and the scoring result can be used as a determination result of the target metadata.
In some embodiments of the application, table names, field names, table descriptions, library names, field descriptions, etc. are used as relevant features of the workflow metadata.
In some embodiments of the present application, the functions used for scoring may include SimHash, cosine similarity and other similarity algorithms, and the weights are used as scoring reference terms to score the target metadata and the metadata related thereto, thereby obtaining the score. In some embodiments of the present application, collecting the target metadata and its associated metadata includes collecting data that is the result of the worker implementation, and features that include the opportunities for the worker to execute, and "code versions" of the workflow for the corresponding opportunities.
In some embodiments of the present application, the identification and storage of the target metadata of the present application is different from conventional databases and file stores, and the data persistence module collects the target metadata and related metadata and defines different weights for different metadata features; scoring is performed by a set of metadata information at playback, and exceeding a threshold is considered target metadata. The scheme can avoid the overall failure of data persistence when single characteristics change, and further improve the robustness and maintainability of the workflow.
In some embodiments of the present application, the scoring mechanism may determine through the "code version" result of the workflow, and if the version result is a mismatch, it is directly considered that playback is not possible, because the code to be executed is not identical. If the code versions are the same, but a subsequent code still fails to retry multiple times (e.g., 10 times), a re-execution is triggered to attempt to correct the execution result.
In the step S3, the step of persisting the workflow metadata includes: and (3) persistently recording relevant instruction parameters of the key semantic functions in a database, analyzing the relevant instruction parameters and triggering the continuous execution of the execution process. It can be understood that the corresponding database in the workflow realizes the analysis of key semantics such as sleep, condition, and the semantics are very close to the development of reliable functions and the development of common functions through analysis results, but the key semantics can generate corresponding metadata in the scheduler, and the metadata corresponding to the key semantics function is subjected to persistent storage, so that when the program needs to be replayed and reentered, when relevant instruction parameters corresponding to the metadata are triggered, the workflow metadata stored in a persistent mode are directly read, and therefore the execution efficiency of the workflow and the stability of a system are improved.
Specifically, the sleep implementation method is to record two information of sleep start time and period in the database in a persistent manner, then query all sleep data records in the database at high frequency, and wake up the corresponding worker program to continue execution by rpc when the sleep end time is reached.
The implementation mode of the condition can be similar to the sleep implementation mode, the condition judgment mode of the condition is recorded in the database in a lasting mode, then when the related data change, whether the condition is met is recalculated, and if the condition is met, the worker is awakened to continue to execute.
In the step S4, the step of reading the operation instruction and executing the workflow according to the operation instruction includes: in the code iteration process of the function corresponding to the operation instruction, the intermediate state change of the compatible function is realized by injecting patch metadata into the operation instruction, and a version updating mechanism is realized for the workflow. It can be understood that a version updating mechanism can be realized for the workflow, the intermediate state change of the function can be compatible in the mode of injecting patch metadata in the code iteration process of the function, the function which can be continuously executed in the middle of processing is ensured, and the maintainability and the usability of the system are improved.
In some embodiments of the present application, updating from version 1 to version 2 may be performed in a manner including:
version 1 code:
……
const result1=fn1()
const result2=fn2(result1)
const result3=fn3(result2)
……
the corresponding code is then upgraded to version 2:
const result1=fn1()
const result1_1=fn4(result1)
const result2=fn2(result1_1)
const result3=fn3(result2)
……
in version 1 code, after having had a workflow executed to fn2, at which point the service is restarted, updated to code version 2, at which point continued execution may not yield the expected results because fn4 has not been executed, but fn2 has been executed, the reliable execution engine is uncertain of how to handle, and the engine will flag this execution as failed without injecting a patch.
If the execution of the current workflow is in a very important link in the whole business logic, a patch can be injected to explicitly tell the engine how to handle the situation, and the patch form is realized in the following way, so that the patch can be updated to the version 2 by injecting the patch:
……
if(!result1_1&&result2){
method for executing fn4 and rewriting result2 by using/(and/or compensation)
}
……
In the step S4, the step of reading the operation instruction and executing the workflow according to the operation instruction includes: if an exception or program crash occurs in the execution process, the execution state is returned to the state which is successfully executed from the last time. It can be understood that, during the execution of the workflow, the process is terminated abnormally without being ended, and at this time, optimization is required, the result of the executed process is saved into the database according to the position of the problem analyzed by the result of the operation process of the whole process, and the execution state of the current workflow is returned to the state of successful execution of the last time, so that the past execution result recorded in the database is ensured to be fetched, and the executed function is not executed any more.
In some embodiments of the application, replay is the retrieval of past execution results recorded in a database, without executing a function that has already been executed; reentry is for the workflow as a whole, can be re-entered, but no duplicate steps are performed, as replay causes it to continue to execute downward based on the latest one replay result.
In some embodiments of the application, the workflow is executed in a recursive manner; defining preset interval time in the workflow, and transmitting context information of the workflow to a new workflow for continuous execution according to the preset interval time. It can be understood that, in the workflow, it can be defined how long to transfer the context to a newly built workflow to continue execution, and from the perspective of the user, it is a process running all the time, but metadata segmentation is implemented at the dispatcher, so that a single oversized metadata is avoided, and the processing capability and stability of the system are improved.
In some embodiments of the present application, the applicable scenario where the workflow is executed in a recursive manner mainly includes where the workflow needs to be executed for a long period of time, e.g., the purpose of the workflow is "mail notification if the air temperature on the day is higher than 30 degrees", the expectation of this workflow is "always executed, once a day check". However, an always executing workflow implies infinitely-expanding metadata, which is not affordable to the storage of a reliable execution engine, so that a recursive workflow delivery approach is required, e.g. if the workflow has been executed for 30 days, the current workflow is ended and the last execution time is delivered to the new workflow instance. The new workflow instance determines the next execution time point based on the last execution time.
In some embodiments of the present application, fig. 2 shows a general back-end reliable execution system block diagram, where the system is implemented based on a general back-end reliable execution method in the foregoing embodiments, and the system may include:
a creation unit 001 for creating a workflow according to a business requirement;
a monitoring unit 002, configured to monitor a preset related event in the workflow, identify a monitoring result of the preset related event, and match the monitoring result to workflow metadata;
a storage unit 003, configured to store the workflow metadata in a persistent manner;
and the execution unit 004 is used for converting the workflow metadata into corresponding operation instructions, reading the operation instructions and executing the workflow according to the operation instructions.
It can be understood that each functional module of the back-end reliable execution system executes the same step flow as the back-end reliable execution method, and detailed description thereof is omitted herein.
In some embodiments of the present application, an electronic device is also provided. The electronic equipment comprises a memory and a processor, wherein the memory is used for storing a processing program, and the processor executes the processing program according to the instruction. When the processor executes the processing program, the end express coding prediction method in the foregoing embodiment is realized.
The present application relates to methods, apparatus, systems, electronic devices, computer-readable storage media, and/or computer program products. The computer program product may include computer readable program instructions for performing various aspects of the present disclosure.
The computer readable storage medium may be a tangible device that can hold and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer-readable storage medium would include the following: portable computer disks, hard disks, random Access Memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static Random Access Memory (SRAM), portable compact disk read-only memory (CD-ROM), digital Versatile Disks (DVD), memory sticks, floppy disks, mechanical coding devices, punch cards or in-groove structures such as punch cards or grooves having instructions stored thereon, and any suitable combination of the foregoing. Computer-readable storage media, as used herein, are not to be construed as transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., optical pulses through fiber optic cables), or electrical signals transmitted through wires.
The computer readable program instructions described herein may be downloaded from a computer readable storage medium to a respective computing/processing device or to an external computer or external storage device over a network, such as the internet, a local area network, a wide area network, and/or a wireless network. The network may include copper transmission cables, fiber optic transmissions, wireless transmissions, routers, firewalls, switches, gateway computers and/or edge servers. The network interface card or network interface in each computing/processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium in the respective computing/processing device.
Computer program instructions for performing the operations of the present disclosure can be assembly instructions, instruction Set Architecture (ISA) instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, c++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The computer readable program instructions may be executed entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computer (for example, through the Internet using an Internet service provider). In some embodiments, aspects of the present disclosure are implemented by personalizing electronic circuitry, such as programmable logic circuitry, field Programmable Gate Arrays (FPGAs), or Programmable Logic Arrays (PLAs), with state information of computer readable program instructions, which can execute the computer readable program instructions.
Various aspects of the present disclosure are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the disclosure. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer-readable program instructions.
These computer readable program instructions may be provided to a processing unit of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processing unit of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer readable medium having the instructions stored therein includes an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer, other programmable apparatus or other devices implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The foregoing description of the embodiments of the present disclosure has been presented for purposes of illustration and description, and is not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the various embodiments described. The terminology used herein was chosen in order to best explain the principles of the embodiments, the practical application, or the technical improvements in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.

Claims (10)

1. A method for universal back-end reliable execution, said method comprising:
creating a workflow according to business requirements;
monitoring preset related events in the workflow, identifying monitoring results of the preset related events, and matching the monitoring results into workflow metadata;
performing persistent storage on the workflow metadata;
and converting the workflow metadata into corresponding operation instructions, reading the operation instructions and implementing the execution workflow according to the operation instructions.
2. The method of claim 1, wherein monitoring preset related events in the workflow comprises:
and when the life cycle corresponding to each execution process starts, reporting the corresponding life cycle related event and the execution result thereof to a scheduler through remote procedure call.
3. The method for performing back-end reliability in accordance with claim 1, wherein identifying the monitoring result of the preset related event, and matching the monitoring result to workflow metadata comprises:
collecting the workflow metadata, extracting relevant features of the workflow metadata and defining the relevant features as different weights;
and taking the weight as a scoring reference item, scoring the target metadata and the related metadata thereof, and judging the result with the score larger than a preset threshold value as the target metadata.
4. The universal back-end reliable execution method of claim 1, wherein persisting the workflow metadata comprises:
and (3) persistently recording relevant instruction parameters of the key semantic functions in a database, analyzing the relevant instruction parameters and triggering the continuous execution of the execution process.
5. The universal back-end reliable execution method of claim 1, wherein reading the operating instructions and executing a workflow in accordance with the operating instructions comprises:
and in the code iteration process of the function corresponding to the operation instruction, the patch metadata is injected into the operation instruction to realize the intermediate state change of the compatible function.
6. The universal back-end reliable execution method of claim 1, wherein reading the operating instructions and executing a workflow in accordance with the operating instructions comprises: if an exception or program crash occurs in the execution process, the execution state is returned to the state which is successfully executed from the last time.
7. The universal back-end reliable execution method of claim 1, further comprising:
executing the workflow in a recursion operation mode;
defining preset interval time in the workflow, and transmitting context information of the workflow to a new workflow for continuous execution according to the preset interval time.
8. A universal back-end reliable execution system for use in a universal back-end reliable execution method as claimed in any one of claims 1-7, said system comprising:
the creation unit is used for creating a workflow according to the service requirement;
the monitoring unit is used for monitoring preset related events in the workflow, identifying monitoring results of the preset related events and matching the monitoring results into workflow metadata;
the storage unit is used for carrying out persistent storage on the workflow metadata;
and the execution unit is used for converting the workflow metadata into corresponding operation instructions, reading the operation instructions and executing the workflow according to the operation instructions.
9. An electronic device, comprising:
a memory for storing a processing program;
a processor which, when executing the processing program, implements a general back-end reliable execution method as claimed in any one of claims 1 to 7.
10. A readable storage medium, wherein a processing program is stored on the readable storage medium, and when executed by a processor, the processing program implements a general-purpose back-end reliable execution method according to any one of claims 1 to 7.
CN202311068420.9A 2023-08-23 2023-08-23 Universal back-end reliable execution method, system, equipment and readable medium Pending CN117093384A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311068420.9A CN117093384A (en) 2023-08-23 2023-08-23 Universal back-end reliable execution method, system, equipment and readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311068420.9A CN117093384A (en) 2023-08-23 2023-08-23 Universal back-end reliable execution method, system, equipment and readable medium

Publications (1)

Publication Number Publication Date
CN117093384A true CN117093384A (en) 2023-11-21

Family

ID=88772929

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311068420.9A Pending CN117093384A (en) 2023-08-23 2023-08-23 Universal back-end reliable execution method, system, equipment and readable medium

Country Status (1)

Country Link
CN (1) CN117093384A (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190179935A1 (en) * 2017-12-11 2019-06-13 Nextworld Llc Automated transaction engine
CN111831461A (en) * 2020-07-01 2020-10-27 中国建设银行股份有限公司 Method and device for processing business process
CN113821322A (en) * 2021-09-10 2021-12-21 浙江数新网络有限公司 Loosely-coupled distributed workflow coordination system and method
CN115469881A (en) * 2022-08-30 2022-12-13 金现代信息产业股份有限公司 Configuration publishing and calling method and system for low-code platform service function
CN115525406A (en) * 2022-06-28 2022-12-27 南方电网大数据服务有限公司 Distributed asynchronous task scheduling system
CN116088972A (en) * 2023-03-27 2023-05-09 平安科技(深圳)有限公司 Workflow engine implementation method, system, computer equipment and storage medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190179935A1 (en) * 2017-12-11 2019-06-13 Nextworld Llc Automated transaction engine
CN111831461A (en) * 2020-07-01 2020-10-27 中国建设银行股份有限公司 Method and device for processing business process
CN113821322A (en) * 2021-09-10 2021-12-21 浙江数新网络有限公司 Loosely-coupled distributed workflow coordination system and method
CN115525406A (en) * 2022-06-28 2022-12-27 南方电网大数据服务有限公司 Distributed asynchronous task scheduling system
CN115469881A (en) * 2022-08-30 2022-12-13 金现代信息产业股份有限公司 Configuration publishing and calling method and system for low-code platform service function
CN116088972A (en) * 2023-03-27 2023-05-09 平安科技(深圳)有限公司 Workflow engine implementation method, system, computer equipment and storage medium

Similar Documents

Publication Publication Date Title
US8032494B2 (en) Archiving engine
US11138227B2 (en) Consistent query execution in hybrid DBMS
US7933866B2 (en) Systems, methods and software programs for data synchronization
CN101681256A (en) It automation appliance imaging system and method
US20210286799A1 (en) Automated transaction engine
US20120123949A1 (en) Method and system to automatically modify task status in a project management system via keywords in source code version control commit logs
US10855750B2 (en) Centralized management of webservice resources in an enterprise
EP3129894A1 (en) Remote processing of files residing on endpoint computing devices
US10452684B2 (en) Sequence engine
US9146978B2 (en) Throttling mechanism
US20210406247A1 (en) Module expiration management
US20050234987A1 (en) Smart archive for jar files
CN117093384A (en) Universal back-end reliable execution method, system, equipment and readable medium
CN115203260A (en) Abnormal data determination method and device, electronic equipment and storage medium
US10698749B1 (en) System and a method for automated resolution of configuration item issues
CN110245148B (en) Data storage method, device, system and medium
US20240012835A1 (en) Synchronizing changes in a distributed system with intermittent connectivity
US20240134544A1 (en) Method, device, and computer program product for storage
US20230185691A1 (en) Differential logging of computing processes
CN109710673B (en) Work processing method, device, equipment and medium
CN112685431A (en) Asynchronous caching method, device, system, electronic equipment and storage medium
CN115391390A (en) Method and device for providing time-consuming information of Redis cluster
CN114818918A (en) Service processing method and device, electronic equipment and storage medium
JP4447808B2 (en) How to provide updated data
CN117951131A (en) Method, apparatus and computer program product for storage

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination