CN107729388B - XML protocol-based app server implementation method - Google Patents

XML protocol-based app server implementation method Download PDF

Info

Publication number
CN107729388B
CN107729388B CN201710846638.0A CN201710846638A CN107729388B CN 107729388 B CN107729388 B CN 107729388B CN 201710846638 A CN201710846638 A CN 201710846638A CN 107729388 B CN107729388 B CN 107729388B
Authority
CN
China
Prior art keywords
node
rule
app server
attribute
application program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710846638.0A
Other languages
Chinese (zh)
Other versions
CN107729388A (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.)
DBAPPSecurity Co Ltd
Original Assignee
DBAPPSecurity 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 DBAPPSecurity Co Ltd filed Critical DBAPPSecurity Co Ltd
Priority to CN201710846638.0A priority Critical patent/CN107729388B/en
Publication of CN107729388A publication Critical patent/CN107729388A/en
Application granted granted Critical
Publication of CN107729388B publication Critical patent/CN107729388B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/83Querying

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention relates to the technical field of information, and aims to provide an application server implementation method based on an XML protocol. The method for implementing the XML-protocol-based app server is used for calling and managing application programs, and comprises the following implementation steps: request analysis, task scheduling and information feedback. The invention realizes the app server in a simple mode, and the app server can manage the calling program, feed back the obtained result in time and feed back the operation progress through comprehensive operation.

Description

