CN106961467B - Service quality performance prediction method and device based on transaction and QoS combination - Google Patents

Service quality performance prediction method and device based on transaction and QoS combination Download PDF

Info

Publication number
CN106961467B
CN106961467B CN201611194711.2A CN201611194711A CN106961467B CN 106961467 B CN106961467 B CN 106961467B CN 201611194711 A CN201611194711 A CN 201611194711A CN 106961467 B CN106961467 B CN 106961467B
Authority
CN
China
Prior art keywords
service
transaction
transactional
selection
activity
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.)
Expired - Fee Related
Application number
CN201611194711.2A
Other languages
Chinese (zh)
Other versions
CN106961467A (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.)
State Grid Corp of China SGCC
Information and Telecommunication Branch of State Grid Jiangxi Electric Power Co Ltd
Original Assignee
State Grid Corp of China SGCC
Information and Telecommunication Branch of State Grid Jiangxi Electric Power 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 State Grid Corp of China SGCC, Information and Telecommunication Branch of State Grid Jiangxi Electric Power Co Ltd filed Critical State Grid Corp of China SGCC
Priority to CN201611194711.2A priority Critical patent/CN106961467B/en
Publication of CN106961467A publication Critical patent/CN106961467A/en
Application granted granted Critical
Publication of CN106961467B publication Critical patent/CN106961467B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The invention relates to the technical field of computer networks, in particular to a service quality performance prediction method and a service quality performance prediction device based on transaction and QoS combination. The method comprises the following steps: firstly, providing affairs for Web service, and then analyzing the combination problem of the service with affairs requirement; secondly, analyzing the performance problem of the service with transaction attribute combination; finally, according to the performance comparison of the transactional combined service, a service selection method based on the combination of the transaction and the QoS is provided; the invention also comprises a service quality performance prediction device based on the combination of the transaction and the QoS, which uses the method and also comprises an extraction module, a processing module, an extraction module and a determination module.

Description

Service quality performance prediction method and device based on transaction and QoS combination
Technical Field
The invention relates to the technical field of computer networks, in particular to a service quality performance prediction method and a service quality performance prediction device based on transaction and QoS combination.
Background
Web services are a technology for automated interaction between businesses that can publish their internal business processes as a service and then provide their services on the Web. As applications go deeper, a business process may include one or more business functions, and since these businesses may call Web services from different organizations, they need to be combined in a certain way to cooperate, and ensure the reliability of their operations and the consistency of results. In a complex network environment, service composition may become quite complex due to the following issues: component services may run for long periods of time, the service environment is loosely matched and asynchronous in nature, the assembly process may be undone due to machine failure, services may be removed or revoked, handling potential failures is necessary, and so forth. Thus, Web services require transaction mechanisms to ensure consistency and correct and reliable execution of output.
In the analysis of the conventional combinational service selection method, researchers usually perform a combinational service integration QoS (quality of service) analysis based on different structures of workflows, and then perform component selection according to the QoS. However, none of these studies can take into account the requirements of the transaction. Although the introduction of a transaction ensures correct and reliable execution of the composite service, it affects the QoS attributes of the composite service. Therefore, there is a need to propose a method to select services based on a combination of transactions and QoS.
Disclosure of Invention
Aiming at the problems in the prior art, the invention provides a service quality performance prediction method and a service quality performance prediction device based on transaction and QoS combination.
A service quality performance prediction method based on transaction and QoS combination comprises the following steps:
firstly, providing affairs for Web service, and then analyzing the combination problem of the service with affairs requirement;
secondly, analyzing the performance problem of the service with transaction attribute combination;
finally, according to the performance comparison of the transactional combined service, a service selection method based on the combination of the transaction and the QoS is provided; the method specifically comprises the following steps:
firstly, when selecting the current component service, obtaining a candidate component service meeting the transactional requirement according to the transaction characteristics of the previously selected proper component service and the rule requirement of the transaction combined service;
secondly, performing performance evaluation on each candidate component service, and evaluating and considering the QoS and transactional requirements of the Web service;
and thirdly, repeating the processes until a combined service meeting the requirement is obtained.
The specific contents of the first step and the second step are as follows:
in a common service selection method, performance evaluation is analyzed based on QoS of all component services, and the method is based on transaction and QoS and combines the transaction and the QoS to obtain a transaction-based combined service selection method;
in the process of selecting the combination service based on the affairs, when some candidate component services with similar functions can be obtained, the non-functional requirements of the candidate component services can reflect the requirements of users, and the method provides the following three QoS indexes of the Web service ws:
(1) execution Price (EP): the cost required for a requestor to invoke a service ws is denoted as qep(ws);
(2) Execution Time (ET): the time required for a service ws to execute once, denoted as qet(ws); the method considers that the time for executing the service once is the same, and in the same time, the service execution once may fail or may be successfully completed;
(3) probability of successful completion (PS): the probability that a service ws successfully completes a user request, denoted as qps(ws);
Wherein, the execution time needs to consider the change caused by the transaction of the combined service, and the analysis process is as follows:
(1) a service is compensable, it can provide a compensation strategy to undo the effect of the service, denoted by the symbol "c";
(2) a service has constant retriability, then it can be retried and the final success achieved by a sufficient number of retries, denoted by the symbol "r";
(3) a service has a central point property, so that once it is executed successfully, its impact is always present and cannot be undone, and if it fails to execute, without any impact, it is denoted by the symbol "p";
due to the dynamics, uncertainty and openness of a network environment, component services from different organizations are frequently failed to call, if the probability of successful execution of one Web service is ps and the time of one service execution is t, one Web service is either successfully executed or fails to be executed within the time t, the service fails to be executed in the previous n-1 times, the probability of the n-th successful execution conforms to the geometric distribution, and the probability function is as follows:
P(X=n)=(1-ps)n-1ps
beta denotes the number of times the service is performed, then the mathematical expectation is:
Figure BDA0001186812040000031
the mathematical expectation of the geometric distribution reflects the average number of successful executions, i.e. the average number of successful executions is 1/ps, the time for one service execution is t, and then the average time for successful execution st is:
st=t/ps。
the combined service is composed of a basic combined mode, and a time performance analysis method of the basic combined mode is provided for analyzing the time performance of the transaction combined service; the four basic combination modes are: a sequence mode, a parallel mode, a selection mode and a cyclic mode; the service combination is described by a workflow model, TP represents transaction, TO represents one-time execution time, ST represents successful execution time, and PS represents successful execution probability; tp, to, st, and ps represent specific values of the corresponding concepts of the composite service; only one component service execution fails in the schema at a time.
The third step specifically comprises the following steps:
the method is based on a service selection method of affairs and QoS, and provides two QoS indexes: the successful completion time is obtained according to a time performance analysis method, and the execution price is obtained according to the sum of the execution prices of each component service of the combined service; the successful completion time and execution price are then weighted to obtain a QoS score value for the transaction composition service and used as a criterion for selecting the transaction composition service.
The QoS indicators also include reputation, availability.
The method further includes (1) a method of selecting a model;
in a Web environment, a composite service is generally composed of other services or composite services; the method comprises three combined modes: sequence, parallel and selection; as more and more functionally similar services are obtained, selecting an optimal service instance from the services; to ensure reliable and correct execution of the composite service, service composition requires support of transactions; the method provides two service selection models based on affairs and QoS;
the first transaction combination service selection model determines a service selection model for the transaction; the composite service is described by a workflow, and appropriate transactionality has been assigned to all activities in the workflow; thus, candidate services have been determined by functional and transactional requirements;
the second transaction combination service selection model is a transaction unknown selection model; the composite service is still described by the workflow; however, the transactivity of an activity in the workflow is unknown, as determined by the transactivity of the candidate service selected to perform the activity; based on the two selection models and the selection method based on QoS, the method also provides a corresponding global optimal selection algorithm.
The method further includes (2) a global optimum selection algorithm;
in a combined service selection model based on transactions and QoS, the introduction of a transaction has an influence on the QoS time performance of a combined service; therefore, the optimal candidate service is selected according to the local optimal time index without considering the influence of the transaction on the time performance; therefore, the method uses a global optimization method to select the service;
first, based on the selected model, the transactional nature of the workflow has been determined, i.e., each active transactional nature of the workflow is known, and the workflow with known transactional nature is referred to herein as a transactionBusiness Workflow (TWF); let n be the number of activities in the transaction workflow TWF, TWF ═ a1,a2,…,an}; for each activity a in the transaction workflowjJ is 1,2, …, n, with qjCandidate transaction service
Figure BDA0001186812040000051
Capable of performing activity ajThe candidate service set satisfies activity ajFunctional and transactional requirements of; assigning a candidate service to each activity to obtain an executable transaction composition service; then, a candidate transaction composition service TCWS (transactional composition Web service) that can be executed by a set can be obtained according to all the candidate services, where TCWS { TCWS }1,tcws2,…,tcwsm},m=ΠqjWhere j is 1,2, …, n; then, using a global selection algorithm to select an optimal executable transaction combination service from the set TCWS; here, the objective function is Score (tcws)i) Calculating a QoS score value of the whole executable transaction combination service by using a simple weighting method for each executable transaction combination service; score (tcws)i)=∑jwjqijWherein w isj∈[0,1],∑jwj=1,i=1,2,…,m,qijTwo QoS attributes representing each candidate service; the executable transaction combination service with the minimum Score value is used as an optimal selection, if several executable transaction combination services have the minimum Score value, one executable transaction combination service is randomly selected to execute the transaction combination service; the input of a global optimal selection algorithm (GST) Based on the transaction workflow is a transaction workflow containing n activities, and the output is an executable transaction combination service besttcgs with a minimum Score value; the algorithm is described as follows:
the first step is as follows: obtaining a set of executable transaction composite services satisfying the requirements of the composite service according to the candidate service set of each activity,
secondly, according to a time performance analysis algorithm, obtaining the successful completion time of each executable transaction combination service, assigning to ST [ i ], obtaining an execution price and assigning to EP [ i ], and obtaining a Score value of tcws [ i ] according to weighting processing;
thirdly, comparing the Score values of all executable transaction combination services, and selecting the minimum execution transaction combination service Score to assign to the BestTCWS; score [ i ] is the Score value of the executable transaction combination;
the algorithm GST pseudo-code is as follows:
inputting: transactional workflow TWF
And (3) outputting: transaction composition service tcws with global minimum Score value
Start of
Figure BDA0001186812040000061
End up
The method also provides another selection algorithm; according to the workflow transactional assignment method, firstly, transactional assignment is carried out on a workflow model, namely, only proper transactional is given to workflow activities, and proper service instances are not selected temporarily to execute the activities; then a set of transaction workflows TWF may be obtained-TWF1,twf2,…,twfmThe functional requirement and the transactional requirement of the combined service are met; for each transaction workflow, a global optimal executable transaction combination service can be obtained by using a GST algorithm, and then an optimal transaction combination service is selected from the optimal executable transaction combination service set to meet the user requirements; the input of a global optimal selection algorithm (global selection Based on WF, GSW) Based on the workflow is a workflow, and the output is a transaction combination service BestTCWS with the minimum Score value; the algorithm is described as follows:
first, according to the transactional assignment method, all feasible transactional workflows are activated and then assigned to the collection twf;
secondly, selecting the optimal transaction combination service by using an algorithm GST for each transaction workflow in twf, obtaining the Score values of the transaction workflows, and assigning the Score values to BestTcws and MiniScore respectively; finally, selecting the optimal transaction combination service BestTCWS from the set BestTcws; TempMiniSore is a variable that temporarily stores the value of the transaction combination service Score;
the algorithm pseudo-code is as follows:
inputting: workflow WF
And (3) outputting: transaction composition service (TCWS) with global minimum QoS
Start of
Figure BDA0001186812040000071
Figure BDA0001186812040000081
And (6) ending.
The method also includes (3) a heuristic selection algorithm; in the global optimal selection algorithm GSW, when the number of workflow activities becomes large, the time taken by the algorithm may become unacceptable; therefore, a near-optimal transaction combination service needs to be obtained within an acceptable algorithm time to meet the user requirements; the algorithm GSW time is mainly spent in two aspects: firstly, performing transactional assignment on a workflow to obtain all feasible transactional workflows; secondly, obtaining the optimal executable transaction combination service for each transaction workflow through an algorithm GST; therefore, the algorithm selection time is reduced from the two aspects, and a heuristic selection algorithm is provided;
the heuristic evaluation function is used for evaluating and finding a proper path from the current node to the target node; in a heuristic algorithm, a heuristic evaluation function is used for evaluating the Score value of the whole transaction combination service containing different transactions of the current node; based on a heuristic evaluation function, firstly selecting the transaction of the current activity, and then selecting the optimal service from candidate services meeting the transaction to execute the current activity;
in both sequential and parallel modes, if the currently active transactional assignment is p or pr, then all subsequent active transactions must be pr or cr; in the parallel mode, if the transactional assignment of the current activity is c, the activities of all other branches of the parallel mode containing the current activity can only be c or cr; in the selection mode, the transaction of the branch activity is the same as the transaction of other branches in the mode; thus, the time of the transactional assignment of the workflow is reduced; then, the QoS average value of all candidate services of which the transactional activities are determined is used as reference information, the successful execution time and the execution price of the transactional combined service containing the transactional activities determined currently are obtained, and a Score value is obtained through weighting processing and is used as a value of a heuristic evaluation function; thus we reduce the time of the GST selection algorithm;
here, the heuristic evaluation function HEF is divided into three parts, defined as follows;
definition 1: heuristic evaluation function
Figure BDA0001186812040000091
And:
(1)G1(x) Information of current activity;
(2)G2(x) Candidate service information which must enter a transaction combination service is acquired for historical activities and according to the current activity affairs;
(3)G3(x) Is unknown transactional activity information;
in order to obtain a heuristic evaluation function, the successful completion time and the execution price of the transaction combination service containing the current activity determination transaction are required to be known; here, we divide all activities of the workflow into four parts:
the first part is the activity that has selected the appropriate transaction service, referred to as historical information; then the successful completion time and execution price of this part of the activity is taken as G2(x) Part of the information in (1);
the second part is the current activity; if the current activity determines transactivity, the average QoS value of all candidate services that meet the requirements of the transactivity is taken as G1(x) Information;
the third part is the follow-up activity of which the transaction is determined according to the current activity transaction; based on the transactional nature of the activities, then all candidates that meet the transactional requirementsAverage QoS value of service as G2(x) Another part of the information of (1);
the fourth part is activity whose transaction is unknown; firstly, enumerating all possible transactional assignments, and then equally activating the average QoS value of all candidate services; as G3(x) Information contained in the information;
based on these four parts of information, we can get through
Figure BDA0001186812040000101
Obtaining the successful execution time and the execution price of the transaction combination service path containing the current activity, and then carrying out weighting processing to obtain a heuristic evaluation function HEF;
heuristic Selection Algorithm HSW (ecological Selection based on WF) procedure is: considering the current activity, according to the transaction characteristics of the selected proper service, a transaction characteristic set tpset meeting the requirements of the current activity can be obtained; if the current activity selects a service with a transaction property of p or pr, the candidate service meeting the transaction requirement is G1(x) Information; if the activity is the branch of the selection mode, the activity transaction of the rest branches of the selection mode is also p or pr, and the activity transaction of the rest branches is pr or cr; the above activity candidate service is G2(x) Information, and has no G3(x) Information; when the service with the transaction property of c is selected in the current activity, the candidate service meeting the requirement of the transaction is G1(x) Information; if the branch of the selection mode is the branch of the selection mode, the activity transaction of the rest branches of the selection mode is also c, if in the parallel structure, the activity transaction of the rest branches of the parallel mode is c or cr, and the above activity candidate service is G2(x) Information; the remaining transactionally unknown activities are G3(x) Information; when the current activity selects a service with a transaction cr, the candidate service meeting the requirements of the transaction is G1(x) Information; if the branch is selected, the activity transaction of the rest branches of the selected mode is cr and G2(x) Information; otherwise, the later activities are unknown, G3(x) The information of (a); HEF of each transaction characteristic is compared, a transaction is selected for the current activity, and the optimal service is selected from candidate services satisfying the transaction to executePerforming current activities; in the following heuristic algorithm, TP represents the transaction characteristics of the previously selected appropriate service, and TCWS represents the selected transaction composition service;
the algorithm HSW pseudo code is as follows:
algorithm HSW
Inputting: workflow WF comprising n elements
And (3) outputting: executable transaction composition service (TCWS) with global minimum QoS
Start of
Figure BDA0001186812040000111
Figure BDA0001186812040000121
And (6) ending.
A service quality performance prediction device based on the combination of transaction and QoS using the above method, the device further comprising:
the extraction module is used for traversing the combined service according to the workflow sequence of the combined service and extracting the component service in the combined service;
the processing module is used for judging whether the component service is an atomic service or not, if so, calculating performance parameters of the atomic service and endowing corresponding affairs for the atomic service; otherwise, calling a set algorithm to integrate the component services into an atomic service, calculating the atomic service performance parameters, and endowing the atomic service with corresponding affairs;
the extracting module is further configured to extract a next component service in the composite service, and return to continuously determine whether the next component service is an atomic service until all component services in the composite service are traversed;
and the determining module is used for determining the service quality performance of the combined service according to the performance parameters of the atomic services obtained by calculation and the affairs endowed by the atomic services.
The technical scheme provided by the invention has good prediction accuracy and higher feasibility and effectiveness.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings needed to be used in the description of the embodiments or the prior art will be briefly introduced below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to these drawings without creative efforts.
FIG. 1 is a schematic diagram of a combination mode of the present invention as a sequence mode;
FIG. 2 is a schematic diagram of the combination mode of the present invention as a parallel mode;
FIG. 3 is a schematic diagram of the combination mode of the present invention as a selection mode;
FIG. 4 is a transactional determination selection model in an embodiment of the invention;
FIG. 5 is a transactional unknown selection model in an embodiment of the invention.
Detailed Description
The technical scheme for realizing the invention is as follows: firstly, the Web service is endowed with transaction, then the combination problem of the service with transaction requirement is analyzed, then the performance problem of the service with transaction attribute is analyzed, and finally, a service selection method based on the combination of the transaction and the QoS is provided according to the performance comparison of the transaction combination service. The method specifically comprises the following steps:
firstly, when selecting the current component service, according to the transaction characteristics of the selected proper component service and the rule requirement of the transaction combined service, obtaining the candidate component service meeting the transactional requirement.
And secondly, performing performance evaluation on each candidate component service, and evaluating and considering the QoS and transactional requirements of the Web service.
And thirdly, repeating the processes until a combined service meeting the requirement is obtained.
The specific contents of the transaction combination service method and the performance evaluation in the first step and the second step are as follows:
in the common service selection method, the performance evaluation is analyzed based on the QoS of all the component services, and the invention combines the transaction and the QoS to obtain a transaction-based combined service selection method.
In a transaction-based composite service selection process, when some functionally similar candidate component services are available, their non-functional requirements for QoS become very important. Because QoS can reflect user's demand well, so it is the most commonly used non-functional index at present, the invention considers the following three QoS indexes of Web service ws:
(1) execution Price (EP): the cost required for a requestor to invoke a service ws is denoted as qep(ws)。
(2) Execution Time (ET): the time required for a service ws to execute once, denoted as qet(ws). It is considered herein that the time of service execution is the same, and within the same time, service execution may fail once and may also complete successfully.
(3) Probability of successful completion (PS): the probability that a service ws successfully completes a user request, denoted as qps(ws)。
Wherein, the execution time needs to consider the change caused by the transaction of the combined service, and the analysis process is as follows:
(1) a service is compensable, it can provide a compensation policy to undo the effect of the service, denoted by the symbol "c".
(2) A service has constant retriability, it can be retried and the ultimate success achieved with a sufficient number of retries, denoted by the symbol "r".
(3) A service has a central point property, so that once it is executed successfully, its impact is always present and cannot be undone, and if it fails to execute, without any impact, it is denoted by the symbol "p".
Due to the dynamics, uncertainty and openness of the network environment, component services from different organizations tend to fail to invoke, assuming that the probability of successful execution of a Web service is ps. If the time for which a service is executed once is t, then a Web service is either successfully executed or fails to execute within the time t. The service fails in the first n-1 executions, the probability of successful execution of the nth execution conforms to the geometric distribution, and the probability function is as follows:
P(X=n)=(1-ps)n-1ps
beta denotes the number of times the service is performed, then the mathematical expectation is:
Figure BDA0001186812040000141
the mathematical expectation of the geometric distribution reflects the average number of successful executions, i.e. the average number of successful executions is 1/ps, the time for one service execution is t, and then the average time for successful execution st is:
st=t/ps
generally, a composite service is composed of a basic composite pattern, and thus in order to consider the temporal performance of a transaction composite service, we need to analyze the temporal performance of the basic composite pattern. Here we discuss four basic combination patterns, respectively: sequential, parallel, select and round robin patterns. And the service composition is described by a workflow model. TP represents transactional, TO represents one execution time, ST represents successful execution time, and PS represents successful execution probability. tp, to, st, and ps represent specific values of the corresponding concept of the composite service. For simplicity, only one component service execution fails in the schema at a time.
(1) Sequence mode time performance analysis
The sequence pattern is used to define that a composite service is composed of a series of component services executed in a fixed order, and the sequence pattern composed of n component services is shown in fig. 1. In sequential mode, component services execute from left to right, and a subsequent component service can begin executing if and only if the previous component service completes successfully executing. If the execution of the component service fails, the transaction mechanism is utilized to process the failure. The first i component service success execution time is stiComponent services WSiThe time of one execution is tiService WSiThe probability of successful execution is psi
Considering first the combined sequence pattern of two service components, the combined pattern of n service components can be seen as a combination of the combined service of the first n-1 service and the nth service.
In sequential mode, if the first serving WS1Assigned a transaction property of p or pr, according to definitions 4.3 and 4.6, WS1Cannot be revoked upon successful completion, and thus the second serving WS2Must ensure a certain successful completion, WS2Must include r's transactional, so WS2The transaction is assigned pr or cr. { tp1,tp2Represents the transactional nature of both services from left to right or top to bottom in the schema.
If the sequence pattern is { p, pr } or { p, cr }, the pattern is executed once, if WS1Execution fails, then the mode execution fails for time t1. If WS1Successful execution completion due to WS2The successful completion must be achieved after a limited number of retries, so that the mode is successfully executed and completed for a time t1+t2/ps2. Then at t1+t2/ps2Within time, we can determine if the mode is successfully executed, so to t1+t2/ps2。WS1Successful execution completion probability ps1Due to WS2After a limited number of retries, the completion must be successful, and during the execution of the mode, the probability of the execution of the service with the transactional content r is considered to be 1, namely WS2The successful execution completion probability is 1. The probability of successful execution of the composite service is ps to ps1The transactional nature of the composite service is p.
If WS1Execution fails, then the pattern execution fails, WS for analysis of the successful completion time of the pattern1Will be repeatedly executed until WS1Successful execution completes, then the mode completes successfully. Suppose WS1Has a successful execution completion time st1(if WS1For atomic services, st1=t1/ps1If WS1For combinational service, st1Successful completion time for composite services) due to WS2After a limited number of retries, must be successfully completed, so that st is st1+t2/ps2
If the sequence mode is { pr, pr } or { pr, cr }, then one-time mode is performed, WS1And WS2All must be successfully completed after a limited number of retries, then to t1/ps1+t2/ps2The execution time is also the successful execution completion time, so st is st1+t2/ps。WS1And WS2The successful execution completion probability is 1, then the probability of successful execution of the mode is ps ═ 1, and the transactional performance of the composite service is pr.
In sequential mode, if the first serving WS1If the assigned transaction is c or cr, then if the second serving WS2The first service execution may be revoked due to execution failure, so the second service WS2Any transactional may be assigned.
In the sequence pattern, if the pattern is { p, pr } or { p, cr }, then tp is p, to is t1+t2/ps2,st=st1+t2/ps2,ps=ps1. If the sequence pattern is { pr, pr } or { pr, cr }, then tp ═ pr, to ═ t1/ps1+t2/ps2,st=st1+t2/ps2,ps=1。
In the sequence mode, if the mode is { c, p } or { c, c }, then tp ═ p or c, to ═ t1+t2,st=(st1+t2)/ps2,ps=ps1ps2. If the sequence pattern is { c, pr } or { c, cr }, tp ═ p or c, to ═ t1+t2/ps2,st=st1+t2/ps2,ps=ps1. If the sequence pattern is { cr, p } or { cr, c }, tp-p or c, to-t1/ps1+t2,st=(st1+t2)/ps2,ps=ps2. If the sequence pattern is { cr, pr } or { cr, cr }, tp ═ pr or cr, to ═ t1/ps1+t2/ps2,st=st1+t2/ps2,ps=1。
If the sequence pattern is { c, p } or { c, c }, the pattern is executed once, if WS1Execution fails, then the mode execution fails for time t1. If WS1Successful execution completion, WS2Is performed once if WS2Fails execution, mode fails, if WS2Is successfully executed, the mode is successfully executed, and the time is t1+t2. So at t1+t2During the time, we can determine if the mode is successfully executed, so to t1+t2
If WS1Execution fails, then mode execution fails, and likewise, WS is repeatedly executed1Up to WS1The execution is completed successfully. Suppose WS1The time of successful execution completion of (st) is1,WS2May result in WS1Compensated for and rolled back to the starting position of the pattern, which may also result in a failure of the pattern execution. Also, WS is repeatedly performed2Up to WS2The execution completes successfully. WS2Each failure results in WS1And WS2Until WS1And WS2The execution is successful. Then serving WS2The time for successful completion after k executions (i.e., successful after k-1 execution failures) is: k (st)1+t2) The probability is:
P(X=k)=(1-ps2)k-1ps2
then the successful completion time, i.e. the mathematical expectation, is
Figure BDA0001186812040000171
WS1And WS2Is ps respectively1And ps2Then the probability of successful execution completion of the mode is ps-ps1ps2. If the pattern is { c, p }, tp is p. If the pattern is { c, c }, tp ═ c.
If the sequence pattern is { c, pr } or { c, cr }, WS2After a limited number of retries must complete successfully (definition 4.3), WS1And WS2Are respectively st1And t2/ps2Therefore, st is equal to st1+t2/ps2. Analogous to the proof that in theorem 4.1 the sequence patterns are { p, pr } and { p, cr }, to ═ t1+t2/ps2,ps=1。
If the sequence pattern is { cr, p } or { cr, c }, the pattern is executed once, WS1Must complete successfully over a limited number of retries (definition 4.3), WS1Is successful execution time of st1=t1/ps1(although and as discussed above WS having transactional c1The success execution time is the same, but for different reasons). WS2Is executed once according to WS2Is executed, the pattern either fails to execute or completes successfully, for a time t1/ps1+t2. So at t1/ps1+t2During the time, we can determine if the mode is successfully executed, so to t1/ps1+t2. Attestation processes with similar sequence patterns as { c, p } or { c, c }, st ═ (st)1+t2)/ps2。WS1And WS2Is 1 and ps, respectively2Then ps ═ ps2. If the pattern is { cr, p }, tp is p. If the pattern is { cr, c }, tp ═ c.
If the sequence pattern is { cr, pr/cr }, it is similar to the description of the sequence pattern { pr, pr/cr }.
TABLE 1 sequence mode transactional assignment and temporal performance analysis
Figure BDA0001186812040000181
(2) Parallel mode time performance calculation method
The parallel mode is used to define a composite service in which component services do not have a strict execution order and must be performed simultaneously. The pattern is shown in figure 2. This combined service can only be successfully executed if all parallel services are successfully executed. If some services complete successfully and others fail, then the service that failed execution needs to be handled by a transaction mechanism. Here, max { x, y } represents the maximum value of both x and y. min { x, y } represents the minimum of both x and y. It is assumed that the priority is from top to bottom when the parallel mode service is executed. We first consider a parallel mode of two service components.
In parallel mode, if serving WS1Has a transactional property of p, once WS1Successful execution completes, the impact it produces cannot be undone, and thus the serving WS2It must be ensured that a certain successful execution is completed, WS2Contains the transactional nature of r. On the other hand, once WS1Execution failure, WS2Must be able to provide a compensation strategy, therefore WS2Transactional containing c, then WS2Can only be cr.
When WS1And WS2While executing simultaneously, due to WS2Has a transaction of cr, WS2Can ensure successful execution completion through a limited number of calls, and the time is t2/ps2。WS1The time of one execution is t1. Then at time max t1,t2/ps2Within, the parallel mode may determine whether the execution completed successfully. So, to is max { t ═1,t2/ps2}。WS1Can lead to WS2Compensated for, causing the parallel mode execution to fail, so we repeat executing the mode until successful execution completes. WS1The probability of successful completion after k executions is:
P(X=k)=(1-ps1)k-1ps1
then, the successful execution time is:
Figure BDA0001186812040000191
probability of successful completion of execution of parallel mode is WS1And WS2Is implemented asWork completion probability product, WS2Has a successful completion probability of 1, then ps-ps1,tp=p。
In parallel mode, if one service WS1Has a transaction property of pr, WS1After a limited number of calls, the completion must be successfully performed, and after successful completion, its impact cannot be undone (definition 4.3). So that another serving WS2Must ensure successful execution completion, i.e., the transaction must contain r, the serving WS2Is pr or cr.
In parallel mode, if the mode is { pr, pr } or { pr, cr }, then tp ═ pr, to ═ max { t { (t) } pr1/ps1,t2/ps2},st=max{t1/ps1,t2/ps2},ps=1。
Due to WS1And WS2All contain r, so they all can guarantee successful execution completion through a limited number of retries, and the time of one execution is t respectively1/ps1And t2/ps2And the time of one execution is the time of successful execution completion, and the probability of successful execution completion is 1. So in parallel mode, to ═ max { t ═1/ps1,t2/ps2},st=max{t1/ps1,t2/ps2},ps=1,tp=pr。
In parallel mode, if one service WS1Has a transactional property of c, then WS1May fail. So that another serving WS2Must be compensated for. Namely WS2Is transactional contains c, then WS2May be c or cr[64]
In parallel mode, if the mode is { c, cr }, tp is c, and to is max { t }1,t2/ps2},st=max{t1,t2/ps2}/ps1,ps=ps1. If the parallel mode is { c, c }, tp is c, and to is max { t }1,t2},st=max{t1,t2}/min{ps1,ps2},ps=ps1ps2
If the parallel mode is { c, cr }, it proves similar, and will not be repeated here. If the parallel mode is { c, c }, since WS1And WS2Are respectively executed once for a time t1And t2So to max { t ═ max1,t2Due to WS1And WS2A compensation policy can be provided, and when a compensation policy is provided for a certain service (which fails to be executed), the parallel mode is re-executed once each time, and actually both services are compensated once. The number of compensations depends on the service that needs to be compensated more times, i.e. the service with less probability of being successfully performed. So st is max { t1,t2}/min{ps1,ps2}。WS1And WS2The probability of successful execution completion is ps1And ps2So ps is ps ═ ps1ps2. According to definition 4.4, tp ═ c.
In parallel mode, if one service WS1Has a transactional nature cr, according to definition 4.2, via a limited invocation WS1Successful completion can be ensured. And when WS2Execution failure, WS1Is compensatable. So WS of another service2Can be any transactional service.
If the parallel mode is { cr, cr }, then tp is cr, to is max { t ═ cr ═ c }1/ps1,t2/ps2},st=max{t1/ps1,t2/ps2},ps=1。
Since the services in the parallel mode are symmetric, the formulas of the parallel modes { cr, p }, { cr, c } and { cr, pr } can refer to the corresponding formulas given in theorems 4.3, 4.4, and 4.5, and will not be repeated here. The formula for the parallel mode { cr, cr } can refer to the proof of the mode { pr, pr } in theorem 4.3.
Transactional assignments and temporal performance analysis based on the parallel mode of the two services are shown in the table.
Table 2 parallel mode transactional assignment and temporal performance analysis
Figure BDA0001186812040000211
Figure BDA0001186812040000221
(3) Selected mode temporal performance analysis
In this section, we consider two selection modes: one is a branch service for defining mutual restriction and exclusion relationship between each other, such branch service often selects one branch from multiple branches to execute according to specific execution conditions, and only one service can be executed in a selection mode. So can be attributed to the discussion of the sequence mode. The other selection mode is an optional one, and the branch service can be replaced, and when one branch fails to be executed, another branch is selected to be replaced until a successful branch is obtained, or all branches fail, and then compensation is performed, as shown in fig. 3. We mainly consider the temporal performance analysis of the second selection mode.
It is assumed that the priority is performed from top to bottom when the selection mode service is performed. We first consider the selection mode of two service components.
In the selection mode, both services are assigned to the same transaction property, and then the transaction of the mode is the corresponding transaction of the component service, and to ═ (t ═ of1+t2),st=(t1+t2)/(ps1+ps2-2ps1ps2),ps=ps1+ps2-2ps1ps2
In the selection mode, since the selected services are all services that perform the same function, for simplicity, it is considered herein that the transactions that the services in the selection mode give to the services are equivalent, that is, in the selection mode, the services that can only give the same transaction can satisfy the physical meaning of the selection mode. Therefore, both services are assigned to the same transactional service. In select mode, if the component service's transactional is p or c, then if WS1Successful execution completes for time t1If WS1Execution failure, WS2Successful execution completes for time t1+t2If WS1And WS2All fail, parallel mode fail, time t1+t2. Then at t1+t2If the parallel mode is successfully executed, then to is equal to (t)1+t2). Since only one service enters the transaction composition service in the selection mode, the ST of the individual service is not considered. The first service is successful, the mode is successful, the probability is that the first service fails, and the probability that the second service succeeds is (1-ps)1)ps2The probability of success of the transaction composition service is ps1+(1-ps1)ps2=ps1+ps2-ps1ps2The TCWS has a transactional property of p or c. Transactional assignment and temporal performance analysis of the combinational service selection schema are shown in table 3. If the transactional nature of the component service is pr or cr, the mode can complete the successful execution of the mode only by executing the first component service, and st to t1/ps1,ps=1。
TABLE 3 selection mode transactional assignment and temporal performance analysis
Figure BDA0001186812040000231
The third step is that the transaction combination service selection method comprises the following specific contents:
this section mainly studies service selection methods based on transactions and QoS, and considers two QoS indicators: the successful completion time, which may be obtained from the previous time performance analysis algorithm, and the execution price, which may be obtained from the sum of the execution prices of each component service of the composite service. Then, the two are weighted to obtain the QoS score value of the transaction combination service, and the QoS score value is used as a standard for selecting the transaction combination service. Since standard QoS attributes are used herein, other QoS metrics, such as: reputation, availability, etc., may be extended in the same manner.
(1) Selecting a model
In a Web environment, a composite service is generally composed of other services or composite services, including three composite modes: sequence, parallel, select. As more and more functionally similar services are obtained, the optimal service instance should be selected from them. Currently, most work is done to select services based on QoS. However, to ensure reliable and correct execution of the composite service, service composition requires support of transactions. Thus, we propose two service selection models based on transaction and QoS.
The first transaction composition service selection model is shown in fig. 4 and is referred to as a transactional deterministic service selection model. The composite service is described by a workflow, and the appropriate transactionality has been assigned to all activities in the workflow. Thus, candidate services have been determined by functional and transactional requirements. For example, activity A1 has three candidate transaction services S11, S12, and S13, depending on the functionality requirements. According to transactional requirements, only S12 and S13 have a transactional value of c. Thus, the candidate services that meet both functional and transactional requirements are S12 and S13, and then the optimal service is selected from the two to perform activity a1 according to the QoS requirements.
However, in a transaction-based service composition, candidate services that provide similar functionality may have different transactivities. Therefore, the second transaction composition service selection model is shown in fig. 5 and is called a transactional unknown selection model. The composite service is still described by the workflow. However, the transactivity of an activity in the workflow is unknown, which is determined by the transactivity of the candidate service selected to perform the activity. For example, activity A may be based on functional requirements1There are three candidate transaction services S11,S12And S13. If activity A1Selects candidate service S11Then the activity's transactional is p, if activity A1Selects candidate service S12Or S13Then the activity's transacticity is c. Selecting the optimal service from the three to execute the activity A according to the transaction performance and the QoS requirement1
Based on the two selection models and combining the current more common selection method based on QoS, the corresponding global optimal selection algorithm is provided.
(2) Global optimal selection algorithm
In the combined service selection model based on transactions and QoS, the introduction of a transaction has an impact on the QoS time performance of the combined service. Therefore, the optimal candidate service is selected according to the local optimal time index without considering the influence of the transaction on the time performance. Therefore, global optimization methods are used herein to select services.
First, based on the selection model in FIG. 4, the Transactional Workflow has been determined that every active Transactional of the Workflow is known, and the Workflow with known Transactional is referred to herein as a Transactional Workflow (TWF). Let n be the number of activities in the transaction workflow TWF, TWF ═ a1,a2,…,an}. For each activity a in the transaction workflowjJ is 1,2, …, n, with qjCandidate transaction service
Figure BDA0001186812040000251
Capable of performing activity ajThe candidate service set satisfies activity ajFunctionality and transactional requirements. A candidate service is assigned to each activity to obtain an executable transaction composition service. Then, a candidate transaction composition service TCWS (transactional composition Web service) that can be executed by a set can be obtained according to all the candidate services, where TCWS { TCWS }1,tcws2,…,tcwsm},m=∏qjHere, j is 1,2, …, n. Then, the optimal executable transaction composition service is selected from the set TCWS using a global selection algorithm. Here, the objective function is Score (tcws)i) A simple weighting method is used for each executable transaction composition service to calculate the QoS score value for the entire executable transaction composition service. Score (tcws)i)=∑jwjqijWherein w isj∈[0,1],∑jwj=1,i=1,2,…,m,qijTwo QoS attributes for each candidate service are represented. The executable transaction composition service having the smallest Score value is selected as the optimal choice,if there are several executable transaction composition services with the smallest Score value, one is randomly selected to execute the transaction composition service. The global optimal selection algorithm (GST) Based on the transaction workflow has an input of a transaction workflow containing n activities and an output of a transaction composition service BestTCWS executable with a minimum Score value. The algorithm is described as follows:
the first step is as follows: from each active set of candidate services, a set of all executable transaction composite services that meet the composite service requirements is obtained (see lines 2 to 3),
and the second step, according to the time performance analysis algorithm, obtaining the successful completion time of each executable transaction combination service, assigning to ST [ i ] (see line 5), obtaining the execution price, assigning to EP [ i ] (see line 6), and obtaining the Score value of tcws [ i ] (see pseudo code line 7) according to the weighting processing.
Third, compare the Score values of all executable transaction composition services, select the smallest Score for assignment to BestTCWS (see pseudocode lines 9-11). Score [ i ] is the value of Score for the combination of executable transactions.
In the actual transaction composition service selection process, the selection model in fig. 5 can better satisfy the requirements of service providers and service users. The following considers a selection algorithm based on the model in fig. 5.
Based on the selection model of fig. 5, a local-based transaction and QoS selection algorithm is proposed, and since the selection of transaction services for an activity depends on the transaction characteristics of the previously selected appropriate transaction service, a global selection method cannot be used, and only a local optimal selection algorithm is given. As discussed previously, the impact of transactions on QoS is not considered. Moreover, the local optimal selection is to select a single service without considering the influence of other activities, and the local optimal service selected in the way may be suboptimal globally. Therefore, to account for the impact of transactions and overcome the limitations of local selection, a global selection algorithm is presented based on the selection model in FIG. 5.
According to the workflow transactional assignment method given above, first, I amTransactional assignments can be made to workflow models that assign only appropriate transactional properties to workflow activities, and temporarily not select appropriate service instances to perform the activities. Then we can obtain a set of transaction workflows TWF ═ { TWF1,twf2,…,twfmAnd the requirements of the combination service on functionality and affairs are met. For each transaction workflow, the GST algorithm given above may be used to obtain globally optimal executable transaction composition services, and then from these optimal sets of executable transaction composition services, an optimal transaction composition service is selected to meet the user's requirements. The input of a global optimal selection algorithm (GSW) Based on workflow is a workflow, and the output is a transaction combination service besttcgs with the minimum Score value. The algorithm is described as follows:
in a first step, all possible transactional workflows are activated and then assigned to the collection twf (see lines 1-3) according to the transactional assignment method.
In the second step, the algorithm GST is used to select the optimal transaction composition service for each transaction workflow in twf, and at the same time, their Score values are obtained and assigned to BestTcws and MiniScore, respectively. Finally, the best transaction composition service BestTCWS is selected from the set BestTcws (see lines 6-13). TempMiniScore is a variable that temporarily stores the value of the transaction composition service Score.
(3) Heuristic selection algorithm
In the global optimal selection algorithm GSW, when the number of workflow activities becomes large, the time taken by the algorithm may become unacceptable. Therefore, we need to obtain a near-optimal transaction composition service to meet the user's requirements within an acceptable algorithm time. The algorithm GSW time is mainly spent in two aspects: first, transactional valuation is performed on the workflow to obtain all feasible transactional workflows. Second, the optimal executable transaction combination service is obtained through the algorithm GST for each transaction workflow. Therefore, we propose a heuristic selection algorithm considering the reduction of algorithm selection time from these two aspects.
Typically, a heuristic evaluation function is used to evaluate and find a suitable path from the current node to the target node. In our heuristic algorithm, a heuristic evaluation function is used to evaluate the Score value of the entire transactional composite service that contains the different transactivities of the current node. Based on a heuristic evaluation function, we first select the transactional nature of the current activity and then select the optimal service to execute the current activity from the candidate services that satisfy the transactional nature.
In order to design a better heuristic evaluation function, we must obtain as much known information as possible. From the workflow transactional assignment process above, we know that in both sequential and parallel modes, if the currently active transactional assignment is p or pr, then all subsequent active transactional must be pr or cr. In parallel mode, if the transactional assignment of the current activity is c, then the activity of all other branches of the parallel mode containing the current activity can only be c or cr. In the selection mode, the transaction of the branch activity is the same as the transaction of the other branches in the mode. This reduces the time for workflow transactional assignment. Then, the QoS average value of all candidate services of the activity with the determined transaction is used as reference information, the successful execution time and the execution price of the transaction combination service containing the activity with the determined transaction are obtained, and the Score value is obtained through weighting processing and is used as the value of a heuristic evaluation function. Thus we reduce the time of the GST selection algorithm.
Here, we divide the heuristic evaluation function HEF into three parts, defined as follows.
Definition 1: heuristic evaluation function
Figure BDA0001186812040000281
And:
(1)G1(x) Is the currently active information.
(2)G2(x) Candidate service information that must be entered into the transaction composition service is known for historical activity and from current activity transactionality.
(3)G3(x) Is unknown transactional activity information.
To obtain the heuristic evaluation function, we must know the successful completion time and execution price of the transactional composition service that contains the current activity determination transactional. Here, we divide all activities of the workflow into four parts:
the first part is the activity that has selected the appropriate transaction service, referred to as historical information. Then the successful completion time and execution price of this part of the activity is taken as G2(x) Part of the information in (1).
The second part is the current activity. If the current activity determines transactivity, the average QoS value of all candidate services that meet the requirements of the transactivity is taken as G1(x) And (4) information.
The third part is the subsequent activity for which the transactivity is determined based on the currently active transactivity. Based on the transactional nature of these activities, then the average QoS value of all candidate services that meet the transactional requirements is taken as G2(x) Another part of the information.
The fourth part is activity whose transactional is unknown. First, enumerate all possible transactional assignments, and then activate the average QoS value of all candidate services as well. As G3(x) Information contained in the information.
Based on these four parts of information, we can get through
Figure BDA0001186812040000291
And obtaining the successful execution time and the execution price of the transaction combination service path containing the current activity, and then carrying out weighting processing to obtain a heuristic evaluation function HEF.
Heuristic Selection Algorithm HSW (ecological Selection based on WF) procedure is: considering the current activity, a transaction characteristics set tpset can be obtained that meets the requirements of the current activity, based on the transaction characteristics that have previously been selected for the appropriate service. If the current activity selects a service with a transaction property of p or pr, the candidate service meeting the transaction requirement is G1(x) And (4) information. If the activity is the branch of the selection mode, the activity transaction of the rest branches of the selection mode is also p or pr, and the activity transaction of the rest branches is pr or cr. The above activity candidate service is G2(x) Information, and has no G3(x) And (4) information. When the current activity selects a transactional c service,the candidate service satisfying the transaction requirement is G1(x) And (4) information. If the branch of the selection mode is the branch of the selection mode, the activity transaction of the rest branches of the selection mode is also c, if in the parallel structure, the activity transaction of the rest branches of the parallel mode is c or cr, and the above activity candidate service is G2(x) And (4) information. The remaining transactionally unknown activities are G3(x) And (4) information. When the current activity selects a service with a transaction cr, the candidate service meeting the requirements of the transaction is G1(x) And (4) information. If the branch is selected, the activity transaction of the rest branches of the selected mode is cr and G2(x) And (4) information. Otherwise, the later activities are unknown, G3(x) The information of (1). The HEF of the characteristics of each transaction is compared, a transaction is selected for the current activity, and the optimal service is selected from candidate services meeting the transaction to execute the current activity. In the following heuristic algorithm, TP represents the transaction characteristics that have previously selected the appropriate service, and TCWS represents the selected transaction composition service.

Claims (5)

1. A service quality performance prediction method based on transaction and QoS combination is characterized by comprising the following steps:
firstly, providing affairs for Web service, and then analyzing the combination problem of the service with affairs requirement;
secondly, analyzing the performance problem of the service with transaction attribute combination;
finally, according to the performance comparison of the transactional combined service, a service selection method based on the combination of the transaction and the QoS is provided; the method specifically comprises the following steps:
firstly, when selecting the current component service, obtaining a candidate component service meeting the transactional requirement according to the transaction characteristics of the previously selected proper component service and the rule requirement of the transaction combined service;
secondly, performing performance evaluation on each candidate component service, and evaluating and considering the QoS and transactional requirements of the Web service;
thirdly, repeating the above processes until a combined service meeting the requirements is obtained;
the specific contents of the first step and the second step are as follows:
in a common service selection method, performance evaluation is analyzed based on QoS of all component services, and the method is based on transaction and QoS and combines the transaction and the QoS to obtain a transaction-based combined service selection method;
in the process of selecting the combination service based on the affairs, when some candidate component services with similar functions can be obtained, the non-functional requirements of the candidate component services can reflect the requirements of users, and the method provides the following three QoS indexes of the Web service ws:
(1) execution Price (EP): the cost required for a requestor to invoke a service ws is denoted as qep(ws);
(2) Execution Time (ET): the time required for a service ws to execute once, denoted as qet(ws); the method considers that the time for executing the service once is the same, and in the same time, the service execution once may fail or may be successfully completed;
(3) probability of successful completion (PS): the probability that a service ws successfully completes a user request, denoted as qps(ws);
Wherein, the execution time needs to consider the change caused by the transaction of the combined service, and the analysis process is as follows:
(1) a service is compensable, it can provide a compensation strategy to undo the effect of the service, denoted by the symbol "c";
(2) a service has constant retriability, then it can be retried and the final success achieved by a sufficient number of retries, denoted by the symbol "r";
(3) a service has a central point property, so that once it is executed successfully, its impact is always present and cannot be undone, and if it fails to execute, without any impact, it is denoted by the symbol "p";
due to the dynamics, uncertainty and openness of a network environment, component services from different organizations are frequently failed to call, if the probability of successful execution of one Web service is ps and the time of one service execution is t, one Web service is either successfully executed or fails to be executed within the time t, the service fails to be executed in the previous n-1 times, the probability of the n-th successful execution conforms to the geometric distribution, and the probability function is as follows:
P(X=n)=(1-ps)n-1ps
x denotes the service's execution for the second time, then the mathematical expectation is:
Figure FDA0002313973150000021
the mathematical expectation of the geometric distribution reflects the average number of successful executions, i.e. the average number of successful executions is 1/ps, the time for one service execution is t, and then the average time for successful execution st is:
st=t/ps;
the combined service is composed of a basic combined mode, and a time performance analysis method of the basic combined mode is provided for analyzing the time performance of the transaction combined service; the four basic combination modes are: a sequence mode, a parallel mode, a selection mode and a cyclic mode; the service combination is described by a workflow model, TP represents transaction, TO represents one-time execution time, ST represents successful execution time, and PS represents successful execution probability; tp, to, st, and ps represent specific values of the corresponding concepts of the composite service; only one component service execution fails at a time in the mode;
the method further includes (1) a method of selecting a model;
in a Web environment, a composite service is generally composed of other services or composite services; the method comprises three combined modes: sequence, parallel and selection; as more and more functionally similar services are obtained, selecting an optimal service instance from the services; to ensure reliable and correct execution of the composite service, service composition requires support of transactions; the method provides two service selection models based on affairs and QoS;
the first transaction combination service selection model determines a service selection model for the transaction; the composite service is described by a workflow, and appropriate transactionality has been assigned to all activities in the workflow; thus, candidate services have been determined by functional and transactional requirements;
the second transaction combination service selection model is a transaction unknown selection model; the composite service is still described by the workflow; however, the transactivity of an activity in the workflow is unknown, as determined by the transactivity of the candidate service selected to perform the activity; based on the two selection models and the selection method based on QoS, the method also provides a corresponding global optimal selection algorithm;
the method further includes (2) a global optimum selection algorithm;
in a combined service selection model based on transactions and QoS, the introduction of a transaction has an influence on the QoS time performance of a combined service; therefore, the optimal candidate service is selected according to the local optimal time index without considering the influence of the transaction on the time performance; therefore, the method uses a global optimization method to select the service;
first, based on the selected model, the Transactional nature of the Workflow has been determined, i.e., each active Transactional nature of the Workflow is known, and the Workflow with known Transactional nature is referred to herein as a Transactional Workflow (TWF); let n be the number of activities in the transaction workflow TWF, TWF ═ a1,a2,…,an}; for each activity a in the transaction workflowjJ is 1,2, …, n, with qjCandidate transaction service
Figure FDA0002313973150000041
Capable of performing activity ajThe candidate service set satisfies activity ajFunctional and transactional requirements of; assigning a candidate service to each activity to obtain an executable transaction composition service; then, a candidate transaction composition service TCWS (transactional composition Web service) that can be executed by a set can be obtained according to all the candidate services, where TCWS { TCWS }1,tcws2,…,tcwsm},m=ΠqjWhere j is 1,2, …, n; then, using a global selection algorithm to select an optimal executable transaction combination service from the set TCWS; here, the objective function isScore(tcwsi) Calculating a QoS score value of the whole executable transaction combination service by using a simple weighting method for each executable transaction combination service; score (tcws)i)=∑jwjqijWherein w isj∈[0,1],∑jwj=1,i=1,2,…,m,qijTwo QoS attributes representing each candidate service; the executable transaction combination service with the minimum Score value is used as an optimal selection, if several executable transaction combination services have the minimum Score value, one executable transaction combination service is randomly selected to execute the transaction combination service; the method comprises the steps that a Global optimal selection algorithm (GST) based on a transaction workflow inputs a transaction workflow containing n activities and outputs an executable transaction combination service BestTCWS with a minimum Score value; the algorithm is described as follows:
the first step is as follows: obtaining a set of executable transaction composite services satisfying the requirements of the composite service according to the candidate service set of each activity,
secondly, according to a time performance analysis algorithm, obtaining the successful completion time of each executable transaction combination service, assigning to ST [ i ], obtaining an execution price and assigning to EP [ i ], and obtaining a Score value of tcws [ i ] according to weighting processing;
thirdly, comparing the Score values of all executable transaction combination services, and selecting the minimum execution transaction combination service Score to assign to the BestTCWS; score [ i ] is the Score value of the executable transaction combination;
the method also provides another selection algorithm; according to the workflow transactional assignment method, firstly, transactional assignment is carried out on a workflow model, namely, only proper transactional is given to workflow activities, and proper service instances are not selected temporarily to execute the activities; then a set of transaction workflows TWF may be obtained-TWF1,twf2,…,twfmThe functional requirement and the transactional requirement of the combined service are met; for each transaction workflow, a GST algorithm can be used to obtain globally optimal executable transaction composition services, and then a second executable transaction composition service set is selected from the optimal executable transaction composition servicesThe optimal transaction combination service meets the requirements of users; the input of a Global selection based on WF (Global selection based on) based on a workflow is a workflow, and the output is a transaction combination service BestTCWS with a minimum Score value; the algorithm is described as follows:
first, according to the transactional assignment method, all feasible transactional workflows are activated and then assigned to the collection twf;
secondly, selecting the optimal transaction combination service by using an algorithm GST for each transaction workflow in twf, obtaining the Score values of the transaction workflows, and assigning the Score values to BestTcws and MiniScore respectively; finally, selecting the optimal transaction combination service BestTCWS from the set BestTcws; TempMiniScore is a variable that temporarily stores the value of the transaction composition service Score.
2. The method of claim 1, wherein:
the third step specifically comprises the following steps:
the method is based on a service selection method of affairs and QoS, and provides two QoS indexes: the successful completion time is obtained according to a time performance analysis method, and the execution price is obtained according to the sum of the execution prices of each component service of the combined service; the successful completion time and execution price are then weighted to obtain a QoS score value for the transaction composition service and used as a criterion for selecting the transaction composition service.
3. The method of claim 2, wherein: the QoS indicators also include reputation, availability.
4. The method of claim 1, wherein: the method also includes (3) a heuristic selection algorithm; in the global optimal selection algorithm GSW, when the number of workflow activities becomes large, the time taken by the algorithm may become unacceptable; therefore, a near-optimal transaction combination service needs to be obtained within an acceptable algorithm time to meet the user requirements; the algorithm GSW time is mainly spent in two aspects: firstly, performing transactional assignment on a workflow to obtain all feasible transactional workflows; secondly, obtaining the optimal executable transaction combination service for each transaction workflow through an algorithm GST; therefore, the algorithm selection time is reduced from the two aspects, and a heuristic selection algorithm is provided;
the heuristic evaluation function is used for evaluating and finding a proper path from the current node to the target node; in a heuristic algorithm, a heuristic evaluation function is used for evaluating the Score value of the whole transaction combination service containing different transactions of the current node; based on a heuristic evaluation function, firstly selecting the transaction of the current activity, and then selecting the optimal service from candidate services meeting the transaction to execute the current activity;
in both sequential and parallel modes, if the currently active transactional assignment is p or pr, then all subsequent active transactions must be pr or cr; in the parallel mode, if the transactional assignment of the current activity is c, the activities of all other branches of the parallel mode containing the current activity can only be c or cr; in the selection mode, the transaction of the branch activity is the same as the transaction of other branches in the mode; thus, the time of the transactional assignment of the workflow is reduced; then, the QoS average value of all candidate services of which the transactional activities are determined is used as reference information, the successful execution time and the execution price of the transactional combined service containing the transactional activities determined currently are obtained, and a Score value is obtained through weighting processing and is used as a value of a heuristic evaluation function; thus we reduce the time of the GST selection algorithm;
here, the heuristic evaluation function HEF is divided into three parts, defined as follows;
definition 1: heuristic evaluation function
Figure FDA0002313973150000061
And:
(1)G1(x) Information of current activity;
(2)G2(x) Candidate service information which must enter a transaction combination service is acquired for historical activities and according to the current activity affairs;
(3)G3(x) Is unknown transactional activity information;
in order to obtain a heuristic evaluation function, the successful completion time and the execution price of the transaction combination service containing the current activity determination transaction are required to be known; here, we divide all activities of the workflow into four parts:
the first part is the activity that has selected the appropriate transaction service, referred to as historical information; then the successful completion time and execution price of this part of the activity is taken as G2(x) Part of the information in (1);
the second part is the current activity; if the current activity determines transactivity, the average QoS value of all candidate services that meet the requirements of the transactivity is taken as G1(x) Information;
the third part is the follow-up activity of which the transaction is determined according to the current activity transaction; based on the transactional nature of these activities, then the average QoS value of all candidate services that meet the transactional requirements is taken as G2(x) Another part of the information of (1);
the fourth part is activity whose transaction is unknown; firstly, enumerating all possible transactional assignments, and then equally activating the average QoS value of all candidate services; as G3(x) Information contained in the information;
based on these four parts of information, we can get through
Figure FDA0002313973150000071
Obtaining the successful execution time and the execution price of the transaction combination service path containing the current activity, and then carrying out weighting processing to obtain a heuristic evaluation function HEF;
heuristic Selection Algorithm HSW (ecological Selection based on WF) procedure is: considering the current activity, according to the transaction characteristics of the selected proper service, a transaction characteristic set tpset meeting the requirements of the current activity can be obtained; if the current activity selects a service with a transaction property of p or pr, the candidate service meeting the transaction requirement is G1(x) Information; if the activity is the branch of the selection mode, the activity transactivities of the rest branches of the selection mode arep or pr, and the rest activity transactions are pr or cr; the above activity candidate service is G2(x) Information, and has no G3(x) Information; when the service with the transaction property of c is selected in the current activity, the candidate service meeting the requirement of the transaction is G1(x) Information; if the branch of the selection mode is the branch of the selection mode, the activity transaction of the rest branches of the selection mode is also c, if in the parallel structure, the activity transaction of the rest branches of the parallel mode is c or cr, and the above activity candidate service is G2(x) Information; the remaining transactionally unknown activities are G3(x) Information; when the current activity selects a service with a transaction cr, the candidate service meeting the requirements of the transaction is G1(x) Information; if the branch is selected, the activity transaction of the rest branches of the selected mode is cr and G2(x) Information; otherwise, the later activities are unknown, G3(x) The information of (a); comparing HEF of each transaction characteristic, selecting a transaction for the current activity, and selecting the optimal service from candidate services meeting the transaction to execute the current activity; in the following heuristic algorithm, TP represents the transaction characteristics that have previously selected the appropriate service, and TCWS represents the selected transaction composition service.
5. A combined transaction and QoS based QoS performance prediction apparatus using the method of claim 1, the apparatus further comprising:
the extraction module is used for traversing the combined service according to the workflow sequence of the combined service and extracting the component service in the combined service;
the processing module is used for judging whether the component service is an atomic service or not, if so, calculating performance parameters of the atomic service and endowing corresponding affairs for the atomic service; otherwise, calling a set algorithm to integrate the component services into an atomic service, calculating the atomic service performance parameters, and endowing the atomic service with corresponding affairs;
the extracting module is further configured to extract a next component service in the composite service, and return to continuously determine whether the next component service is an atomic service until all component services in the composite service are traversed;
and the determining module is used for determining the service quality performance of the combined service according to the performance parameters of the atomic services obtained by calculation and the affairs endowed by the atomic services.
CN201611194711.2A 2016-12-21 2016-12-21 Service quality performance prediction method and device based on transaction and QoS combination Expired - Fee Related CN106961467B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611194711.2A CN106961467B (en) 2016-12-21 2016-12-21 Service quality performance prediction method and device based on transaction and QoS combination

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611194711.2A CN106961467B (en) 2016-12-21 2016-12-21 Service quality performance prediction method and device based on transaction and QoS combination

Publications (2)

Publication Number Publication Date
CN106961467A CN106961467A (en) 2017-07-18
CN106961467B true CN106961467B (en) 2020-06-05

Family

ID=59481615

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611194711.2A Expired - Fee Related CN106961467B (en) 2016-12-21 2016-12-21 Service quality performance prediction method and device based on transaction and QoS combination

Country Status (1)

Country Link
CN (1) CN106961467B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108076143A (en) * 2017-12-01 2018-05-25 河南理工大学 A kind of logistics Web service dynamic optimized combination method
CN109451037B (en) * 2018-12-05 2021-06-08 大连海事大学 Method for selecting error repair strategy in CWS fault tolerance problem
CN113364621B (en) * 2021-06-04 2022-07-26 浙江大学 Service quality prediction method under service network environment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103268523A (en) * 2013-05-28 2013-08-28 北京邮电大学 Service combination method for achieving meeting multiple performance index requirements simultaneously
CN104320358A (en) * 2014-09-28 2015-01-28 国家电网公司 QoS (Quality of Service) business control method in power telecommunication net

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103268523A (en) * 2013-05-28 2013-08-28 北京邮电大学 Service combination method for achieving meeting multiple performance index requirements simultaneously
CN104320358A (en) * 2014-09-28 2015-01-28 国家电网公司 QoS (Quality of Service) business control method in power telecommunication net

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TQoS:Transactional and QoS-Aware Selection Algorithm for Automatic Web Service Composition;Joyce El Haddad,etc.;《IEEE Transactions on Services Computing》;20100318;第3卷(第1期);第73-85页 *

Also Published As

Publication number Publication date
CN106961467A (en) 2017-07-18

Similar Documents

Publication Publication Date Title
Hong et al. Review on ranking and selection: A new perspective
CN108595157B (en) Block chain data processing method, device, equipment and storage medium
Tsai et al. A software reliability model for web services.
US10885440B2 (en) Contextual evaluation of process model for generation and extraction of project management artifacts
CN108629558B (en) Software development management system
Li et al. Spot pricing in the Cloud ecosystem: A comparative investigation
CN101256516A (en) Distribution of data and task instances in grid environments
CN106961467B (en) Service quality performance prediction method and device based on transaction and QoS combination
US8478715B2 (en) Extending OLAP navigation employing analytic workflows
Nekrasaite et al. Discovering responsibilities with dynamic condition response graphs
CN106790536B (en) Combined Web service selection method based on transaction and QoS
Pufahl et al. Automatic resource allocation in business processes: A systematic literature survey
US8260651B2 (en) Method and system for estimating resource factors for executing a project
Kim et al. An approach to modeling service-oriented development process
Badri et al. Investigating the accuracy of test code size prediction using use case metrics and machine learning algorithms: An empirical study
CN114995877B (en) Variable configuration method and device
US20050154748A1 (en) Analytical task execution
US20160004982A1 (en) Method and system for estimating the progress and completion of a project based on a bayesian network
US8832110B2 (en) Management of class of service
Panda et al. Test scenario prioritization for object-oriented systems using UML diagram
CN110740168B (en) Self-adaptive method for multi-tenant server in cloud
US11521274B2 (en) Cost allocation estimation using direct cost vectors and machine learning
CN112102099A (en) Policy data processing method and device, electronic equipment and storage medium
Santone et al. Application of equivalence checking in a loan origination process in banking industry
Leal et al. Exploiting mde for platform-independent testing of service orchestrations

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20200605

Termination date: 20201221