CN110032571A - Business flow processing method, apparatus, storage medium and calculating equipment - Google Patents

Business flow processing method, apparatus, storage medium and calculating equipment Download PDF

Info

Publication number
CN110032571A
CN110032571A CN201910313907.6A CN201910313907A CN110032571A CN 110032571 A CN110032571 A CN 110032571A CN 201910313907 A CN201910313907 A CN 201910313907A CN 110032571 A CN110032571 A CN 110032571A
Authority
CN
China
Prior art keywords
node
instance
database
orchestration
data
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.)
Granted
Application number
CN201910313907.6A
Other languages
Chinese (zh)
Other versions
CN110032571B (en
Inventor
马海刚
邓磊
马维宁
常震华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910313907.6A priority Critical patent/CN110032571B/en
Publication of CN110032571A publication Critical patent/CN110032571A/en
Application granted granted Critical
Publication of CN110032571B publication Critical patent/CN110032571B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

A kind of business flow processing method, apparatus, storage medium and computer equipment provided by the present application, the instance data of unclosed orchestration instance is cached using first database, use the instance data for the orchestration instance that the second database purchase has terminated, realize the dynamic retractility of memory headroom, it avoids all instance datas and is all buffered in first database, the memory space for occupying first database, influences the normal work of other orchestration instances;Meanwhile the orchestration instance for being over directly is read the second database when needing to consult example data, reduces the access times to first database, improves the availability for the service of writing;Moreover, while the application realizes the instance data high concurrent of orchestration instance, ensure that the consistency of data because of the high concurrent processing capacity of first database.

Description

Business flow processing method, apparatus, storage medium and calculating equipment
Technical field
This application involves fields of communication technology, and in particular to a kind of no business flow path processing method, device, storage medium and Computer equipment.
Background technique
Engineering stream engine refers to a part of workflow as application system, and is provided and has certainly to each application system It is set for, different according to role, the division of labor and condition determine information, the Core Solutions such as transmitting routing, content rating.Work Make stream engine and generally includes the critical functions such as the node administration of process, flow direction management, process sample management.
Currently, common workflow engine has K2, Activiti etc., the work of basic database transaction operation mode is belonged to Make stream engine, therefore, is limited by the oncurrent processing ability of database, the oncurrent processing ability of existing this workflow engine Generally, K2 workflow engine as shown in Figure 1 is under different scenes, processing data volume per second, from last of table shown in Fig. 1 Column can be seen directly that parallel processing performance is poor, and transaction data per second is very low.
Summary of the invention
The embodiment of the present application provides a kind of business flow processing method, apparatus, storage medium and computer equipment, realizes While the high concurrent of the instance data of orchestration instance, the consistency of data ensure that, and use two kinds of database purchases Instance data under different conditions realizes the dynamic retractility of memory headroom.
To achieve the above object, the embodiment of the present application provides the following technical solutions:
A kind of business flow processing method, which comprises
Detect the example state of each node in orchestration instance;
In the case where the example state shows the unclosed situation of the orchestration instance, by the orchestration instance Instance data is cached to first database;
In the case where the example state shows that the orchestration instance terminates, the first database is cached The instance data of the orchestration instance is synchronized to the second database, and deletes the business of the first database caching The instance data of flow instance.
A kind of business flow processing device, described device include:
Detection module, for detecting the example state of each node in orchestration instance;
First memory module, for inciting somebody to action in the case where the example state shows the unclosed situation of the orchestration instance The instance data of the orchestration instance is cached to first database;
Second memory module, in the case where the example state shows that the orchestration instance terminates, by institute The instance data for stating the orchestration instance of first database caching is synchronized to the second database, and deletes first number According to the instance data of the orchestration instance of banked cache.
A kind of storage medium is stored thereon with computer program, and the computer program is executed by processor, and realizes as above Each step of the business flow processing method.
A kind of computer equipment, the computer equipment include:
Communication interface;
Memory, for storing the computer program for realizing business flow processing method as described above;
Processor, for recording and executing the computer program of the memory storage, the computer program is for real Now each step of business flow processing method as described above.
Based on the above-mentioned technical proposal, a kind of business flow processing method, apparatus provided by the embodiments of the present application, storage medium And computer equipment, the present embodiment can be used the instance data that first database caches unclosed orchestration instance, make With the instance data for the orchestration instance that the second database purchase has terminated, by this timing by process in first database The instance data of end is synchronized to the mode of the second database, realizes the dynamic retractility of memory headroom, avoids all examples Data are all buffered in first database, occupy the memory space of first database, influence the normal work of other orchestration instances Make;Meanwhile the orchestration instance for being over, when needing to consult example data, directly to the second database into Row read operation reduces the access times to first database, improves the availability for the service of writing;Moreover, because of first The high concurrent processing capacity of database ensure that while the application realizes the instance data high concurrent of orchestration instance The consistency of data.
Detailed description of the invention
In order to illustrate the technical solutions in the embodiments of the present application or in the prior art more clearly, to embodiment or will show below There is attached drawing needed in technical description to be briefly described, it should be apparent that, the accompanying drawings in the following description is only this The embodiment of application for those of ordinary skill in the art without creative efforts, can also basis The attached drawing of offer obtains other attached drawings.
Fig. 1 is a kind of test result schematic diagram of K2 workflow engine;
Fig. 2 is a kind of structural schematic diagram of service flow processing system provided by the embodiments of the present application;
Fig. 3 is the structural schematic diagram of another service flow processing system provided by the embodiments of the present application;
Fig. 4 is a kind of flow diagram of business flow processing method provided by the embodiments of the present application;
Fig. 5 is the flow diagram of another business flow processing method provided by the embodiments of the present application;
Fig. 6 is a kind of control class figure provided by the embodiments of the present application;
Fig. 7 is a kind of operation flow definition figure provided by the embodiments of the present application;
Fig. 8 is the industry under the application scenarios provided by the embodiments of the present application for defining figure for operation flow shown in Fig. 7 The flow diagram of business flow path processing method;
Fig. 9 is the storage object relational design of first database in business flow processing method provided by the embodiments of the present application Figure;
Figure 10 is a kind of business flow processing provided by the embodiments of the present application that figure is defined for operation flow shown in Fig. 7 The flow diagram of method;
Figure 11 is defined at another operation flow of figure to be provided by the embodiments of the present application for operation flow shown in Fig. 7 The flow diagram of reason method;
Figure 12 is that the pressure of business flow processing method provided by the embodiments of the present application surveys result schematic diagram;
Figure 13 is that the pressure of existing business process processing method surveys result schematic diagram;
Figure 14 is the business process map that business flow processing method provided by the embodiments of the present application obtains;
Figure 15 is the request time-consuming test result schematic diagram of business flow processing method provided by the embodiments of the present application;
Figure 16 is the structural schematic diagram of business flow processing device provided by the embodiments of the present application;
Figure 17 is the structural schematic diagram of another business flow processing device provided by the embodiments of the present application;
Figure 18 is a kind of hardware structural diagram of computer equipment provided by the embodiments of the present application.
Specific embodiment
In conjunction with the analysis of previous Background section, existing workflow engine in practical applications, in order to guarantee data Consistency causes database carrying pressure big, and concurrency performance is poor, is not particularly suited for more example high concurrent interactive service scenes. In this regard, present inventor wishes to propose a kind of new high performance operation stream engine, can support common sequence flow, Branch's process, exclusive or process, countersign process etc., while dynamically increasing during also supporting and discussing that type is pending and countersign type waits for It the operation such as does, while meeting the respective demand of these processes.
Specifically, the application can use such as Redis database single thread atomic operation characteristic, based on memory with Redis Database while the high concurrent of implementation process example interaction data, guarantees data consistency.It can will specifically be over Flow instance data are stored to persistent database (such as MySql, SQL SERVER), by unclosed flow instance data store to Redis database (i.e. key value database), to guarantee unclosed stream using the high concurrent performance of Redis database interface Journey example concurrent working, meanwhile, because the flow instance data being over will not occupy Redis database, reduce to Redis The occupancy in databases space, avoiding low memory causes to service not available situation, while decreasing to Redis number According to the access times in library, the availability for service of writing is promoted.
In addition, be directed to work on hand stream engine, during workflow is embedded into business flow processing, cause to be difficult to Track positioning, circulate unsharp problem, and present inventor also proposes to separate workflow and business logic processing, makes Calling correlation API (Application ProgramInterface, application programming interfaces) realization can be passed through by obtaining operation system Orchestration instance circulation solves the close coupling relationship between operation system data processing and operation flow circulation, so that business Flow processing is apparent, and each operation system only needs to focus on the business logic processing of each link.
In addition, being based on above-mentioned improvement, the new workflow engine for the realization business flow processing method that the application proposes can To use JSON format, keep its readable and transplantability more preferable, meanwhile, existing asynchronous process is replaced using synchronous interaction mode So that exception information returns much sooner, and in time and abnormal nodes are accurately positioned accordingly in mode;It further, can be with Using SVG (Scalable Vector Graphics, scalable vector graphics) graphic definition process, so that example state It tracks more intuitive.
Wherein, the application can be interacted using http communication agreement with each operation system, reduce learning cost, and Convenient for the access of new technological process.
Below in conjunction with the attached drawing in the embodiment of the present application, technical solutions in the embodiments of the present application carries out clear, complete Site preparation description, it is clear that described embodiments are only a part of embodiments of the present application, instead of all the embodiments.It is based on Embodiment in the application, it is obtained by those of ordinary skill in the art without making creative efforts every other Embodiment shall fall in the protection scope of this application.
Referring to Fig. 2, for the system architecture schematic diagram for realizing business flow processing method provided by the present application, which can be with Including web page server 11, application server 12, first database 13 and the second database 14, in which:
Web page server 11 is deployed in web layer, is mainly used to dispose flow definition and monitoring station, introduces web load, with And support server extending transversely etc., the quantity for the web page server 11 that the application disposes web layer is without limitation.
Referring to the architecture diagram that system module shown in Fig. 3 forms, flow definition and monitoring station are mainly used to formulate standard Flow definition specification provides SVG graphic process and defines (JSON agreement is deposited) tool and flow instance data operation maintenance tool Deng so that user's flow definition and example tracking are more convenient more intuitive.Each tool being mentioned to about the present embodiment it is specific Use the description for being referred to hereafter embodiment of the method corresponding portion.
Application server 12 can be to provide the service equipment of a certain business, in practical applications, usually in user terminal Side setting and the matched client of application server 12, that is, realize the application program of the business.As it can be seen that being supported not for system Same business, has been usually deployed corresponding application server, and the application is not construed as limiting the application server type and its quantity.
In the application, middle layer of the application server 12 as whole system, what system module as shown in connection with fig. 3 formed Architecture diagram, application server 12 can mainly be used to externally provide API service, logical process, data adaptation and introduce load The functions such as layer, also support server is extending transversely, and provides some infrastructure services.
As shown in figure 3, the api interface quantity that workflow engine externally provides is often multiple, it specifically can be for as created Example, termination process are built, pending, holding discussion is submitted, delivers process, rejects the differences such as process, pending center and example center Application scenarios configure the message interface that can accordingly call, so that operation system is by the message interface needed for calling, to workflow Engine initiating business request message, specific implementation process the application is without limitation.Therefore, workflow engine provided by the present application can Externally to issue the interface list being made of multiple api interfaces and its function, so that developer selects required API as needed Interface, and by HTTP API interactive mode, so that the access of operation system is simpler.
For the logical process to be realized of application server, can mainly be used to realize that all flow instance states update Operation, is the logical process core component of entire workflow engine.In the present embodiment, in order to meet the Different Logic processing of business Demand, referring to Fig. 3, can be deployed with access safety control centre, the center user Ticket, example internal storage data context, Several parts such as Redis example context and flow instance control centre, however, it is not limited to this, about the worked of each section Journey, is referred to the description of hereafter embodiment of the method corresponding portion, and the present embodiment is not described in detail here.
For the adaptation layer of application server realizing data adaptation, DBAdapter adaptation can be divided into according to business scope Layer and RedisAdapter adaptation layer, are mainly used to the dynamic queries and storage of implementation process data, and specific implementation flow can be with Referring to the description of hereafter embodiment of the method corresponding portion
In addition, for some infrastructure services that application server is realized, as infrastructure service center is capable of providing in Fig. 3 Organizational structure information, report chain information, personnel's basic information, the service such as message, the log such as mail/short message/wechat, Ke Yigen According to actual needs, the service content and its implementation that infrastructure service center includes are determined, it is not limited to service shown in Fig. 3 Content.
First database 13 and the second database 14 may each be database server, but the two can select different type Database server, in this application, first database 13 is mainly used to store unclosed orchestration instance data, Redis database can be selected.Second database 14 can be used to back up all flow instance data, can store all tied The flow instance data of beam, can select MySQL database server, but be not limited to this relevant database.
It can be seen that its all corresponding flow instance data can store to first database during service operation 13, in the case where the service ending, all flow instance data of the business stored at this time can be synchronized to the second number According to library 14, later, the flow instance data for the business that first database 13 stores is removed, reduce the memory to first database The occupancy in space guarantees the normal use of other business services.
Classification storage mode based on the flow instance data that the application proposes, for the flow instance number being over According to can directly be read from the second database 14, which reduces the access request numbers to first database, improve Write the availability of service.Thus, the application is by this classification storage mode, and realize the storage of first database data can Retractility externally provides high concurrent interactive interface while guaranteeing data consistency.
Optionally, as shown in Fig. 2, the above-mentioned first database of the application and the second database can use master slave mode, Realize the storage to orchestration instance data, specific implementation process the application is not described further, and is not limited to shown in Fig. 2 Two groups of master-slave databases.
It is only to realize that the application provides for the system structure of three-layer network shown in Fig. 2 deployment in addition, it is necessary to illustrate Business flow processing method system architecture example, it is not limited to this structure shown in Fig. 2 is also not limited to each Two groups of servers that layer provides, can be adjusted flexibly the quantity of each stratum server, the application is no longer according to actual development demand Enumerate detailed description.
The system structure in conjunction with shown in figure 2 above and 3, in order to better understand workflow engine under concrete application scene The course of work, below by being illustrated on the whole from business processing flow, referring to a kind of industry provided by the present application shown in Fig. 4 The signaling process schematic diagram of one embodiment of processing method of being engaged in, this method can be applied to service side, as shown in figure 4, this method It may include but be not limited to following steps:
Step S101, client initiate acquisition of credentials request to the Verification System of application server;
In the present embodiment, the user rs credentials that Verification System can be the logical process layer deployment of application server are issued The heart can be used to provide the voucher ticket for showing user identity for user, and guarantee that the user is able to access that in system The access credentials of application.In this way, user client can carry voucher access other application, so that other application can be based on The voucher identifies user identity, and then determines whether the user is allowed access to apply.
Wherein, acquisition of credentials request usually may include the log-on message of user's input, so that user is accordingly to user's Identity is verified, and the content that the application includes to the log-on message is not construed as limiting, such as user identity ID, user images, Can requirement according to Verification System to user identity authentication determine.
Step S102, Verification System respond acquisition of credentials request, distribute corresponding identity documents for client user;
The identity documents are fed back to client by step S103, Verification System;
After analysis above, after Verification System receives acquisition of credentials request, can to it includes log-on message test Card determines that the user for initiating acquisition of credentials request by client has access authority, i.e. it can be the use that log-on message is qualified Unique identities voucher ticket is distributed at family, and is fed back to client, and the application is distributed how Verification System is each user The method of identity documents ticket is not construed as limiting.
Optionally, above-mentioned identity documents ticket may include SHA1 (Secure Hash Algorithm, secure Hash Algorithm) information such as signature algorithm TOKEN (interim token), the symmetrical encryption and decryption aes algorithm key of message, authority expired time.
Step S104, client utilize the identity information, generate business request information;
In the present embodiment, in the case where user needs to obtain certain message of certain orchestration instance, user is used It, can be according to the identity documents, the head of the customized request after client obtains the identity documents of the user from Verification System Field, such as user's unique identifier, request message SHA1 signature.Later, the message that can use in identity documents symmetrically adds Aes algorithm key is decrypted, request message is encrypted, recycles encrypted request message, generates business request information, is protected The safety of the service request of external transmission is demonstrate,proved, specific ciphering process the application is not detailed.
Optionally, under different application scene, the type of message for the business request information that the present embodiment generates may include: Initiate message, submit pending message, termination process message, REFER messages, the pending message of countersign, rejection message etc., based on difference The message of type will generate the service request of respective type, but be not limited to these types of type enumerated herein.
The system architecture in conjunction with shown in figure 2 above, the application can show that workflow is drawn in the display interface of client-side The message interface list of offer called is held up, user can therefrom select message required for this initiation operation flow to connect Mouthful, with by calling the message interface, the corresponding business request information of generation is simultaneously sent to workflow engine.As user needs A hiring process is initiated, can choose the message interface for initiating this type of message of message, realizes the calling to the message interface, Inform that workflow engine user current business demand, specific implementation process the application are not construed as limiting.
As it can be seen that the present embodiment operation system initiates phase by the way of calling the message interface of offer of workflow engine The business request information answered makes it only need to pay close attention to own service, without paying close attention to the circulation logic of operation flow, but by working It flows engine and is based on the business request information, execute corresponding service logic, thus, workflow engine provided by the present application is by industry Business workflow is separated with business logic processing, so that business flow processing is more clear, it is real convenient for tracing and positioning operation flow Abnormal nodes in example.
And the application uses HTTP API interactive mode, simplifies the access of operation system, reduces learning cost.
The business request information is sent to workflow engine by step S105, client;
Step S106, workflow engine obtain the identity documents of the user from Verification System;
Step S107, workflow engine utilize the identity documents, carry out validity check to business request information;
Step S108, workflow engine is in the case where verification passes through, and according to the identity documents, obtains the service request and disappears The message content of breath;
In the present embodiment, after workflow engine receives the business request information of user's transmission, the business can be first verified Whether the validity of request message, that is, the user for initiating the business request information have lawful authority, so, workflow engine can To obtain the identity documents of the user from Verification System, and then the business request information is carried out effectively using the identity documents Property verification, specific checking procedure the present embodiment is not detailed.
By above-mentioned verification, in the case where verification passes through, the key in the identity documents of acquisition is recycled, business is asked It asks the message content of message to be decrypted, obtains the requested message content of user, the decrypting process and above-mentioned ciphering process pair It answers, the present embodiment is not described further.
Step S109, workflow engine obtain with the matched orchestration instance of the message content, and by the operation flow The instance data of example is stored to Redis database;
Step S110, workflow engine handle the orchestration instance, update the example state of respective nodes;
Step S111, workflow engine feed back to the instance data of updated example state and orchestration instance Client.
It should be understood that requesting the business of operation for user, orchestration instance is simultaneously not finished, therefore, obtain with After the orchestration instance that the message content of Client-initiated business request information matches, i.e. workflow engine response business is asked Message is sought, it, can be (i.e. above-mentioned to Redis database by example data buffer storage after obtaining the orchestration instance of this request First database in system architecture), specific storage mode is without limitation.
It optionally, can be by the example ID of each orchestration instance for the key value database of this type of Redis database (i.e. the unique identification of the orchestration instance) is used as key key, and its corresponding instance data (can be the number of JSON format According to) value value as the key, realize the storage to the instance data of different business flow instance.Therefore, when needing to obtain When the instance data of certain orchestration instance, the example ID of the orchestration instance can be directly utilized, inquiry obtains corresponding Instance data.
Wherein, it for the orchestration instance of the application, is usually generated for the operation flow definition figure that user provides , and the operation flow is defined figure and can be configured accordingly using JSON protocol definition, and for different operation flow definition Flow definition ID, to distinguish each operation flow definition figure, the application is not detailed the process that operation flow defines.The application is real In the application of border, for different types of business request information, the process that workflow engine obtains corresponding service process example may It is different.Assuming that the business request information is to initiate message, hiring process is such as initiated, workflow engine can be fixed according to operation flow Justice figure, initializes orchestration instance context class, obtains hiring process example, meanwhile, the application can be by this trick of initiation The instance data of flow instance is engaged to be cached in Redis database.
Later, in the implementation procedure of hiring process, the instance number of the hiring process can be read from Redis database According to, and apply it in specific recruitment, that is, the instance data is utilized, it is corresponding to execute each node in hiring process example Service, and the example state of respective nodes is updated, so that recruitment person can learn the newest shape of each node of hiring process in time State learns what node for being currently at hiring process, meanwhile, guarantee that the Redis database can store and each is existed by recruitment person State in hiring process.
Optionally, for Client-initiated business request information, as described above, it can also be other kinds of and disappear Breath, such as all kinds of business request informations in operation flow implementation procedure listed above, in this case, workflow engine can be with The example ID of orchestration instance according to the business instantiates example context class and Redis flow instance class, obtains business Currently processed node in process by the polymorphic mechanism of interface, realizes orchestration instance number using different type node later According to update and the update of each node instance state, and updated instance data is encrypted, by encrypted instance number Accordingly and updated example state feeds back to client, to meet the business demand of Client-initiated business request information.
Wherein, in the operational process of orchestration instance, generated updated instance data, can cache to In Redis database (first database i.e. in above system structure), realize to being generated in orchestration instance implementation procedure Data persistent storage.And in the case that example state in the updated shows that orchestration instance terminates, the application can The instance data of the orchestration instance in Redis database at this time is synchronized to MySQL database (i.e. above system structure In the second database) storage, while the instance data of the Redis database caches can be deleted, reserve memory space Continue to cache the instance data of other orchestration instances.
Description based on foregoing embodiments, referring to Fig. 5, is that the application is real in conjunction with figure 2 above and system architecture shown in Fig. 3 The flow diagram of another business flow processing method of example offer is applied, this method may include:
Step S201 detects the example state of each node in orchestration instance;
Step S202 verifies whether the orchestration instance terminates according to the example state, if not, entering step S203;If so, executing step S204;
Step S203 caches the instance data of the orchestration instance to first database;
Such as above-mentioned analysis, first database can be Redis database, and orchestration instance is not finished, and illustrates the business The corresponding service of at least one node of flow instance has not been executed, i.e., services in the presence of at least one node is corresponding wait hold Row.
Optionally, the Redis database of the application can be realized real using such as Hash, Lish, String data structure The storage of number of cases evidence, and guarantee the consistency of data while improving performance by affairs.Since Redis database belongs to Key value database, so, in the related data of storage service process, as operation flow defines information, each operation flow reality The instance data etc. of example, can be set corresponding unique identification as key key, and deposit using corresponding data as value Storage.
Specifically, can be generated globally unique by flow definition ID, example ID, pending ID etc. by specifying step-length mode Major key, that is, be used to inquire the unique identification of corresponding data, but is not limited to a kind of this mark generating mode, with Hash data knot For structure, the data of Redis database purchase mainly may include operation flow definition, orchestration instance, instant node, to It does that task, processing people be pending and the hash value of the storage objects such as personal pending center, and can have between these storage objects Just like storage relation schematic diagram shown in Fig. 7.
The instance data of the orchestration instance of first database caching is synchronized to the second database by step S203, And delete the instance data of the orchestration instance of first database caching.
Wherein, the second database can be Mysql database, and however, it is not limited to this.
To sum up, the instance data that first database caches unclosed orchestration instance can be used in the present embodiment, makes With the instance data for the orchestration instance that the second database purchase has terminated, by this timing by process in first database The instance data of end is synchronized to the mode of the second database, realizes the dynamic retractility of memory headroom, avoids all examples Data are all buffered in first database, occupy the memory space of first database, influence the normal work of other orchestration instances Make;Meanwhile the orchestration instance for being over, when needing to consult example data, directly to the second database into Row read operation reduces the access times to first database, improves the availability for the service of writing;Moreover, because of first The high concurrent processing capacity of database ensure that while the application realizes the instance data high concurrent of orchestration instance The consistency of data.
Below in conjunction with concrete application scene, the method for processing business of the above embodiments of the present application description is illustrated, Operation flow as shown in connection with fig. 7 defines figure, which can be the flow definition of user determine according to actual needs, But it is not limited to operation flow definition figure shown in Fig. 7 in practical application, an example is only used as to be illustrated.Assuming that user Currently processed node under the application scenarios is " examination & approval 1 ", and currently processed people is A, and the method for processing business accordingly executed is such as Shown in Fig. 8:
Step S301, client submit pending message to workflow engine;
It should be understood that the processing people that step S301 can actually be currently processed node submitted by client it is pending Message, the present embodiment is only illustrated by taking this type of message of pending message as an example, for other kinds of business request information Method for processing business it is similar, the application does not do and is described in detail one by one.
Step S302, workflow engine instantiate flow instance or more according to the flow instance mark in the pending message Literary class and flow instance class;
In the present embodiment, for different orchestration instances, it is commonly configured with unique flow instance mark, such as above The example ID of the orchestration instance of description, the application to the configuration method of the example ID without limitation, can using Redis from Increase key mode to generate, also can use SnowFlake algorithm (i.e. a kind of distribution ID generating algorithm) generation etc..
It circulates control class figure referring to operation flow shown in Fig. 9, the application can use that business request information is for example above-mentioned to be mentioned Explain the example ID done in message SubmitMsg, instantiate Process Instance Context class (FlowInstanceContext class) and Orchestration instance class (FlowRedisContext class).
Wherein, after receiving message about workflow engine, validity check and message content encryption process, Ke Yican According to the description of above-described embodiment, this will not be repeated here for the present embodiment.
Step S303, workflow engine determine that currently processed node is pending type node, obtain pending type node class;
Step S304, workflow engine instantiates the pending type node class, and stores currently processed node Approval results state;
It is determining that currently processed node is " examination & approval 1 ", is being pending type node, corresponding TaskNode class (i.e. pending class Type node class), workflow engine can instantiate the TaskNode class, execute Execute method and store the currently processed node Approval results state, specific implementation process the present embodiment be not described further.Step S305, workflow engine obtain next stage and execute Node;
The present embodiment can be by executing ChangeFlowState () method, and the next stage for obtaining currently processed node is held Row node, such as " branch 1 " in Fig. 7.
Step S306, workflow engine determine the next stage execute node be branch pattern node, return step S305 after It is continuous to execute, until it is pending type node that acquired next stage, which executes node, the next stage of the pending type is executed into node It is updated to currently processed node;
In this application, the gateway type node in orchestration instance may include branch pattern node ForkNode, Conutersign type node JoinNode and exclusive or type node XorNode, wherein exclusive or type node, that is, exclusive or node is in Business Stream During Cheng Liuzhuan, automatic submission strategy is generallyd use, that is, is defaulted as processed state, processing result is that examination & approval pass through.Except this Before, the instant node in orchestration instance can also include start node StartNode, task node TaskNode, knot Shu Jiedian EndNode etc. is specifically referred to operation flow as shown in Figure 7 and defines all types of nodes in figure.
In the orchestration instance that operation flow as shown in Figure 7 defines that figure obtains, determine that currently processed node is " to examine 1 " is criticized, it is " branch 1 " that next stage, which executes node, is gateway type node, specially branch pattern node, can touch automatically The ChangeFlowState () method of hair obtains next stage and executes node, and " branch 2 " is arrived in circulation, similarly continues automatic flow and arrives Its next stage executes node " examination & approval 2 " and " examination & approval 3 " i.e. pending type node;It is " branch 1 " in currently processed node updates In the case of, automatic flow to next stage execute node be also possible to be " branch 3 ", also automatic flow is held to its next stage at this time Row node " examination & approval 4 " and " examination & approval 5 ", i.e., pending type node.
Step S307, workflow engine update the example state of the currently processed node;
The updated example state of flow instance interior joint is fed back to client by step S308, workflow engine.
Specifically, the present embodiment can be called in the case where determining currently processed node is pending type node The pending state of ChangeFlowState () instantiated nodes, i.e. update example state, determine that currently performed operation flow is real The node of example is examination & approval 2, examination & approval 3, examination & approval 4 and examination & approval 5, while can also obtain the corresponding processing people of each pending node, later, Updated example state is fed back into client, updates the state of each node in the operation flow that client is shown, to remind The processing people of each pending node is handled in time, the application to the renewal process of operation flow without limitation.
In addition, in conjunction with the description of above-described embodiment, in such as above-mentioned operation flow implementation procedure, for orchestration instance Unclosed instance data can continue caching to Redis database, according to sequence (i.e. business of operation flow after update Flow instance interior joint executes sequence) the corresponding service of node, while the type according to performed node are executed, it updates in fact Example state and instance data, however, it is determined that the operation flow terminates, can be by the orchestration instance of Redis database caches Instance data is synchronized to MySQL database storage, while deleting the instance data of Redis database caches.Wherein, about industry Each node corresponding with service executes sequence in business process, will be according to user's operation flow definition figure determination predetermined, not It is confined to operation flow definition figure shown in Fig. 7.
Based on above-mentioned design, in the application practical application, for the operation flow of the definition under different scenes, can adopt With corresponding instant node processing strategie (it can be a kind of data processing algorithm), the instance data of the operation flow is obtained, Wherein, which may include closest branch node matching strategy CBNM, based on DFSP (Depth First Search Path) internode path traversal strategies, reject strategy, XOR exclusive or circulation strategy, can terminate strategy, Join countersign The combination of one or more of strategies such as circulation strategy, can select according to practical process demand, will enumerate several answer below With in the business flow processing of scene, the realization of service logic circulation process is illustrated, but is not limited to the application and is enumerated Several application scenarios service logic circulation.
In practical applications, after the currently processed node for executing orchestration instance, whether can circulate to next Grade executes node, as shown in fig. 7, whether can circulate if currently processed node is " countersign 2 " node to " examination & approval 6 " node, Whether the node in all paths before needing to check " countersign 2 " matched branch node of node, which is carried out, finishes, such as Fruit is that just will continue to circulation to " examination & approval 6 " node, otherwise, the pending corresponding service of node not yet terminated such as needs.Thus As it can be seen that generally requiring to search currently processed node (referred to herein as countersign node or exclusive or in orchestration instance implementation procedure Node) closest branch node and currently processed node and its closest branch node between all paths etc..
Based on this, operation flow as shown in connection with fig. 7 is defined figure by the application, to the reality for how searching closest branch node Existing method is illustrated, specifically with " when business process flow goes to " countersign 1 " node, return branch node " branch 2 ";Work as industry When being engaged in workflow to " countersign 2 " node, return branch node is " branch 1 ", rather than return branch 2 or branch 3 " this answer For scene.
When regulation due to branch node with countersign node, branch node and exclusive or node in flow definition must go out in pairs It is existing, so, it needs to be determined that the present embodiment can under the scene of the closest branch node to match with countersign node or exclusive or node To select CBNM strategy to realize, specific implementation process is referred to flow diagram shown in Figure 10, simultaneously for this application scenarios It is not limited to the business flow processing method that the present embodiment provides, as shown in Figure 10, the present embodiment is answered mainly for realization is above-mentioned It is illustrated with the realization process of scene, the closest branch section of currently processed node is obtained using node matching strategy CBNM Point, the specific implementation process is as follows:
The currently processed node of orchestration instance is inserted into storehouse by step S401;
Stack is a kind of linear list that operation is limited, and only in one end of table, fortune is inserted into and is deleted to (i.e. stack top) for limitation It calculates, step S401 is actually that currently processed node pushes on step.In the present embodiment, such as problem above is described, currently processed Node can be the countersign in user-defined orchestration instance as shown in Figure 1 or the node of exclusive or type, i.e. " countersign 1 " Node, " countersign 2 " node.
Step S402 obtains the preposition node set of currently processed node according to orchestration instance;
In the present embodiment, preposition node set can be the gateway type node in orchestration instance, such as point in Fig. 7 Zhi Jiedian, countersign node, exclusive or node etc..
Step S403, selecting any preposition node in the preposition node set is node undetermined;
Step S404 detects whether the node undetermined is branch pattern node, if so, entering step S405;If not, Execute step S407;Step S405 deletes currently processed node from storehouse;
Step S406, whether detection current stack is empty stack, if not, return step S402;If so, returning to section undetermined Point;
Step S407 detects whether the node undetermined is countersign or exclusive or type node, if not, return step S402; If so, entering step S408;
The node undetermined is inserted into storehouse, and return step S402 by step S408.
As it can be seen that, if currently processed node is " countersign 1 " node, matched preposition node is point in the present embodiment Branch type node will return to branch node execution according to the above-mentioned steps that the present embodiment describes;If currently processed node is " countersign 2 ", there is countersign node and exclusive or node in preposition node, that is to say, that preposition node of the circulation to " countersign 2 " node There are " countersign 1 " node and " exclusive or 1 " node, in the manner described above, can determine nearest point that the two nodes match respectively Zhi Jiedian is " branch 2 " node and " branch 3 " node, may further determine the closest branch section that " countersign 2 " node matches Point should be " branch 1 " node, so, when business process flow goes to " countersign 2 " node, its closest branch section can be returned Point, i.e. return " branch 1 " node, so as to all paths inquired between " branch 1 " node and " countersign 2 " node.
It is to be appreciated that about the reality for conutersigning the respective closest branch node of node and exclusive or node in inquiry business flow instance Existing method, it is not limited to the method for the present embodiment description.
Application scenarios are described in conjunction with above-described embodiment, the application can be using the internode path traversal based on DFSP algorithm Strategy, to obtain the road between countersign node (or exclusive or node) and its closest branch node (branch node to match) Diameter is still illustrated so that operation flow shown in Fig. 7 defines figure as an example, referring to Fig.1 flow diagram shown in 1, is obtained different The process in the path between type node may include but be not limited to following steps:
Step S501 obtains operation flow description information, determines the branch node in the operation flow description information, and will The branch node is inserted into storehouse;
Step S502 obtains not visited node set after the stack top node of the current storehouse;
If the node after stack top node there are not visited node, illustrates to deposit between the branch node and countersign node It is not queried at least one path;Conversely, all paths between two nodes that explanation inquires.
Step S503, the next stage for detecting the branch node execute whether node is countersign in operation flow description information Node, if not, entering step S504;If it is;Enter step S505;
The next stage is executed node and is inserted into storehouse, return step S501, until storehouse is empty stack by step S504;
Step S505 obtains the path between the branch node and the countersign node, and exports the path of acquisition.
By taking all paths between acquisition " branch 1 " node and " countersign 2 " node as an example, 1 node of branch is pushed on, if stack There are the node set of not visited mistake after top node, the next stage for detecting 1 node of branch executes whether node is countersign 2 Node, if so, 1 node of branch is obtained to the path of 2 node of countersign, if not, next stage execution node is pushed on, Continuing to test stack top node in the manner described above, there are not visited node sets later, and its its next stage is executed node It whether is " countersign 2 ", until obtaining branch 1 and conutersigning all paths between 2 nodes, i.e., currently processed node is not interviewed The next stage asked executes node.
It is to be appreciated that about the path query method between different type node, it is not limited to the present embodiment description The above method, can also use other depth optimization algorithms, and the application is no longer described in detail one by one.
In operation flow, it will usually encounter the circulation feelings rejected from currently processed node to a certain execution node before Condition just needs to be implemented reject strategy to realize that this operation flow circulates, specifically with " current pending node is rejected to front at this time Be illustrated for this application scenarios of any processed node ", referring to operation flow shown in Fig. 7 define scheme, can from " examine 6 " nodes are criticized to reject to " examination & approval 2 " node.It, can be with using the realization process for rejecting strategy in order to realize the application scenarios content Are as follows:
The next stage for obtaining the rejection node of operation flow description information executes node, and detecting next stage execution node is No is terminal node or end node, if so, terminating process;It is added to if not, the next stage of instantiation is executed node List to be adjusted, and as currently processed node, continue to detect its next stage execution node, until terminal node Or end node, finally, the state of each node in list to be adjusted is adjusted to rejection state, and the state that will reject node It is adjusted to state in processing.
As it can be seen that the present embodiment executes the rejection strategy, it can will examine 6 nodes and examine all nodes between 2 nodes The example state processing status that is updated to rejection state, and adjusts examination & approval 2 be " in processing ", regenerate 2 links of examination & approval It is pending to handle people, by this rejection mode of operation, realizes the unification of the example state to node each in orchestration instance It updates, ensure that the atomicity of operation.
For the exclusive or Xor node in orchestration instance, can circulate strategy execution according to exclusive or, such as to encounter Xor When type node, cleaning is using current XOR node to be all untreated pending in the source branch of terminal note;As process is gone to For node " exclusive or 1 " this operation flow description information, exclusive or used in this application circulation strategy is illustrated, that is, is realized The policy content of exclusive or process in the operation flow may include:
It is illustrated so that current exclusive or node is terminal node as an example, the closest branch node described using foregoing embodiments Matching strategy, the Look-ahead exclusive or node match branch node recently, and the nearest matching branch node found is to start to save Point, exclusive or node is terminal node, according to internode path traversal strategies given above, inquires between the two nodes and owns Path, the still untreated pending branch node of each branch node of forced termination, and node state is adjusted, it obtains next stage and executes section Point and automatic flow, wherein the processing status of orchestration instance interior joint usually may include initial value, in processing, located Reason and be rejected etc. four kinds of states.
For in orchestration instance implementation procedure, processing result is the node for not passing through or vetoing, the application is usually held Row can terminate policy map 7, specifically in such a case, it is possible to judge automatically whether entire orchestration instance can terminate, such as exist Operation flow shown in Fig. 7 defines in figure, and " audit 4 " node does not pass through, can be as follows for this application scenarios It realizes:
It is possible, firstly, to be obtained between start node and terminal node using above-described internode path traversal strategies All paths, secondly, that is, certain node serve is not tied in the path with the presence or absence of path is not terminated in the acquired path of judgement Beam is not carried out, if it does, process can not terminate, can maintain currently processed node, this is waited not terminate in path The corresponding services of each node finishes;If it does not, updating the example state of terminal node, and terminate process.
Join can be executed for the countersign type node in orchestration instance in conjunction with the description of the various embodiments described above Countersign circulation strategy, determines the circulation of countersign type node, specifically can judge automatically the industry when encountering countersign type node Whether business flow instance can circulate to next step, still by taking operation flow shown in Fig. 7 defines figure as an example, go to " countersign 2 " section Point, if can circulate to examination & approval 6, concrete processing procedure is as follows:
The nearest matched branch node (branch 1) for obtaining countersign node (countersign 2), inquires the branch node and countersign saves All paths between point, and obtain the countersign node upper level and examine the node passed through, in all paths inquired, mistake The path for the node that filter passes through comprising upper level examination & approval;It obtains in branch node next stage node (such as examination & approval 2, examination & approval 3) not The node of instantiation, then from remaining path, the path comprising the uninstantiated node is filtered out, judge last remaining road The last one in diameter executes whether branch node passes through, if passed through, the next stage node of the automatic flow countersign node, such as Fruit does not pass through, will wait in the countersign node, passes through until the last one executes branch node.
It is to be appreciated that during each branch process of operation flow, it can be real using the corresponding strategy such as the example above It is existing, but it is not limited to strategy described herein, it can be adjusted flexibly according to actual needs.
In conclusion determining currently processed node for countersign node or exclusive or node in operation flow implementation procedure In the case where, it can use closest branch node matching strategy, determine the nearest matching branch node of currently processed node, then time Go through this it is nearest matching branch node and currently processed node between path after, determine in these paths exist do not terminate path, It will be maintained at currently processed node, execute the corresponding service of each node not terminated in path;If not deposited in these paths not eventually Only path, updates the example state of currently processed node, and circulation to next stage executes node.
The business flow processing method that the new workflow engine that the application described based on the above embodiment proposes is realized, By in the computer equipment configured with 4 core of Windows i7,8 thread 8GB memory, 2.8 version of Redis Windows The pressure for carrying out process interface is surveyed, and obtains test result as shown in figure 12, wherein in Figure 12,1000/20 can be indicated: altogether 1000 requests are initiated, the follow-up data of each concurrent request 20, abscissa can be with the rest may be inferred.As it can be seen that the work of the application The concurrency performance of work stream engine is in 900~1000/QPS (Query Per Second, query rate per second), compared to K2, and Activiti shown in Figure 13 all apparent performance boost.
In addition, from the point of view of flow tracking performance, certain orchestration instance figure, this Shen under production environment shown in 4 referring to Fig.1 It please be using graphical description operation flow, so that the example state displaying of orchestration instance is more intuitive.Further, this Shen Please can also be by adjusting the display state of the node of different conditions, such as change currently processed node background color, so that working as Pre-treatment node is more obvious compared to other nodes, such as the node for having executed completion is shown in green;The section being not carried out Point is using blue expression etc..
In addition, under production environment described above, extraction section is nearest from the point of view of production environment interface requests time-consuming Access log, the available time-consuming statistical result of request shown in 5 referring to Fig.1, as shown in Figure 15, the application workflow engine Each interface overall performance is stablized, and average response time largely maintains 10 milliseconds or so.
Referring to Fig.1 6, it is a kind of structural schematic diagram of business flow processing device provided by the embodiments of the present application, the device May include:
Detection module 21, for detecting the example state of each node in orchestration instance;
First memory module 22, in the case where the example state shows the unclosed situation of the orchestration instance, The instance data of the orchestration instance is cached to first database;
Second memory module 23, for inciting somebody to action in the case where the example state shows that the orchestration instance terminates The instance data of the orchestration instance of the first database caching is synchronized to the second database, and deletes described first The instance data of the orchestration instance of database caches.
Optionally, as shown in figure 17, which can also include:
Message capturing module 24, for obtaining business request information, the business request information is by calling corresponding message The mode of interface generates;
Message response module 25 obtains the orchestration instance of this request for responding the business request information;
Instant node processing module 26 executes the Business Stream for the instance data using the orchestration instance The corresponding service of each node in journey example, and update the example state of respective nodes;
Data transmission module 27, for the example state of the instance data and updated node to be fed back to client End.
Optionally, above-mentioned message response module 25 may include:
Initialization unit initializes example context class for the type according to the business request information, obtains corresponding Business Stream example;
Correspondingly, instant node processing module 26 may include:
First determination unit, for determining the currently processed node of the orchestration instance;
First updating unit updates the reality of the currently processed node for the type according to the currently processed node Example state and instance data;
Second updating unit, for executing sequence according to the orchestration instance interior joint, according to described currently processed The next stage of node executes the type of node, updates example state and instance data that corresponding next stage executes node.
Optionally, which can also include:
Data obtaining module, for obtaining operation flow description information;
Operation flow realizes module, for obtaining and the operation flow using at least one instant node processing strategie The operation flow that description information matches, the operation flow include the stream between the different nodes of the orchestration instance Turn;
Wherein, the instant node processing strategie include closest branch node matching strategy, internode path traversal strategies, It rejects strategy, exclusive or circulation strategy, one or more of tactful and countersign circulation strategy combination can be terminated.
In the present embodiment, which realizes that module may include:
Recently matching branch node determination unit, for the currently processed node in orchestration instance be countersign node or In the case where exclusive or node, using closest branch node matching strategy, the nearest matching branch node of currently processed node is determined;
Path acquiring unit, for traversing the road between the nearest matching branch node and the currently processed node Diameter;
First processing units maintain the currently processed node, hold if not terminating path for existing in the path The row corresponding service of each node not terminated in path;
Third updating unit updates the example shape of currently processed node if not terminating path for not depositing in the path State.
In addition, the device can also include:
Data interaction module realizes the data interaction with operation system for using synchronous interaction mode.
The process that corresponding function is realized about above-mentioned each virtual module, is referred to the description of above method embodiment, this Embodiment is not described further.
The embodiment of the present application also provides a kind of storage mediums, are stored thereon with computer program, the computer program It is executed by processor, realizes each step of business flow processing method as described above.
The embodiment of the present application also provides a kind of computer equipment, which can be above-mentioned application server, such as Shown in Figure 18, the hardware configuration of the computer equipment may include: communication interface 31, memory 32 and processor 33;
In the embodiment of the present application, communication interface 31, memory 32, processor 33 can be realized mutual by communication bus Between communication, and the communication interface 31, memory 32, processor 33 and communication bus quantity can be at least one.
Optionally, communication interface 31 can be the interface of communication module, such as the interface of gsm module;
Processor 33 may be a central processor CPU or specific integrated circuit ASIC (Application Specific Integrated Circuit), or be arranged to implement the integrated electricity of one or more of the embodiment of the present application Road.
Memory 32 may include high speed RAM memory, it is also possible to further include nonvolatile memory (non-volatile Memory), a for example, at least magnetic disk storage.
Wherein, memory 2 is stored with computer program, the computer program that processor 33 calls memory 32 to be stored, To realize each step of the above-mentioned business flow processing method applied to computer equipment, specific implementation process is referred to above-mentioned The description of embodiment of the method corresponding portion.
Each embodiment in this specification is described in a progressive manner, the highlights of each of the examples are with other The difference of embodiment, the same or similar parts in each embodiment may refer to each other.For device disclosed in embodiment, For computer equipment, since it is corresponded to the methods disclosed in the examples, so be described relatively simple, related place referring to Method part illustration.
Professional further appreciates that, unit described in conjunction with the examples disclosed in the embodiments of the present disclosure And algorithm steps, can be realized with electronic hardware, computer software, or a combination of the two, in order to clearly demonstrate hardware and The interchangeability of software generally describes each exemplary composition and step according to function in the above description.These Function is implemented in hardware or software actually, the specific application and design constraint depending on technical solution.Profession Technical staff can use different methods to achieve the described function each specific application, but this realization is not answered Think beyond scope of the present application.
The step of method described in conjunction with the examples disclosed in this document or algorithm, can directly be held with hardware, processor The combination of capable software module or the two is implemented.Software module can be placed in random access memory (RAM), memory, read-only deposit Reservoir (ROM), electrically programmable ROM, electrically erasable ROM, register, hard disk, moveable magnetic disc, CD-ROM or technology In any other form of storage medium well known in field.
The foregoing description of the disclosed embodiments makes professional and technical personnel in the field can be realized or use the application. Various modifications to these embodiments will be readily apparent to those skilled in the art, as defined herein General Principle can be realized in other embodiments in the case where not departing from the core concept or range of the application.Therefore, originally Application is not intended to be limited to the embodiments shown herein, and is to fit to and the principles and novel features disclosed herein Consistent widest scope.

Claims (10)

1. a kind of business flow processing method, which is characterized in that the described method includes:
Detect the example state of each node in orchestration instance;
In the case where the example state shows the unclosed situation of the orchestration instance, by the example of the orchestration instance Data buffer storage is to first database;
In the case where the example state shows that the orchestration instance terminates, the first database is cached described in The instance data of orchestration instance is synchronized to the second database, and deletes the operation flow of the first database caching The instance data of example.
2. the method according to claim 1, wherein the method also includes:
Business request information is obtained, the business request information generates by way of calling corresponding message interface;
The business request information is responded, the orchestration instance of this request is obtained;
Using the instance data of the orchestration instance, the corresponding service of each node in the orchestration instance is executed, and Update the example state of respective nodes;
The example state of the instance data and updated node is fed back into client.
3. according to the method described in claim 2, it is characterized in that, the response business request information, obtains this and asks The orchestration instance asked executes each node in the orchestration instance using the instance data of the orchestration instance Corresponding service, and update the example state of respective nodes, comprising:
According to the type of the business request information, example context class is initialized, corresponding Business Stream example is obtained;
Determine the currently processed node of the orchestration instance;
According to the type of the currently processed node, the example state and instance data of the currently processed node are updated;
Sequence is executed according to the orchestration instance interior joint, the next stage according to the currently processed node executes node Type updates example state and instance data that corresponding next stage executes node.
4. according to the method described in claim 2, it is characterized in that, the method also includes:
Obtain operation flow description information;
Using at least one instant node processing strategie, the operation flow to match with the operation flow description information is obtained, The operation flow includes the circulation between the different nodes of the orchestration instance;
Wherein, the instant node processing strategie includes closest branch node matching strategy, internode path traversal strategies, rejects Strategy, can terminate one or more of tactful and countersign circulation strategy combination at exclusive or circulation strategy.
5. according to the method described in claim 4, it is characterized in that, at least one instant node processing strategie of the utilization, obtains To the operation flow to match with the operation flow description information, comprising:
In the case where the currently processed node of the orchestration instance is countersign node or exclusive or node, closest branch is utilized Node matching strategy determines the nearest matching branch node of the currently processed node;
Traverse the path between the nearest matching branch node and the currently processed node;
Path is not terminated if existing in the path, maintains the currently processed node, and execution is described not to be terminated in path The corresponding service of each node;
If not depositing in the path and not terminating path, the example state of the currently processed node is updated.
6. according to the described in any item methods of claim 2~5, which is characterized in that the method also includes:
Using synchronous interaction mode, the data interaction with operation system is realized.
7. a kind of business flow processing device, which is characterized in that described device includes:
Detection module, for detecting the example state of each node in orchestration instance;
First memory module will be described in the case where the example state shows the unclosed situation of the orchestration instance The instance data of orchestration instance is cached to first database;
Second memory module, in the case where the example state shows that the orchestration instance terminates, by described The instance data of the orchestration instance of one database caches is synchronized to the second database, and deletes the first database The instance data of the orchestration instance of caching.
8. device according to claim 7, which is characterized in that described device further include:
Data obtaining module, for obtaining operation flow description information;
Operation flow realizes module, for obtaining describing with the operation flow using at least one instant node processing strategie The operation flow that information matches, the operation flow include the circulation between the different nodes of the orchestration instance;
Wherein, the instant node processing strategie includes closest branch matching strategy, internode path traversal strategies, rejects plan Slightly, exclusive or circulation strategy, can terminate strategy and countersign circulation strategy one or more of combination.
9. a kind of storage medium, is stored thereon with computer program, which is characterized in that the computer program is held by processor Row realizes each step of the business flow processing method as described in claim 1-10 any one.
10. a kind of computer equipment, which is characterized in that the computer equipment includes:
Communication interface;
Memory, for storing the computer journey for realizing the business flow processing method as described in claim 1-10 any one Sequence;
Processor, for recording and executing the computer program of the memory storage, the computer program is for realizing such as Each step of business flow processing method described in claim 1-10 any one.
CN201910313907.6A 2019-04-18 2019-04-18 Business process processing method and device, storage medium and computing equipment Active CN110032571B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910313907.6A CN110032571B (en) 2019-04-18 2019-04-18 Business process processing method and device, storage medium and computing equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910313907.6A CN110032571B (en) 2019-04-18 2019-04-18 Business process processing method and device, storage medium and computing equipment

Publications (2)

Publication Number Publication Date
CN110032571A true CN110032571A (en) 2019-07-19
CN110032571B CN110032571B (en) 2023-04-18

Family

ID=67239109

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910313907.6A Active CN110032571B (en) 2019-04-18 2019-04-18 Business process processing method and device, storage medium and computing equipment

Country Status (1)

Country Link
CN (1) CN110032571B (en)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110502523A (en) * 2019-08-01 2019-11-26 广东浪潮大数据研究有限公司 Business datum storage method, device, server and computer readable storage medium
CN110795437A (en) * 2019-11-04 2020-02-14 泰康保险集团股份有限公司 Service processing method, system, device and computer readable storage medium
CN111105210A (en) * 2019-12-19 2020-05-05 北京金山云网络技术有限公司 Approval task processing method and device, electronic equipment and storage medium
CN111241455A (en) * 2020-01-22 2020-06-05 北京字节跳动网络技术有限公司 Data processing apparatus, computer device, and storage medium
CN111309294A (en) * 2020-02-29 2020-06-19 苏州浪潮智能科技有限公司 Business processing method and device, electronic equipment and storage medium
CN111324629A (en) * 2020-02-19 2020-06-23 望海康信(北京)科技股份公司 Business data processing method and device, electronic equipment and computer storage medium
CN111562982A (en) * 2020-04-28 2020-08-21 北京金堤科技有限公司 Request data processing method and device, computer readable storage medium and electronic equipment
CN111652468A (en) * 2020-04-27 2020-09-11 平安医疗健康管理股份有限公司 Business process generation method and device, storage medium and computer equipment
CN111651522A (en) * 2020-05-27 2020-09-11 泰康保险集团股份有限公司 Data synchronization method and device
CN112347103A (en) * 2020-11-05 2021-02-09 深圳市极致科技股份有限公司 Data synchronization method and device, electronic equipment and storage medium
CN112685499A (en) * 2020-12-30 2021-04-20 珠海格力电器股份有限公司 Method, device and equipment for synchronizing process data of work service flow
CN112785263A (en) * 2021-01-22 2021-05-11 山西青峰软件股份有限公司 Method and system for dynamically generating flow model by workflow engine
CN113282585A (en) * 2021-05-28 2021-08-20 山东浪潮通软信息科技有限公司 Report calculation method, device, equipment and medium
CN113312181A (en) * 2021-06-21 2021-08-27 浪潮云信息技术股份公司 High-concurrency workflow approval method based on activiti custom form
CN113360365A (en) * 2020-03-03 2021-09-07 北京同邦卓益科技有限公司 Flow testing method and flow testing system
CN114510495A (en) * 2022-04-21 2022-05-17 北京安华金和科技有限公司 Database service data consistency processing method and system
CN114691547A (en) * 2019-12-31 2022-07-01 华为云计算技术有限公司 Method for deploying instances, instance management node, computing node and computing equipment

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102043625A (en) * 2010-12-22 2011-05-04 中国农业银行股份有限公司 Workflow operation method and system
CN102521712A (en) * 2011-12-27 2012-06-27 东软集团股份有限公司 Process instance data processing method and device
CN105760452A (en) * 2016-02-04 2016-07-13 深圳市嘉力达实业有限公司 Method and system for collection, processing and storage of high-concurrency mass data
CN106528898A (en) * 2017-01-04 2017-03-22 泰康保险集团股份有限公司 Method and device for converting data of non-relational database into relational database
CN107133309A (en) * 2017-04-28 2017-09-05 东软集团股份有限公司 Storage, querying method and the device of flow instance, storage medium and electronic equipment
CN107220310A (en) * 2017-05-11 2017-09-29 中国联合网络通信集团有限公司 A kind of database data management system, method and device
CN107291887A (en) * 2017-06-21 2017-10-24 北京中泰合信管理顾问有限公司 LNMP frameworks realize the process management system of software implementation
US9852220B1 (en) * 2012-10-08 2017-12-26 Amazon Technologies, Inc. Distributed workflow management system
CN107783974A (en) * 2016-08-24 2018-03-09 阿里巴巴集团控股有限公司 Data handling system and method
CN108228252A (en) * 2017-12-26 2018-06-29 阿里巴巴集团控股有限公司 Business processing and operation flow configuration method, device and equipment
CN108319654A (en) * 2017-12-29 2018-07-24 中国银联股份有限公司 Computing system, cold and hot data separation method and device, computer readable storage medium
CN109150929A (en) * 2017-06-15 2019-01-04 北京京东尚科信息技术有限公司 Data request processing method and apparatus under high concurrent scene

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102043625A (en) * 2010-12-22 2011-05-04 中国农业银行股份有限公司 Workflow operation method and system
CN102521712A (en) * 2011-12-27 2012-06-27 东软集团股份有限公司 Process instance data processing method and device
US9852220B1 (en) * 2012-10-08 2017-12-26 Amazon Technologies, Inc. Distributed workflow management system
CN105760452A (en) * 2016-02-04 2016-07-13 深圳市嘉力达实业有限公司 Method and system for collection, processing and storage of high-concurrency mass data
CN107783974A (en) * 2016-08-24 2018-03-09 阿里巴巴集团控股有限公司 Data handling system and method
CN106528898A (en) * 2017-01-04 2017-03-22 泰康保险集团股份有限公司 Method and device for converting data of non-relational database into relational database
CN107133309A (en) * 2017-04-28 2017-09-05 东软集团股份有限公司 Storage, querying method and the device of flow instance, storage medium and electronic equipment
CN107220310A (en) * 2017-05-11 2017-09-29 中国联合网络通信集团有限公司 A kind of database data management system, method and device
CN109150929A (en) * 2017-06-15 2019-01-04 北京京东尚科信息技术有限公司 Data request processing method and apparatus under high concurrent scene
CN107291887A (en) * 2017-06-21 2017-10-24 北京中泰合信管理顾问有限公司 LNMP frameworks realize the process management system of software implementation
CN108228252A (en) * 2017-12-26 2018-06-29 阿里巴巴集团控股有限公司 Business processing and operation flow configuration method, device and equipment
CN108319654A (en) * 2017-12-29 2018-07-24 中国银联股份有限公司 Computing system, cold and hot data separation method and device, computer readable storage medium

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CHEN WU等: "A NoSQL–SQL Hybrid Organization and Management Approach for Real-Time Geospatial Data: A Case Study of Public Security Video Surveillance" *
卢金晨: "基于PaaS的电子政务服务平台框架研究" *

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110502523A (en) * 2019-08-01 2019-11-26 广东浪潮大数据研究有限公司 Business datum storage method, device, server and computer readable storage medium
CN110795437A (en) * 2019-11-04 2020-02-14 泰康保险集团股份有限公司 Service processing method, system, device and computer readable storage medium
CN110795437B (en) * 2019-11-04 2023-01-31 泰康保险集团股份有限公司 Service processing method, system, device and computer readable storage medium
CN111105210A (en) * 2019-12-19 2020-05-05 北京金山云网络技术有限公司 Approval task processing method and device, electronic equipment and storage medium
CN114691547B (en) * 2019-12-31 2023-05-12 华为云计算技术有限公司 Method for deploying instance, instance management node, computing node and computing device
CN114691547A (en) * 2019-12-31 2022-07-01 华为云计算技术有限公司 Method for deploying instances, instance management node, computing node and computing equipment
CN111241455A (en) * 2020-01-22 2020-06-05 北京字节跳动网络技术有限公司 Data processing apparatus, computer device, and storage medium
CN111241455B (en) * 2020-01-22 2023-08-25 抖音视界有限公司 Data processing apparatus, computer device, and storage medium
CN111324629B (en) * 2020-02-19 2023-08-15 望海康信(北京)科技股份公司 Service data processing method and device, electronic equipment and computer storage medium
CN111324629A (en) * 2020-02-19 2020-06-23 望海康信(北京)科技股份公司 Business data processing method and device, electronic equipment and computer storage medium
US11704139B2 (en) 2020-02-29 2023-07-18 Inspur Suzhou Intelligent Technology Co., Ltd. Service processing method and apparatus, electronic device, and storage medium
CN111309294A (en) * 2020-02-29 2020-06-19 苏州浪潮智能科技有限公司 Business processing method and device, electronic equipment and storage medium
CN111309294B (en) * 2020-02-29 2022-06-07 苏州浪潮智能科技有限公司 Business processing method and device, electronic equipment and storage medium
CN113360365A (en) * 2020-03-03 2021-09-07 北京同邦卓益科技有限公司 Flow testing method and flow testing system
CN113360365B (en) * 2020-03-03 2024-04-05 北京同邦卓益科技有限公司 Flow test method and flow test system
CN111652468A (en) * 2020-04-27 2020-09-11 平安医疗健康管理股份有限公司 Business process generation method and device, storage medium and computer equipment
CN111562982B (en) * 2020-04-28 2023-09-19 北京金堤科技有限公司 Method and device for processing request data, computer readable storage medium and electronic equipment
CN111562982A (en) * 2020-04-28 2020-08-21 北京金堤科技有限公司 Request data processing method and device, computer readable storage medium and electronic equipment
CN111651522A (en) * 2020-05-27 2020-09-11 泰康保险集团股份有限公司 Data synchronization method and device
CN112347103A (en) * 2020-11-05 2021-02-09 深圳市极致科技股份有限公司 Data synchronization method and device, electronic equipment and storage medium
CN112347103B (en) * 2020-11-05 2024-04-12 深圳市极致科技股份有限公司 Data synchronization method, device, electronic equipment and storage medium
CN112685499A (en) * 2020-12-30 2021-04-20 珠海格力电器股份有限公司 Method, device and equipment for synchronizing process data of work service flow
CN112785263A (en) * 2021-01-22 2021-05-11 山西青峰软件股份有限公司 Method and system for dynamically generating flow model by workflow engine
CN113282585A (en) * 2021-05-28 2021-08-20 山东浪潮通软信息科技有限公司 Report calculation method, device, equipment and medium
CN113282585B (en) * 2021-05-28 2023-12-29 浪潮通用软件有限公司 Report calculation method, device, equipment and medium
CN113312181A (en) * 2021-06-21 2021-08-27 浪潮云信息技术股份公司 High-concurrency workflow approval method based on activiti custom form
CN114510495B (en) * 2022-04-21 2022-07-08 北京安华金和科技有限公司 Database service data consistency processing method and system
CN114510495A (en) * 2022-04-21 2022-05-17 北京安华金和科技有限公司 Database service data consistency processing method and system

Also Published As

Publication number Publication date
CN110032571B (en) 2023-04-18

Similar Documents

Publication Publication Date Title
CN110032571A (en) Business flow processing method, apparatus, storage medium and calculating equipment
US10853354B2 (en) Method of generating globally verifiable unique identifiers using a scalable interlinked blockchain structure
CN109522735B (en) Data permission verification method and device based on intelligent contract
AU2020261982B2 (en) Extracting data from a blockchain network
CN105074702B (en) The Database Systems of single tenant and multi-tenant environment are provided
CN112153085B (en) Data processing method, node and block chain system
CN102843366B (en) A kind of network resource accession authority control method and device
CN110537182A (en) The system and method for representative state transfer agent service are provided for block chain cloud service
CN111213340A (en) Selecting and securing attestation delegations for cryptographic functions
CN104639650B (en) A kind of fine granularity distributed interface access control method and device
DE112021002797T5 (en) PRIVACY PRESERVING ARCHITECTURE FOR AUTHORIZED BLOCKCHAINS
US20230080808A1 (en) Database system public trust ledger multi-owner token architecture
US11954094B2 (en) Database system public trust ledger architecture
CN106921721A (en) A kind of server, conversation managing method and system
CN108140176A (en) Search result is concurrently identified from the local search and long-range search to communication
CN106126629A (en) A kind of master data management method and system based on live industry
CN114331428A (en) Non-homogeneous evidence-based distribution method and device
US11880372B2 (en) Distributed metadata definition and storage in a database system for public trust ledger smart contracts
US20230368185A1 (en) Public trust ledger smart contract token transfer in a database system
US20230085481A1 (en) Database system public trust token redeem architecture using wallets
US20230080927A1 (en) Database system public trust ledger token creation and exchange
KR20200048708A (en) Method for providing encryption communication in a distributed computing resource shring system based on block chain
JP7327781B2 (en) Matching support device, matching support method, computer program and recording medium
US20230367766A1 (en) Environmental impact tracking in public trust ledger actions via a database system
US20190158418A1 (en) Exchange hosting server

Legal Events

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