XML protocol-based app server implementation method
Technical Field
The invention relates to the technical field of information, in particular to an application server implementation method based on an XML protocol.
Background
As information technology has developed, distributed and clustered technologies have become more widely utilized, and distributed computing has become more well known. In the distributed computing process, the single-machine computing scheduling is an important link, receives computing tasks from a scheduling server, directly or indirectly feeds back results to the scheduling server after computing, and finally reduces and merges into final results.
In a stand-alone computing process, often one computer can accept multiple subtasks at once in a distributed computing task. During scheduling, a proper amount of subtasks are combined into one subtask set, which can play a role in simplifying the task initialization process, and meanwhile, part of task scheduling burden of the scheduling server is shared to the computing server, so that the utilization rate of resources is improved.
The single-machine calculation has two forms, one is that a complex distributed system opens an operation development interface, a program developed aiming at the interface specification is deployed to each computer environment by a scheduling program, and the program interacts with the distributed system; the other is to directly deploy the program in the single-computer environment to each computer environment, and the environment management module calls and manages the program, and directly performs input and output interaction with the program at the system level (such as pipelines, files, networks and the like). The second method has simple development cost, does not need to know a complex distribution system interface, and can be used as a stand-alone program if the stand-alone program is available. For such a computing server we call an app server.
The existing similar servers comprise web servers and cloud computing servers constructed by various large companies, the web servers such as apache can call application programs through functions such as Java and the like, but the coding process is complex; the building process of the cloud server of each big company is more complicated, and the method is suitable for light-weight deployment and flexible modification of application scenes.
Disclosure of Invention
The main purpose of the present invention is to overcome the deficiencies in the prior art, and to provide a method for easily transforming single-machine computing into distributed computing by using the existing single-machine application program, combining with the app service program and the calling rule template. In order to solve the technical problem, the solution of the invention is as follows:
there is provided an XML protocol-based app server implementation method for call management of an application (an application having explicit output such as console output and logging), specifically including the steps of:
(1) requesting for analysis;
the method comprises the steps that an app server receives a scheduling request message in an XML format (a piece of network transmission data in the XML format contains all information which needs to be input by a user when the app server calls an application program), rule matching is conducted on the scheduling request message through a rule configuration file (for example, the content or attribute of an XML node which accords with a specified XPath meets the specified regular matching), key information (the route, calling parameters and the like of the application program which needs to be called) in the scheduling request message is extracted, and a scheduling command is formed to schedule the application program;
the app server can communicate with the scheduling server, receive a request sent by the scheduling server, call an application program to obtain an output result and feed the output result back to the scheduling server;
the scheduling server is used for receiving the input of the user, sorting the scheduling request to be sent to the app server, analyzing the result fed back by the app server and presenting the result to the user;
the rule configuration file is provided with a plurality of rule groups, and each rule group comprises a request matching rule and a parameter processing rule; the request matching rule defines a section of XPath expression and a regular expression, and when the XPath expression successfully marks the request message and the marking result can be matched with the regular expression, the app server processes the request by using the rule group; the parameter processing rule is any XML node, each node processes the matched data by utilizing the processing supported by the app server according to the sequence, the processing mode is not limited, the nodes are distinguished according to the node names, and the processing is realized by the app server (for example, mathematical operation on digital content, logic operation is carried out after regular matching is carried out on marked content, formatted output content is stored in a file, the formatted output content is sent to the scheduling server, and an application program is called); different rule sets are used to execute different applications, and the different rules in each rule set can cooperate to control various normal actions (e.g., start, pause, stop, resume) and other special operations (e.g., input to the console of the application) of the application; in the parameter processing rule, if the main processing is to obtain its output result by calling the application program, there is an output processing rule, which filters and processes the output (including but not limited to console output and log output) of the called application program (including but not limited to notifying the scheduling server, saving to a file, and the filtering and processing procedure is similar to the filtering and processing procedure in the parameter processing rule);
(2) scheduling tasks;
when a new application program call is requested to be started, the app server executes the application program according to the scheduling command formed in the step (1), and records the application program specified in the execution information (such as the process ID) according to the execution rule in the complied rule group for calling;
when the application program which is executing or the process is in the suspended state is subjected to special operation (suspending, stopping, continuing to execute or other special operation), the app server performs special operation (suspending or ending or other special operation) on the corresponding application program process and feeds back the operation result to the scheduling server;
(3) information feedback is carried out;
when the app server filters out the key output content according to the request matching rule and the parameter processing rule (i.e., the request matching rule and the parameter processing rule described in the rule configuration file in step (1)), the app server processes the key output content according to the output data and the subsequent output processing rule (i.e., the output processing rule described in the rule configuration file in step (1)), and feeds back the key output content to the scheduling server as needed.
In the present invention, the regular matching, the labeling and the xpath matching (i.e. request parsing, task scheduling and information feedback) specifically includes the following steps:
step (1A): the app server traverses the request matching rules of each rule group in the rule configuration file, matches the scheduling request message in the XML format by using each x request matching rule, and traverses the sub-items of the first matched request matching rule;
step (1B): the request matching rule sub item is combined with the realization of the app service program, and the data marked by the request matching rule is used for calling the application program, accessing files, performing logic and mathematical operation and feeding back results;
step (1C): after the app server calls the application program related to the task, the rule configuration file extracts and processes (marks key content) the output (pipelines, files, networks and the like) of the application program through regular matching, and the rule configuration file is used for managing the progress, the result and the state of the application program in the scheduling process.
In the invention, the rule configuration file can be customized.
In the present invention, the rule configuration file is in an XML format, and the app server has a corresponding function for implementing XML nodes with different names in the parameter processing rule and the output processing rule, specifically:
requesting to identify the node: the app server traverses each request identification node under the root node in the rule definition file, matches the scheduling request message in the XML format by using the appointed XPath of the request identification node, and processes the child nodes of the request identification node if the appointed node exists; if the < handler path ═ is/parameters [ item [ @ key ═ act' and text () ] ] "> … </handler >, the app service traverses each handler node under the root node in the rule definition file, matches the XML message of the scheduling request with the xpath specified by the path attribute, and processes the child nodes of the handler if the specified node exists;
parameter marking nodes: the node declares a parameter (the value is derived from a variable of the request content), the name of the node is param, the name attribute represents the name of the parameter, and the path attribute comprises an XPath expression and is used for marking the specific content of the position of the parameter in the request content; if < param name [ @ key ═ item [ @ key ═ target' ]/text () "/>, the value of the name attribute is used as a name, the request message node marked by the request identification node is used as a current node, a context variable is saved by using the character (attribute or label value) searched by the path specified by the path attribute as a value, so that the context variable is convenient for subsequent processing to use, and the $ target is used for representing the character acquired by the node during subsequent reference;
variable declaration node: the node declares a variable, the node name is val, the name attribute represents the name of the variable, the val attribute represents the value of the variable, wherein the val attribute can also use a "$" plus number mode to refer to the content of any preamble node marked by a regular expression (for example, $1 represents the first part of the content of any preamble node regular expression mark), and also can use a "$" plus name mode to refer to the value of the variable defined by any preamble parameter declaration node or variable declaration node, if the reference content does not exist, the reference content is replaced by empty content (for example, < val name ═ state "val ═ running"/>, the node stores a variable with state as the name and running as the value for subsequent processing);
function call node: the node declares that a variable value is derived from function operation realized in an app server, the name of the node is val, the name of an attribute is a variable name, the name of a call is fn, the attribute of the node is the name of a called function, validate is result validity verification (the attribute is optional and no attribute is empty to indicate that verification is not performed), on _ validate _ error is a processing node to which the app server jumps after verification fails, the attribute is an XPath expression and marks a node positioned in a rule configuration file; if the name is not empty, the actual value of the variable is saved, the value specified by the errmsg is saved as a value, the errmsg is a name variable for subsequent use, and the node with/or error as an xpath path in the rule file is found for processing; in addition, the app server realizes the function of the function according to the needs, sets the parameters of the function according to the needs, and indexes the parameters by the names corresponding to the nodes;
case and default nodes: the val node and the param node can contain a case node and a default node; reassigning when the case node definition variable meets the requirement of specified regular matching, wherein the node name is val, the reg attribute represents the regular expression, and the val attribute represents a newly covered value; when none of the preamble case nodes at the same level match, the default node uses its val attribute value to cover the value of the parent node (val or param); if the value of < val name ═ verbose "val ═ enable _ verbose" > < case reg ═ 1 "val ═ 1"/> < default val ═ 0 "/>/val >, the values of the verbose variables are set in the three nodes, and the values of the $ enable _ verbose are determined to be set to 0 except for 1;
exec node: the exec node is a node for realizing the calling of the execution program by task scheduling, the node name is exec, the cmd attribute represents a command parameter of the application program to be executed, the index attribute marks the calling of the application program, the redirect attribute is an XPath expression, the value is matched with a processing node in the rule configuration file, and the execution process of the app server jumps to the node for processing after the application program is started; such as: the node calls a ping program parameter of www.baidu.com, marks the task ID of the execution process as the value of a peer variable, and carries out subsequent processing as a child node of the node which takes/root/proc _ handle as an xpath path in a rule processing file, wherein the child node can comprise a stdout node, a log node, an on _ end node and an on _ index _ error node;
stdout node: the stdout node processes the content which is output in a standard mode after the task is executed and corresponds to the application program, the stdout node has no attribute and only can contain a case sub-node, the case sub-node has a reg attribute, the output content is matched and marked by using a regular expression, the successfully matched and marked application $ plus serial number or $ plus mark name is used for reference, and the app server continues to process the output content by using the sub-node of the case node after the successful matching;
log node: the log node is similar to the stdout node, but the processing content comes from the log output in the program execution process; the method is characterized in that path attributes are required to mark log paths, a plurality of log nodes can be specified in sub-nodes of a node pointed by a primary exec node redirect, each path specifies different log paths, only one stdout is required, and the characteristics of the two nodes are consistent;
node on _ end: the child node of the on _ end node is executed when the task execution is completed or stopped each time;
node on _ index _ error: when executing the task, if the task index (index attribute) is repeated, the content of the specified xpath path is executed;
progress node: the node can specify cur attributes to represent the progress of the current task, the max attributes specify the maximum value of the progress of the current task, and if a plurality of subtasks are executed simultaneously, the app server can perform comprehensive operation;
report node: the node sends a result message to a scheduling server; such as: < report > <! CDATA [ < report > this is a report </report > ] ] > < report >;
a kill node: directly ending the executed task, and using index attribute to specify the index of the task;
ref node: the node jumps the executed flow to the node where the xpath path specified by the path attribute is located, and then executes the node subsequent to the ref after the completion;
group node: executing all sub-nodes when executing to the node;
in addition, besides the request identification node, any node has a condition selection characteristic of the filter attribute, and then can be selectively executed by using an else node; such as: the three nodes define that if the variable enable _ verbose is 1, the verbose is defined to be 1, and otherwise, the verbose is defined to be 0.
Compared with the prior art, the invention has the beneficial effects that:
the invention provides a simple mode for realizing the app server, complex deployment is not needed, and the scheduling rule can be flexibly customized.
The invention realizes the app server in a simple mode, and the app server can manage the calling program, feed back the obtained result in time and feed back the operation progress through comprehensive operation.
Drawings
FIG. 1 is a process flow diagram of the present invention.
Detailed Description
First, the present invention relates to the application of software technologies such as a scheduling server, and is an application of computer technologies in the internet field. In the implementation process of the invention, the application of a plurality of software functional modules is involved. The applicant believes that it is fully possible for one skilled in the art to utilize the software programming skills in his or her own practice to implement the invention, as well as to properly understand the principles and objectives of the invention, in conjunction with the prior art, after a perusal of this application. All references made herein are to the extent that they do not constitute a complete listing of the applicants.
The invention is described in further detail below with reference to the following detailed description and accompanying drawings:
as shown in fig. 1, the method for implementing an app server based on an XML protocol mainly includes three parts, namely, an app server, a call rule configuration file and an app application program, where the server program receives a request in an XML format, identifies a request type by xpath in the XML rule configuration file, marks request information, calls a specific application program, identifies and marks output of a pipeline, a log and the like of the program by a regular method, and feeds back a result to the call server (a client thereof).
The method for implementing the XML-protocol-based app server specifically comprises the following steps:
step (1A): traversing the request matching rules of each rule group in the rule configuration file by the app server, matching the scheduling request message in the XML format by using each request matching rule, and traversing the sub-items of the first matched request matching rule;
step (1B): the request matching rule sub item is combined with the realization of the app service program, and the data marked by the request matching rule is used for calling the application program, accessing files, performing logic and mathematical operation and feeding back results;
step (1C): after the app server calls the application program related to the task, the rule configuration file extracts and processes the output (pipeline, file, network and the like) of the application program through the normal processing step, and the rule configuration file is used for managing the progress, the result and the state in the application program scheduling process.
When the rule configuration file is in an XML format, the app server realizes corresponding functions of nodes with different names in the rule configuration file, and the method specifically comprises the following steps:
requesting to identify the node: the app server traverses each request identification node under the root node in the rule definition file, matches the scheduling request message in the XML format by using an XPath expression specified by the path attribute of the request identification node, and processes the child nodes of the request identification node if the specified node exists; (for example, < handler path ═ parameters [ item [ @ key ═ act' and text () ] ] "> … </handler >, app service traverse each handler node under the root node in the rule definition file, match the XML message of the scheduling request with xpath specified by its path attribute, if the specified node exists, then process the child nodes of the handler)
Parameter marking nodes: the node declares a parameter (the value is derived from a variable of the request content), the name of the node is param, the name attribute represents the name of the parameter, and the path attribute comprises an XPath expression and is used for marking the specific content of the position of the parameter in the request content; (for example, (< param name > ("target" path >)/text () "/>), with the name attribute value as the name, the request message node of the request identification node mark as the current node, the searched character (attribute or label value) of the path specified by the path attribute as the value to store a context variable for subsequent processing, and the $ target is used for representing the character taken by the node during subsequent reference)
Variable declaration node: the node declares a variable, the name of the node is val, the name attribute represents the name of the variable, the val attribute represents the value of the variable, wherein the val attribute can also use a "$" plus number mode to refer to the content of any preamble node marked by a regular expression (for example, $1 represents the first part content of any preamble node regular expression mark), also can use a "$" plus name mode to refer to the value of the variable defined by any preamble parameter declaration node or variable declaration node, and if the reference content does not exist, the variable is replaced by empty content; (e.g., < val name > "state"/>, which holds a variable named state and valued for subsequent processing)
Function call node: the node declares a variable, the value is from function operation realized in an app server, the name of the node is val, the name of the attribute is the name of the variable, the name of the call function is fn, the attribute is result validity verification (the attribute is optional and no attribute is empty to indicate that verification is not performed), on _ valid _ error is a processing node to which the app server jumps after verification fails, the attribute is an XPath expression, and a node located in a rule configuration file is marked; (e.g., < val name > < peer "call:, < fn > < peer" valid "/>", this node calls the function peer realized inside the app server program, and carries on the validity check through the regular matching in the valid attribute,/root/error "/>, if the name is not empty, then saves the actual value of the variable, saves the value designated by the errmsg as the value, the errmsg is the name variable for the subsequent use, finds the node in the rule file with/root/error as the xpath path and processes, besides, the server app realizes the function according to the need, and sets the parameter of the function according to the need, and indexes the parameter by the name corresponding to the node)
case and default nodes: the case node definition variable can be reassigned when meeting the specified regular matching, the node name is val, the reg attribute represents the regular expression, and the val attribute represents a newly covered value; when none of the preamble case nodes at the same level match, the default node uses the val attribute to cover the value of the variable; (for example, < val name ═ verbose "val ═ enable _ verbose" > < case reg ═ 1 "═ val ═ 1"/> < default val ═ 0 "/>/val >, the three nodes set the values of verbose variables, and the values of $ enable _ verbose are determined to be 0 except for 1)
exec node: the exec node is a node for realizing the calling of the execution program by task scheduling, the node name is exec, the cmd attribute represents a command parameter of the application program to be executed, the index attribute marks the calling of the application program, the redirect attribute is an XPath expression, the value is matched with a processing node in the rule configuration file, and the execution process of the app server jumps to the node for processing after the application program is started; (for example, < exec cmd: "pingwww.baidu.com" index ═ $ peer "redirect ═ root/proc _ handle"/>, the node calls the ping program parameter to www.baidu.com, and marks the task ID of the execution process as the value of the peer variable, and the subsequent processing is the child node of the xpath path with/root/proc _ handle in the rule processing file, and the child node can include stdout, log, on _ end and on _ index _ error nodes)
stdout node: the stdout node processes the content which is output in a standard mode after the task is executed and corresponds to the application program, the stdout node has no attribute and only can contain a case sub-node, the case sub-node has a reg attribute, the output content is matched and marked by using a regular expression, the successfully matched and marked application $ plus serial number or $ plus mark name is used for reference, and the app server continues to process the output content by using the sub-node of the case node after the successful matching;
log node: the log node is similar to the stdout node, but the processing content comes from the log output in the program execution process; the method is characterized in that path attributes are required to mark log paths, a plurality of log nodes can be specified in sub-nodes of a node pointed by a primary exec node redirect, each path specifies different log paths, only one stdout is required, and the characteristics of the two nodes are consistent;
node on _ end: the child node of the on _ end node is executed when the task execution is completed or stopped each time;
node on _ index _ error: when executing the task, if the task index (index attribute) is repeated, the content of the specified xpath path is executed;
progress node: the node can specify cur attributes to represent the progress of the current task, the max attributes specify the maximum value of the progress of the current task, and if a plurality of subtasks are executed simultaneously, the app server can perform comprehensive operation;
report node: the node sends a result message to a scheduling server; (e.g., < report > < | CDATA [ < report > this is a report </report > ] > < report >)
A kill node: directly ending the executed task, and using index attribute to specify the index of the task;
ref node: the node jumps the executed flow to the node where the xpath path specified by the path attribute is located, and then executes the node subsequent to the ref after the completion;
group node: executing all sub-nodes when executing to the node;
besides, any node has a conditional selection characteristic of a filter attribute except for the request for identifying the node, and then can be selectively executed by using an else node (for example, < val name: "upside" filter ═ enable _ upside "reg ═ 1" val ═ 1 "/> < else > < val name:" upside "val ═ 0" >, the three nodes define that if the variable enable _ upside is 1, the upside is 1, and otherwise the upside is 0).
In summary, the app server utilizes an easily-readable and extensible XML language, combines xpath and regular flexible markup, and implements necessary logic flow control and system access function, thereby implementing a simple app server.
Finally, it should be noted that the above-mentioned list is only a specific embodiment of the present invention. It is obvious that the present invention is not limited to the above embodiments, but many variations are possible. All modifications which can be derived or suggested by a person skilled in the art from the disclosure of the present invention are to be considered within the scope of the invention.

Claims (4)

1. An app server implementation method based on an XML protocol is used for call management of an application program, and is characterized by specifically comprising the following steps:
(1) requesting for analysis;
the app server receives a scheduling request message in an XML format from the scheduling server, performs rule matching on the scheduling request message by using a rule configuration file, extracts key information in the scheduling request message, and forms a scheduling command to schedule the application program;
the app server can communicate with the scheduling server, receive a request sent by the scheduling server, call an application program to obtain an output result and feed the output result back to the scheduling server;
the scheduling server is used for receiving the input of the user, sorting the scheduling request to be sent to the app server, analyzing the result fed back by the app server and presenting the result to the user;
the rule configuration file is in an XML format, and the app server has corresponding function realization on XML nodes with different names in the parameter processing rule and the output processing rule; the rule configuration file is provided with a plurality of rule groups, and each rule group comprises a request matching rule and a parameter processing rule; the request matching rule defines a section of XPath expression and a regular expression, and when the XPath expression successfully marks the request message and the marking result can be matched with the regular expression, the app server processes the request by using the rule group; the parameter processing rule is any XML node, each node processes the matched data by utilizing the processing supported by the app server according to the sequence, the processing mode is not limited, the nodes are distinguished according to the names of the nodes and are realized by the app server; different rule sets are used for executing different application programs, and different rules in each rule set can be matched to control various conventional actions and other special operations of the application programs; in the parameter processing rules, if the main processing is to obtain the output result of the application program by calling the application program, the output processing rules exist, and the output processing rules are used for filtering and processing the output of the called application program;
(2) scheduling tasks;
when a new application program call is requested to be started, the app server executes the application program according to the scheduling command formed in the step (1) and calls the application program specified in the execution information according to the execution rule record in the complied rule group;
when the application program which is being executed or the process is in the suspension state is subjected to special operation, the app server performs special operation on the corresponding application program process and feeds back an operation result to the scheduling server;
(3) information feedback is carried out;
and when the app server filters out the key output content according to the request matching rule and the parameter processing rule, the app server processes according to the output data and the subsequent output processing rule and feeds back to the scheduling server according to the requirement.
2. The app server implementation method based on the XML protocol according to claim 1, wherein the canonical matching and the mark and xpath matching specifically include the following steps:
step (1A): the app server traverses the request matching rules of each rule group in the rule configuration file, matches the scheduling request message in the XML format by using each request matching rule, and traverses the sub-items of the first matched request matching rule;
step (1B): the request matching rule sub item is combined with the realization of the app service program, and the data marked by the request matching rule is used for calling the application program, accessing files, performing logic and mathematical operation and feeding back results;
step (1C): after the app server calls the application program related to the task, the rule configuration file extracts and processes the output of the application program through regular matching, and the rule configuration file is used for managing the progress, the result and the state of the application program in the scheduling process.
3. The app server implementation method based on the XML protocol according to claim 1, wherein the rule configuration file is customizable.
4. The method for implementing the app server based on the XML protocol according to claim 1, wherein the rule configuration file is in an XML format, and the app server implements corresponding functions on XML nodes with different names in the parameter processing rule and the output processing rule, specifically:
requesting to identify the node: the app server traverses each request identification node under the root node in the rule definition file, matches the scheduling request message in the XML format by using the appointed XPath of the request identification node, and processes the child nodes of the request identification node if the appointed node exists;
parameter marking nodes: the node declares a parameter, the name of the node is param, the name attribute represents the name of the parameter, and the path attribute comprises an XPath expression and is used for marking the specific content of the position of the parameter in the request content;
variable declaration node: the node declares a variable, the name of the node is val, the name attribute represents the name of the variable, the val attribute represents the value of the variable, wherein the val attribute can also use a "$" plus number mode to refer to the content of any preamble node marked by a regular expression, also can use a "$" plus name mode to refer to the value of any preamble parameter declaration node or variable declaration node defined variable, and if the reference content does not exist, the value is replaced by empty content;
function call node: the node declares that a variable value is derived from function operation realized in an app server, the name of the node is val, the name of an attribute is a variable name, the name of a call is fn, the validity of the result is verified, on _ valid _ error is a processing node to which the app server jumps after verification fails, the attribute is an XPath expression, and a node in a rule configuration file is marked;
case and default nodes: the val node and the param node can contain a case node and a default node; reassigning when the case node definition variable meets the requirement of specified regular matching, wherein the node name is val, the reg attribute represents the regular expression, and the val attribute represents a newly covered value; when none of the preamble case nodes at the same level are matched, the default node uses the val attribute value to cover the value of the father node;
exec node: the exec node is a node for realizing the calling of the execution program by task scheduling, the node name is exec, the cmd attribute represents a command parameter of the application program to be executed, the index attribute marks the calling of the application program, the redirect attribute is an XPath expression, the value is matched with a processing node in the rule configuration file, and the execution process of the app server jumps to the node for processing after the application program is started;
stdout node: the stdout node processes the content which is output in a standard mode after the task is executed and corresponds to the application program, the stdout node has no attribute and only can contain a case sub-node, the case sub-node has a reg attribute, the output content is matched and marked by using a regular expression, the successfully matched and marked application $ plus serial number or $ plus mark name is used for reference, and the app server continues to process the output content by using the sub-node of the case node after the successful matching;
log node: the log node is similar to the stdout node, but the processing content comes from the log output in the program execution process; the method is characterized in that path attributes are required to mark log paths, a plurality of log nodes can be specified in sub-nodes of a node pointed by a primary exec node redirect, each path specifies different log paths, only one stdout is required, and the characteristics of the two nodes are consistent;
node on _ end: the child node of the on _ end node is executed when the task execution is completed or stopped each time;
node on _ index _ error: when executing the task, if the task index has the duplication, the content of the specified xpath path is executed;
progress node: the node can specify cur attributes to represent the progress of the current task, the max attributes specify the maximum value of the progress of the current task, and if a plurality of subtasks are executed simultaneously, the app server can perform comprehensive operation;
report node: the node sends a result message to a scheduling server;
a kill node: directly ending the executed task, and using index attribute to specify the index of the task;
ref node: the node jumps the executed flow to the node where the xpath path specified by the path attribute is located, and then executes the node subsequent to the ref after the completion;
group node: executing all sub-nodes when executing to the node;
in addition, any node, in addition to the request identification node, has a conditional selection feature with a filter attribute, and thereafter can be selectively executed using an else node.
CN201710846638.0A 2017-09-19 2017-09-19 XML protocol-based app server implementation method Active CN107729388B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710846638.0A CN107729388B (en) 2017-09-19 2017-09-19 XML protocol-based app server implementation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710846638.0A CN107729388B (en) 2017-09-19 2017-09-19 XML protocol-based app server implementation method

Publications (2)

Publication Number Publication Date
CN107729388A CN107729388A (en) 2018-02-23
CN107729388B true CN107729388B (en) 2020-04-28

Family

ID=61207590

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710846638.0A Active CN107729388B (en) 2017-09-19 2017-09-19 XML protocol-based app server implementation method

Country Status (1)

Country Link
CN (1) CN107729388B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101582776A (en) * 2008-05-15 2009-11-18 浙江大学 Service charging method and service charging system
CN101610265A (en) * 2009-07-24 2009-12-23 深圳市永达电子股份有限公司 A kind of flow process recognition methods of Business Works
CN103559296A (en) * 2013-11-04 2014-02-05 中国电子科技集团公司第四十一研究所 XML-based parsing method for SCPI (The Standard Commands for Programmable Instruments)
CN104618433A (en) * 2014-12-26 2015-05-13 国家电网公司 ECA (Event-Condition-Action) rule based service combination method
CN106101090A (en) * 2016-06-07 2016-11-09 中国建设银行股份有限公司 Operational approach and rule engine system for regulation engine

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101582776A (en) * 2008-05-15 2009-11-18 浙江大学 Service charging method and service charging system
CN101610265A (en) * 2009-07-24 2009-12-23 深圳市永达电子股份有限公司 A kind of flow process recognition methods of Business Works
CN103559296A (en) * 2013-11-04 2014-02-05 中国电子科技集团公司第四十一研究所 XML-based parsing method for SCPI (The Standard Commands for Programmable Instruments)
CN104618433A (en) * 2014-12-26 2015-05-13 国家电网公司 ECA (Event-Condition-Action) rule based service combination method
CN106101090A (en) * 2016-06-07 2016-11-09 中国建设银行股份有限公司 Operational approach and rule engine system for regulation engine

Also Published As

Publication number Publication date
CN107729388A (en) 2018-02-23

Similar Documents

Publication Publication Date Title
US11909604B2 (en) Automatic provisioning of monitoring for containerized microservices
US11567994B2 (en) Configuration, telemetry, and analytics of a computer infrastructure using a graph model
EP3502896A1 (en) Generation of an adapters configuration user interface
CN102130950B (en) Distributed monitoring method based on Hadoop cluster
US20170115977A1 (en) Apparatus and method for automating the installation and configuration of infrastructure
Ibryam et al. Kubernetes patterns
WO2016053518A1 (en) Methods and systems for portably deploying applications on one or more cloud systems
Jain Mastering apache storm: Real-time big data streaming using kafka, hbase and redis
US11531914B2 (en) Artificial intelligence (AI) based automatic rule generation
WO2020134329A1 (en) Gateway service implementation method, control device, and gateway
US11463544B1 (en) Administration of services executing in cloud platform based datacenters
CN108563455A (en) Middleware portion arranging method, system and equipment in a kind of K-UX operating systems
US11790058B2 (en) Automated role management for resource accessing code
CN107729388B (en) XML protocol-based app server implementation method
Khoshkbarforoushha et al. Dimensions for evaluating cloud resource orchestration frameworks
Rakadjiev et al. Parallel SMT solving and concurrent symbolic execution
Kyryk et al. Infrastructure as Code and Microservices for Intent-Based Cloud Networking
Hao Edge computing on low availability devices with K3S in a smart home IoT system
US10146804B2 (en) Computer implemented systems and methods to augment data from data sources by simultaneously adding enhancements generated by different technologies
Arora et al. Learning Yarn
Dürsch Scaling Real-time Collaborative Editing in a Cloud-based Web App
US20230315514A1 (en) Configuration-driven data processing pipeline for an extensibility platform
Bhat et al. Preparing for Production Deployments
Portilho Araujo Ferreira Unidirectional circular dataflow architecture for real-time updates
Pasquali Deploying Node. js

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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 310051 No. 188 Lianhui Street, Xixing Street, Binjiang District, Hangzhou City, Zhejiang Province

Applicant after: DBAPPSECURITY Ltd.

Address before: Zhejiang Zhongcai Building No. 68 Binjiang District road Hangzhou City, Zhejiang Province, the 310051 and 15 layer

Applicant before: DBAPPSECURITY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant