CN110032571A - Business flow processing method, apparatus, storage medium and calculating equipment - Google Patents
Business flow processing method, apparatus, storage medium and calculating equipment Download PDFInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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
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.
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)
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)
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 |
-
2019
- 2019-04-18 CN CN201910313907.6A patent/CN110032571B/en active Active
Patent Citations (12)
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)
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)
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 |