CN114844899A - Server selection method and device, processor and electronic equipment - Google Patents

Server selection method and device, processor and electronic equipment Download PDF

Info

Publication number
CN114844899A
CN114844899A CN202210462563.7A CN202210462563A CN114844899A CN 114844899 A CN114844899 A CN 114844899A CN 202210462563 A CN202210462563 A CN 202210462563A CN 114844899 A CN114844899 A CN 114844899A
Authority
CN
China
Prior art keywords
service
server
processed
processing
library
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210462563.7A
Other languages
Chinese (zh)
Inventor
梁晓珺
连煜伟
罗秉安
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
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 Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202210462563.7A priority Critical patent/CN114844899A/en
Publication of CN114844899A publication Critical patent/CN114844899A/en
Pending legal-status Critical Current

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/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

The application discloses a server selection method, a server selection device, a processor and electronic equipment. Relates to the field of computer application systems, and the method comprises the following steps: acquiring a service to be processed; identifying a target service class for processing a service to be processed, wherein the target service class at least comprises a first server and a second server; calculating service evaluation scores of the first server and the second server; calling the server with the highest service evaluation score as a target server; and processing the service to be processed based on the target server. By the method and the device, the problem of accurately selecting the server in the related technology is solved.

Description

Server selection method and device, processor and electronic equipment
Technical Field
The application relates to the technical field of computer application systems, in particular to a server selection method, a server selection device, a processor and electronic equipment.
Background
The quality of service refers to the behavior of allowing a client to customize services according to their specific application requirements on the premise that the overall function of the system or a component in the system is unchanged when the system or the component in the system provides information or services to the outside.
This recurring basic concept expresses a guiding idea of software design: if only one system or some component in the system is designed to provide some service to the outside, the service can be improved from the aspect of service quality. Quality of service involves two aspects, namely What qualities the service itself supports (i.e. the at to do problem) and How to let the user easily customize these qualities of service (i.e. the How to do problem). The former is closely related to the business logic involved in the service, while the latter often uses quality of service policies to help users customize quality of service. In a distributed object system, a service quality policy is often designed as one object, and a plurality of orthogonal service quality policies can be freely combined together, so that a user is helped to customize service quality according to own application requirements more conveniently and flexibly.
With the development of computer technology and network technology, the service quality has a wider meaning. For example: one host can provide services by executing programs of other hosts, and the computing capacity, the storage capacity and the like of the host providing the services can be understood as the quality of service; for another example: one host may call up data from another host, and the quality of data, price, latest update time, etc. may be understood as the quality of service.
The quality of service discussed herein is primarily that of Web services. Therefore, a series of quality evaluation criteria (as if pricing, reliability) of the Web service and related knowledge of the Web service quality model establishment are known. As shown in the table:
Figure BDA0003622587810000011
Figure BDA0003622587810000021
TABLE 1
However, the quality model is extensible, that is, new standards can be added without substantially changing the service selection technique. Specifically, the quality model can be extended by integrating the QoE (quality of experience) system and the QoBiz (quality of business) system. This would involve two metrics: a method for expressing the experience of a customer using a service (QoE system) by using the response time and availability of the service, etc.; one on a cost basis, for example: the cost required to perform each transition (manufactured by QoBiz).
The main differences between the QoE system and the quality of service system are: the QoE system may contain subjective factors while the quality of service task system is not available, while the QoE system may be affected by the systems of the providers and users of all services, while the quality of service task system is only relevant to the system and service to be considered. One example of these effects is: the QoE of a Web site depends heavily on the ISP's network conditions (e.g., modem speed).
Before this concept is proposed, if services provided by a network server need to be used in a network environment, the services are usually selected according to personal experience of an administrator, and certain problems, such as: the server crashes, it temporarily fails to provide the service normally, and the administrator subjectively hands the work to the server, with unexpected consequences.
Aiming at the problem that the server cannot be accurately selected in the related technology, an effective solution is not provided at present.
Disclosure of Invention
The present application mainly aims to provide a server selection method, a server selection device, a processor, and an electronic device, so as to solve the problem that a server cannot be accurately selected in the related art.
In order to achieve the above object, according to an aspect of the present application, there is provided a server selection method including: acquiring a service to be processed; identifying a set of servers for processing the service to be processed, wherein the set of servers comprises at least a first server and a second server; calculating service evaluation scores of the first server and the second server; calling the server with the highest service evaluation score as a target server; and processing the service to be processed based on the target server.
Optionally, calculating the service valuation scores of the first server and the second server comprises: obtaining service parameters of each server, wherein the service parameters at least comprise: execution price, execution time, execution information, reputation, reliability, and availability; determining the service evaluation score according to the service parameters of each server.
Optionally, identifying a set of servers for processing the service to be processed comprises: determining a plurality of server sets for processing the service to be processed; determining an execution structure for a plurality of the server sets, wherein the execution structure comprises: a sequential structure, a parallel structure, a conditional structure, a cyclic structure; determining an execution order of the plurality of server sets according to the execution structure.
Optionally, before determining the server set for the service to be processed, the method further includes: acquiring a plurality of preset servers; identifying the service category of each preset server; and storing preset servers belonging to the same service class in the same service library.
Optionally, the invoking the server with the highest service evaluation score as the target server includes: calling a target server with the highest service evaluation score from the service library; and storing the service to be processed and the target server into an execution library.
Optionally, the processing the service to be processed based on the target server includes: calling the target server from the execution library to process the service to be processed to obtain a processed service; and storing the processed service and the target server into a processing library.
Optionally, after storing the processed service and the target server in a process library, the method further comprises: returning the target server in the processing library; and storing the processed service into a cache library, wherein the processed service stored in the cache library is a service to be processed which needs to be processed by the next server.
In order to achieve the above object, according to still another aspect of the present application, there is provided a server selection apparatus including: the system comprises an acquisition unit, a processing unit and a processing unit, wherein the acquisition unit is used for acquiring a service to be processed; the system comprises an identification unit, a processing unit and a processing unit, wherein the identification unit is used for identifying a server set used for processing the service to be processed, and the server set at least comprises a first server and a second server; a calculating unit, configured to calculate service evaluation scores of the first server and the second server; the calling unit is used for calling the server with the highest service evaluation score as a target server; and the processing unit is used for processing the service to be processed based on the target server.
To achieve the above object, according to another aspect of the present application, there is provided a processor for executing a program, wherein the program executes to perform the above-mentioned server selection method.
To achieve the above object, according to yet another aspect of the present application, there is provided an electronic device including one or more processors and a memory for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors are caused to implement the method of selecting a server described above.
Through the application, the following steps are adopted: acquiring a service to be processed; identifying a server set used for processing a service to be processed, wherein the server set at least comprises a first server and a second server; calculating service evaluation scores of the first server and the second server; calling the server with the highest service evaluation score as a target server; the processing service is processed based on the target server, the problem that the server cannot be accurately selected in the related technology is solved, and the effect of accurately selecting the server is achieved.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this application, illustrate embodiments of the application and, together with the description, serve to explain the application and are not intended to limit the application. In the drawings:
fig. 1 is a flowchart of a method for selecting a server according to an embodiment of the present application;
FIG. 2a is a first schematic diagram of a sequential structure provided in accordance with an embodiment of the present application;
FIG. 2b is a diagram of a parallel structure provided according to an embodiment of the present application;
FIG. 2c is a third schematic diagram of a parallel structure provided according to an embodiment of the present application;
FIG. 2d is a diagram of a parallel structure diagram IV provided in accordance with an embodiment of the present application
FIG. 3 is a schematic diagram of each service call in a workflow model provided according to an embodiment of the application;
FIG. 4 is a schematic diagram of a quality of service driven distributed service selection call provided according to an embodiment of the application;
FIG. 5a is a first schematic diagram illustrating a model demonstration of a method for quality of service driven service selection in a sequential structure according to an embodiment of the present application;
FIG. 5b is a diagram illustrating a second model of a quality of service driven service selection method in a sequential structure according to an embodiment of the present application;
FIG. 5c is a third schematic diagram illustrating a model demonstration of a quality of service driven service selection method in a sequential structure according to an embodiment of the present application;
FIG. 5d is a fourth schematic diagram illustrating a model demonstration of a quality of service driven service selection method in a sequential structure according to an embodiment of the present application;
FIG. 5e is a diagram of a fifth exemplary model demonstration of a method for quality of service driven service selection in a sequential structure according to an embodiment of the present disclosure;
FIG. 5f is a sixth schematic diagram illustrating a model demonstration of a quality of service driven service selection method in a sequential structure provided in accordance with an embodiment of the present application;
FIG. 6 is a schematic diagram of a mapped equivalent service set provided in accordance with an embodiment of the present application;
FIG. 7 is a schematic diagram of a spatial information processing flow model provided according to an embodiment of the present application;
FIG. 8 is a schematic diagram of a processing model using the service-driven distributed service selection method in the present method according to an embodiment of the present application;
FIG. 9 is a schematic diagram of a graph of a Petri net provided according to an embodiment of the present application;
FIG. 10 is a schematic diagram of a selection device of a server provided according to an embodiment of the present application; and
fig. 11 is a schematic diagram of an electronic device provided according to an embodiment of the present application.
Detailed Description
It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict. The present application will be described in detail below with reference to the embodiments with reference to the attached drawings.
In order to make the technical solutions better understood by those skilled in the art, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only partial embodiments of the present application, but not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
It should be noted that the terms "first," "second," and the like in the description and claims of this application and in the drawings described above are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It should be understood that the data so used may be interchanged under appropriate circumstances such that embodiments of the application described herein may be used. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
The present invention is described below with reference to preferred implementation steps, and fig. 1 is a flowchart of a method for selecting a server according to an embodiment of the present application, as shown in fig. 1, where the method includes the following steps:
step S102, acquiring a service to be processed;
step S104, identifying a server set used for processing the service to be processed, wherein the server set at least comprises a first server and a second server;
step S106, calculating service evaluation scores of the first server and the second server;
step S108, calling the server with the highest service evaluation score as a target server;
and step S110, processing the service to be processed based on the target server.
According to the selection method of the server, the service to be processed is obtained; identifying a server set used for processing a service to be processed, wherein the server set at least comprises a first server and a second server; calculating service evaluation scores of the first server and the second server; calling the server with the highest service evaluation score as a target server; the processing service is processed based on the target server, the problem that the server cannot be accurately selected in the related technology is solved, and the effect of accurately selecting the server is achieved.
In step S102, the service to be processed may be an instruction or information for requesting a service issued by a user.
In the above step S104, the server may be a server for providing a service.
Alternatively, the target server may be the server with the highest service evaluation score of the first server and the second server.
In the step S104, server sets may be determined according to kinds of servers, each of the server sets including at least two servers of the same kind, wherein the servers of the same kind are used for providing the same service.
For example, when a server is required to query a certain data, the service type of the service to be processed may be determined as "query", the server used may be further determined as a query server, and the query server may be invoked to obtain the service to be processed and execute a query process.
Optionally, the service category for processing the service to be processed at least includes: querying, analyzing, processing, displaying and the like, wherein different service categories need to be realized by calling different servers.
Optionally, under the condition that the processing of the service to be processed is complex, the technical scheme provided by the invention can divide the complex processing process into a plurality of service categories, and the service to be processed is processed respectively, so that the aim of obtaining the server in a distributed manner is fulfilled.
For example, the service to be processed needs to perform data query through the service class a, perform data analysis through the service class B, and perform data display through the service class C.
Optionally, in the method for selecting a server provided in the embodiment of the present application, calculating the service evaluation scores of the first server and the second server includes: obtaining service parameters of each server, wherein the service parameters at least comprise: execution price, execution time, execution information, reputation, reliability, and availability; and determining a service evaluation score according to the service parameters of each server.
According to the embodiment of the invention, the service evaluation scores of the servers are determined, and further, in order to enable the service to be processed to obtain a better processing effect, the target server with a higher service evaluation score can be selected in the subsequent process according to the service evaluation scores of the servers to process the service to be processed.
Alternatively, in the process of determining the service evaluation score of each server, an evaluation coefficient of each service parameter may be set in advance, and then the score of the evaluation index of the server may be determined based on the evaluation coefficient and the evaluation score of each service parameter.
As an alternative embodiment, the criteria for the service valuation score include: execution price, execution time, reputation, reliability, and availability. Let N be the total number of tasks to execute a plan p in the Web composition service.
Optionally, determining the score for the execution price comprises:
Figure BDA0003622587810000071
wherein q is pr i ce Is the fee Q that a service requester must pay to perform a task t price (p) is per service s i Is carried out at a cost q price (s i ,t i ) The sum of (a) and (b).
Optionally, determining the score for the execution time comprises: q. q.s du (s,t)=T process (s,t)+T trans (s, t) wherein q is du (s, T) is a measure of the time taken for a request to arrive at a result, T process (s, T) is the treatment time, T trans (s, t) is the transmission time. Q du (p)=CPA(q du (s 1 ,t 1 ),...,q du (s N ,t N ) Cpa (critical Path algorithm), among others.
Optionally, determining the score for the reputation comprises:
Figure BDA0003622587810000072
wherein one synthesizes Q of a service rep (p) Each service s of the execution plan p i The average reputation of.
Optionally, determining the score of reliability comprises:
Figure BDA0003622587810000073
wherein z is i If s is 1 i Is a key service that plans p to execute; z is a radical of i If s is 0 i Is not a critical service for scheduled p execution; q. q.s rel (s) is the probability that a basic service s will respond correctly.
Optionally, determining the score for availability comprises:
Figure BDA0003622587810000074
q av (s)=T a (s)/θ, wherein z i If s is 1 i Is a key service that plans p to execute; z is a radical of i If s is 0 i Is not a critical service for scheduled p execution; t is a Is the time that service s is available at the last θ seconds; q. q.s av (s) is accessible to service sPerformance; q av (p) represents the availability of scheduled p executions.
In summary, the function for obtaining the service evaluation score is: q (p) ═ Q price (p),Q du (p);Q av (p),Q rel (p),Q rep (p))。
Optionally, in the function of the service evaluation score, the user may select an optimal service required by the user according to a corresponding policy. This choice can be reflected in the function of the service rating score by setting the following parameters: they are the coefficients (a, b, c, d, e) of the elements in Q (p) multicomponent respectively. If this factor is not considered, the coefficient value of this element is set to 0, whereas if this element is considered, the coefficient value of this element is set to 1, according to the policy requirements. (the coefficient can also be set according to the considered proportion) the service evaluation score of the service integration is obtained finally as follows: q z (p)=a·Q price (p)+b·Q du (p)+c·Q av (p)+d·Q re (p)+e·Q rep (p) wherein a + b + c + d + e is 1.
Alternatively, the service valuation score of a service may be mapped to a fixed value, but this consideration is not comprehensive, as such service valuation scores cannot be dynamically changed from policy to policy. Selecting proper parameters according to the requirement of the strategy, and calculating the comprehensive service evaluation score Q of each service Z
Optionally, the complex processing process is divided into a plurality of service categories for processing, and an execution structure of a plurality of server sets, such as a sequential structure, a parallel structure, a conditional structure, and a cyclic structure, may be determined according to the processing flow of the service to be processed.
Optionally, in the method for selecting a server provided in the embodiment of the present application, identifying a server set used for processing a service to be processed includes: determining a plurality of server sets for processing a service to be processed; determining an execution structure of a plurality of server sets, wherein the execution structure comprises: a sequential structure, a parallel structure, a conditional structure, a cyclic structure; the execution order of the plurality of server sets is determined according to the execution structure.
In the above embodiment of the present invention, the service to be processed may need to be executed by servers of multiple service categories, so that multiple server sets needed by the service to be processed and execution structures of the multiple server sets need to be identified, and then an execution order of the multiple server sets is determined based on the execution structures, so that the servers can be selected to be executed in the server sets according to the execution order, and the orderly execution of the multiple servers is ensured.
Alternatively, the execution structure of the plurality of server sets may be determined according to a workflow model of the service to be processed, the workflow model being used for representing the service class and the process flow required to be used for processing the service to be processed.
The workflow model will be used below to illustrate how the method enables quality of service driven distributed service selection. The Petri net can be used for workflow modeling aiming at enterprise-level business processing. FIGS. 2a-d are four basic structures (i.e., the execution structures of multiple server sets) for workflow modeling, as shown in FIGS. 2a-d, including: sequential structure, parallel structure, conditional structure, cyclic structure.
Fig. 2a is a schematic diagram of a sequential structure provided according to an embodiment of the present application, where as shown in fig. 2a, the sequential structure refers to a segment in a flow, in which activities are triggered to be executed in a fixed order, mainly for expressing cause-and-effect relationships between jobs, and services t1, t2, and t3 are executed sequentially according to a specified order.
Fig. 2b is a second schematic diagram of a parallel structure provided according to the embodiment of the present application, and as shown in fig. 2b, the parallel structure means that services t2 and t3 are executed in parallel, but they may be executed in any order, and for such parallel routing, two logic "gate" structures need to be constructed: and a relationship branch; and the relationship is merged.
Fig. 2c is a schematic diagram three of a parallel structure provided according to the embodiment of the present application, and as shown in fig. 2c, the conditional structure means that services t2 and t3 are examples of conditional execution, that is, after service t1 executes, service t2 or service t3 executes, and two logic "gate" structures are also used here: or a relationship branch; or the relationship converges.
Fig. 2d is a fourth schematic diagram of a parallel structure provided according to the embodiment of the present application, and as shown in fig. 2d, a loop structure: it is sometimes necessary to perform a certain service (e.g., t2) repeatedly for a plurality of times (e.g., a certain condition is not satisfied at the egress).
Fig. 3 is a schematic diagram of each service invocation in the workflow model provided according to the embodiment of the present application, and as shown in fig. 3, for each transition that needs to invoke service processing, a structure that invokes an optimal service processing original service is used instead.
Fig. 4 is a schematic diagram of a quality of service driven distributed service selection call provided according to an embodiment of the present application, as shown in fig. 4, as shown in fig. 3: a is selected and called for the service; b is the use of service; c is the recovery of the service used up.
It should be noted that, this structure is composed of five libraries at the same time, and these five libraries represent five states of service usage respectively; the original library l represents an original service (i.e. a service to be processed) waiting for processing, and is used for storing the service to be processed; the service library m represents a set of servers providing certain functions for storing a plurality of servers of the same service class; the execution library n represents a set of an original service (namely, a service to be processed) and a selected server (namely, a target server) and is used for storing the service to be processed and the target server; the processing library o represents a set of processed services (i.e., services to be processed) and selected servers (i.e., target servers); the cache library p represents a set of processed services (i.e., processed services).
Alternatively, the original library may be a cache library of the last server process.
Optionally, in the method for selecting a server provided in the embodiment of the present application, before determining the server set for the service to be processed, the method further includes: acquiring a plurality of preset servers; identifying the service category of each preset server; and storing preset servers belonging to the same service class in the same service library.
In the embodiment of the invention, a plurality of service libraries can be preset, each service library is used for storing one or more servers of the same service type, and further, in the process of calling the target server, the target server can be directly called from the corresponding service library of the server set, so that the calling efficiency of the target server can be improved.
Optionally, the service class of each server is predetermined, and the servers of the same service class are stored in the same service library, so that the classification of the servers is realized.
Optionally, a call instruction of the server may be stored in the service library, and the corresponding server may be called in the network based on the call instruction.
Optionally, in the method for selecting a server provided in the embodiment of the present application, invoking a server with a highest service evaluation score as a target server includes: calling a target server with the highest service evaluation score from a service library; and storing the service to be processed and the target server into an execution library.
According to the embodiment of the invention, after the target server with the highest service evaluation score is determined, the target server can be called into the execution library from the service library, and the service to be processed can be called into the execution library, so that the target server is matched with the service to be processed, the target server can be conveniently used for processing the service to be processed subsequently, and the processing efficiency and accuracy are improved.
Optionally, in the method for selecting a server provided in the embodiment of the present application, processing a service to be processed based on a target server includes: calling a target server from an execution library to process a service to be processed to obtain a processed service; and storing the processed service and the target server into a processing library.
In the embodiment of the invention, after the target server is called from the execution library to process the service to be processed, the service to be processed can be processed into the processed service, and the target server cannot be changed illegally, so that the processed service and the target server can be obtained after processing, the processed service and the target server are stored in the processing library, the loss of the processed service and the target server can be avoided, and the subsequent use is facilitated.
Optionally, in the method for selecting a server provided in the embodiment of the present application, after storing the processed service and the target server in the processing library, the method further includes: returning the target server in the processing library; and storing the processed service into a cache library, wherein the processed service stored in the cache library is a service to be processed which needs to be processed by the next server.
In the embodiment of the present invention, since the target server in the processing library has already executed the processing of the service to be processed, the target server does not need to be used in the subsequent processing process, and the executed target server in the processing library can be returned, and the processed service is stored in the cache library as the service to be processed executed by the next server for use by the next server.
Alternatively, in a case where the service to be processed needs to be executed by a plurality of servers of the target service type, the target servers may be acquired one by one and executed respectively.
For example, a first target server is selected to be executed first, and after the first target server is executed; and executing the selection of the second target server.
Alternatively, in the case where the service to be processed needs to be executed by a plurality of servers of the target service type, the plurality of target servers may be acquired respectively and then executed together.
For example, a first target server and a second target server of different service types are respectively selected, and then the first target server and the second target server are used in the same execution process.
The foregoing introduces the principle of qos-driven distributed service selection invocation, but the actual application system is quite complex, however, according to the foregoing, it is important that a structure is provided in the qos-driven service composition system, that is, a structure for invoking the optimal service processing original service, and hereinafter, CPN Tools are used to draw and edit the structure, which can reflect the qos-driven characteristics when the software tool simulates and analyzes the system. CPN Tools is a tool used to edit, simulate and analyze colored Petri nets. Its GUI (graphical user interface) is based on advanced interactive technologies, such as: toolglasses, marking menu, and bi-manual interaction, among others. Its feedback device provides contextual error information and interdependencies between display web elements. The tool is characterized by adding a semantic checking function and a code generating function when constructing a network. A fast simulator can effectively process both time independent nets and time dependent nets. Global and local state libraries are automatically generated and analyzed, and a standard state library report containing information such as boundedness and activity is given.
Optionally, in order to model the method using CPN Tools and simulate the operation, the following modifications are made:
1) some of the above mentioned system functions are simplified for the convenience of simulation and analysis, such as: the service rating score of a service is mapped to an integer, and the used service is selected by comparing the size of the integer.
2) For the convenience of comparison, the scale of the system is also reduced, and it is assumed that the server sets of each class are respectively: a, b and c, each server set has two services with different service evaluation scores.
3) For convenience of description and to make the working process of the whole system more visible to everyone, the first selector is divided into three, that is, when selecting a server, each type of service has its own optimal service selector (respectively: select1, select2, select 3).
According to the schematic diagram of the model demonstration of the service quality driven service selection method in the sequential structure provided by the embodiment of the application, as shown in fig. 5a to 5e, a service to be processed with a service evaluation score of 1 and belonging to class d is stored in a repository p 0; the service library p1 stores two class a servers, and the service evaluation scores are respectively: 2 and 3; the service library p3 stores two b-type servers, and the service evaluation scores are respectively: 4 and 5; the service library p5 stores two class-c servers, and the service evaluation scores are respectively: 6 and 7; the storehouse p2 is used for storing a class a service with a larger service evaluation score, the storehouse p4 is used for storing a class b service with a larger service evaluation score, and the storehouse p6 is used for storing a class c service with a larger service evaluation score; the execution library p7 is used for storing the service to be processed and the selected target server; the processing library p8 is used for storing the processed service and the selected target server; the cache library p9 is used for storing processed services.
Optionally, transition select1 is used to select the optimal class a service, transition select2 is used to select the optimal class b service, and transition select3 is used to select the optimal class c service; the transformation collection is used for collecting the service to be processed and the selected optimal service; the process that the migration use uses the server to process the original service (namely the service to be processed); the transition return is used to return the server.
Fig. 5a is a schematic diagram of a model demonstration of a service quality driven service selection method in a sequential structure according to an embodiment of the present application, where, as shown in fig. 5a, in an initial stage, three transitions, select1, select2, and select3, are conditional, and a transition to be performed next is any one or more of the three transitions.
Fig. 5b is a schematic diagram of a model demonstration of a service quality-driven service selection method in a sequential structure according to the embodiment of the present application, and as shown in fig. 5b, at a later stage of selecting an optimal server (i.e., a target server), the repositories p2, p4, and p6 have already obtained the optimal service in various service sets, and the next transition to be executed is collect because it has the conditions required for occurrence.
Fig. 5c is a third schematic diagram of a model demonstration of a service quality-driven service selection method in a sequential structure according to the embodiment of the present application, and as shown in fig. 5c, at a stage after the collection of the service to be processed and the optimal server (i.e., the target server), the library p7 has already obtained a token of a composite set, so that the transition use also has a condition for occurrence.
Fig. 5d is a fourth schematic diagram of a model demonstration of a service quality-driven service selection method in a sequential structure according to the embodiment of the present application, as shown in fig. 5d, at a stage after an original service (i.e., a service to be processed) is processed by an optimal server (i.e., a first target service). The vault p8 has already obtained a token for the composite set, so the transition return is also conditioned to occur.
Fig. 5e is a fifth schematic diagram of a model demonstration of a service quality driven service selection method in a sequential structure according to the embodiment of the present application, as shown in fig. 5e, at a later stage of returning to the server, the depository p9 has already obtained a token of d set, and the depositories p1, p3, and p5 have also added tokens of a class, b class, and c class, respectively. Furthermore, the three transitions of select1, select2 and select3 are conditional, and the transition to be executed next is any one or more of the three transitions, that is, the selector will select the best service types for the next service to be processed.
Fig. 5f is a sixth schematic diagram of a model demonstration of a service quality-driven service selection method in a sequential structure according to an embodiment of the present application, and as shown in fig. 5f, at a later stage of selecting various optimal servers, no transition has been executed until the next service to be processed appears.
After the above steps, the simulation of the system model using CPN Tools is substantially completed. Through the simulation, how the system operates can be visually and clearly seen, so that the theoretical model mentioned above can be more intuitively understood.
Next, the present invention will be described with reference to an information management system as an example, wherein the server (i.e., the target server) is selected.
It should be noted that the Geographic Information System (GIS) is an Information System designed to process spatial or Geographic coordinate reference data, and is different from other Information systems mainly in that the managed objects are spatial data and the data volume is huge, so GIS provides special map data visualization and spatial analysis operations besides integrating the query and statistical analysis operations of the traditional database.
Since the operation of GIS systems often involves large amounts of image data and sophisticated analysis techniques, the server is often fully loaded, resulting in slow response to client requests and even frequent timeout errors. For example, invoking the same sequence of GIS Web service operations on the server of the ESRI company, the time to return results can fluctuate from a dozen seconds to more than a minute, or even time out.
In order to alleviate the influence caused by the load problem, GIS client program developers can only select the server by themselves according to experience at present. For example: if the programmer only knows that Intergragh and Demis are both provided with servers that comply with the OGC WMS and empirically knows that Demis 'servers are faster in most cases, then Demis' servers are used by default. However, this selection is somewhat blind and cannot guarantee the quality of service effectively, because there are great differences in services: the data has strong regionality and various algorithms, and GIS services provided by different suppliers have various differences such as service price, service availability, result accuracy, server performance and the like.
To address the above-described dilemma, attempts have been made to provide objective, automatic selection services for GIS clients using quality of service driven service composition systems. In practice, this system is complex and difficult to implement, however, more complex systems also require several basic tasks to be performed: and establishing equivalence classes, evaluating the quality of the equivalent services, and selecting the optimal service by using a selector.
Fig. 6 is a schematic diagram of an equivalent service set for obtaining a map according to an embodiment of the present application, where as shown in fig. 6, a user who holds a certificate runs an application program, obtains a map through the user application program, and obtains a service capable of providing a map based on an identity code for identifying the map based on the equivalent service.
This problem needs to be studied theoretically. For ease of illustration, consider an application example of how a quality of service driven service composition system model for a GIS is built and how the system operates.
As is well known, the bridge in Su Hang region is very characteristic and has research value. If there, the whole village is known as the first water county in China, the water county face of the south of the Yangtze river is called, and more than ten ancient bridges are kept. Therefore, in order to facilitate architecturally specialists in the study of these valuable bridges, we now have a task of: and (3) collecting, sorting and uniformly displaying information (including positions, shapes, characteristics, histories and the like) of all bridges in the Suhang region.
The quality of service driven service composition system model for this task is built according to the basic steps of system design described above.
According to the nature and workflow of the whole task, the typical operation of GIS is combined: spatial data processing, spatial query and analysis, spatial information visualization, etc., and a Petri network is used for establishing a basic workflow model of the task.
Fig. 7 is a schematic diagram of a spatial information processing flow model provided according to an embodiment of the present application, and as shown in fig. 7, a workflow model thereof is: obtaining the total geographic information of the Su and Hang places through a space query process; analyzing bridge information from the geographic information through a spatial analysis process; processing the bridge information about the two places of Su and Hang through a spatial data processing process, such as classifying the bridge information; comprehensive bridge information of the Su and Hang places is displayed in a classified mode through a spatial information visualization process; therefore, the spatial information processing procedure shown in fig. 7 requires the use of a plurality of server sets, and the plurality of server sets are in a sequential structure, and the use of the server sets includes: the spatial query service category is used for querying the overall geographic information of the two places from Su Hang; the system comprises a spatial analysis service class used for analyzing bridge information from geographic information, a spatial data processing service class used for processing bridge information (such as classification) of the Su and Han places, and a spatial information visual display service class used for displaying comprehensive bridge information of the Su and Han places in a classified manner.
Fig. 8 is a schematic diagram of a processing model of a distributed service selection method using service driving in the method according to an embodiment of the present application, and as shown in fig. 8, a process of "obtaining global geographic information of suzhou and hang through a spatial query process" is taken as an example to illustrate, where an original library P 1 Representing a service to be processed; service repository P 2 Representing a service set (namely a space query service category) for providing geographical information of two places from Suzhong to Suzhong; execution library P 3 Representing that the optimal target server and the set of the services to be processed are selected; processing library P 4 Indicating that the optimal target server (i.e. the target server of the spatial query service class) is selected and processedA set of services (services in which information of both suhangzhou places is backed up); cache pool P 5 Indicating a processed service (a service for backing up information of two places from Su and Hang); t is 1 Representing the collection and selection of the optimal service (i.e. selecting the target server) for providing geographical information of both Su and Hang areas, T 2 Indicating processing service (backup suhang two-place geographic information), T 3 And the server is used for indicating the completion of processing and returning and providing geographical information of both Su and Hang areas.
Optionally, spatial analysis (obtaining the total geographic information of the two sovereign places), spatial data processing (obtaining the total geographic information of the two sovereign places), and spatial information visualization (obtaining the total geographic information of the two sovereign places) can be analyzed in the way of spatial query (obtaining the total geographic information of the two sovereign places), so that a service quality-driven service synthesis system model of the task is drawn comprehensively and finely.
For example, with a cache bank P 5 And as an original library for analyzing the bridge information from the geographic information through a spatial analysis process, selecting an optimal target server of a spatial analysis service class for processing.
FIG. 9 is a schematic diagram of a graph of a Petri network according to an embodiment of the present application, and as shown in FIG. 9, since the graph in which the Petri network is drawn more finely is larger and only a schematic diagram thereof is given due to space limitation, in FIG. 9, t 1 The method comprises the steps of representing the collection and selection of the optimal service (namely a target server of a space query service category) for providing geographical information of the two places of Suzhong; t is t 2 Representing processing services (backup geographical information of Su and Hang provinces); t is t 3 A server for indicating the completion of processing and returning and providing geographical information of both Su and Hang areas; t is t 4 The optimal analysis service (namely a target server of a spatial analysis service category) for selecting and analyzing geographical information of the two places of Suhang is represented; t is t 5 Representing processing services (analyzing geographical information of Su Hang two places); t is t 6 A server for indicating the completion of processing and returning and analyzing geographical information of Su and Hang places; t is t 7 Representing the optimal computing service (namely a target server of a spatial data processing category) for selecting and processing geographical information of the Suhang two places; t is t 8 Presentation processing service (Su and Han dynasties processing)Geographical information of the ground); t is t 9 A server for processing geographical information of Su and Hang areas; t is t 10 The method comprises the steps that an optimal image processing service (namely a target server of a spatial information visualization service category) for showing geographical information of Suzhong and Hangzhou places is selected; t is t 11 Representing processing services (displaying geographical information of both Su and Hang); t is t 12 And the graphic processing service is used for representing the completion of processing and returning and displaying geographic information of both Su and Han places.
The present invention proposes quality of service driving. In a network environment, there are many redundant services according to the needs of users, so that equivalent services can be defined semantically, classified into one class, and then a Selector (Selector) is added to automatically select the optimal service (i.e. select a target server) required by the users. The selector is objective in selecting service, and can select the most appropriate service for the user by calculating through a mathematical model in the method according to the current conditions of each service quality and the requirements of the user and corresponding strategies. In this sense, the method not only can get rid of the influence of subjective factors of the administrator, but also can improve the automation level of the system, reduce the workload of the administrator and improve the efficiency of the whole system.
According to the test tool based on the workflow model, when the distributed service is called and selected, a selector is added, the selector can automatically calculate according to a service quality evaluation method defined by a client, and automatically selects a server with the highest service quality to execute according to a calculation result, so that the automation level of a system is provided, the best service can be called, the work of an administrator is reduced, and the efficiency and the load balancing capacity of the whole system are improved.
The distributed service selection method driven by the service quality can be driven by the quality and improve the working efficiency. Since each time a service provided by the network needs to be used (corresponding to when a transition occurs), the selector (which automatically calculates the quality of service according to the formula in the method) can be used to select the service with the best quality of service, so that the client can enjoy the most suitable service each time. This also increases the security of the system, since if not selected, some bad servers may be selected, thereby causing the system to operate incorrectly. A contention mechanism is introduced. When selecting the optimal service, it is equivalent to adding a competition factor into the system, and in order for the service provider to use the service provided by the service provider, the service provider must ensure the quality of the service so as to win the competition.
It should be noted that the steps illustrated in the flowcharts of the figures may be performed in a computer system such as a set of computer-executable instructions and that, although a logical order is illustrated in the flowcharts, in some cases, the steps illustrated or described may be performed in an order different than presented herein.
The embodiment of the present application further provides a selection device for a server, and it should be noted that the selection device for a server in the embodiment of the present application may be used to execute the selection method for a server provided in the embodiment of the present application. The following describes a selection device of a server according to an embodiment of the present application.
Fig. 10 is a schematic diagram of a selection device of a server provided according to an embodiment of the present application. As shown in fig. 10, the apparatus includes: an obtaining unit 1002, configured to obtain a service to be processed; an identifying unit 1004 for identifying a set of servers for processing a service to be processed, wherein the set of servers includes at least a first server and a second server; a calculating unit 1006, configured to calculate service evaluation scores of the first server and the second server; a calling unit 1008, configured to call a server with the highest service evaluation score as a target server; and a processing unit 1010, configured to process the service to be processed based on the target server.
It should be noted that the obtaining unit 1002 in this embodiment may be configured to execute the step S102 in this embodiment, the identifying unit 1004 in this embodiment may be configured to execute the step S104 in this embodiment, the calculating unit 1006 in this embodiment may be configured to execute the step S106 in this embodiment, the invoking unit 1008 in this embodiment may be configured to execute the step S108 in this embodiment, and the processing unit 1010 in this embodiment may be configured to execute the step S110 in this embodiment. The above units are the same as the examples and application scenarios realized by the corresponding steps, but are not limited to the disclosure of the above embodiments.
As an alternative embodiment, the calculation unit comprises: a first obtaining module, configured to obtain a service parameter of each server, where the service parameter at least includes: execution price, execution time, execution information, reputation, reliability, and availability; and the first determining module is used for determining the service evaluation score according to the service parameters of each server.
As an alternative embodiment, the identification unit comprises: the second determining module is used for determining a plurality of server sets for processing the service to be processed; a third determining module, configured to determine an execution structure of the plurality of server sets, where the execution structure includes: a sequential structure, a parallel structure, a conditional structure, a cyclic structure; and the fourth determining module is used for determining the execution sequence of the plurality of server sets according to the execution structure.
As an alternative embodiment, the apparatus further comprises: the second acquisition module is used for acquiring a plurality of preset servers before determining a server set for the service to be processed; the identification module is used for identifying the service category of each preset server; and the storage module is used for storing the preset servers belonging to the same service category in the same service library.
As an alternative embodiment, the calling unit includes: the calling module is used for calling the target server with the highest service evaluation score from the service library; and the second storage module is used for storing the service to be processed and the target server into the execution library.
As an alternative embodiment, the processing unit comprises: the second calling module is used for calling the target server from the execution library to process the service to be processed to obtain the processed service; and the third storage module is used for storing the processed service and the target server into the processing library.
As an alternative embodiment, after storing the processed service and the target server in the processing library, the apparatus further comprises: returning the target server in the processing library; and storing the processed service into a cache library, wherein the processed service stored in the cache library is a service to be processed which needs to be processed by the next server.
The selection device of the server provided by the embodiment of the application acquires the service to be processed; identifying a server set used for processing a service to be processed, wherein the server set at least comprises a first server and a second server; calculating service evaluation scores of the first server and the second server; calling the server with the highest service evaluation score as a target server; the processing service is processed based on the target server, the problem that the server cannot be accurately selected in the related technology is solved, and the effect of accurately selecting the server is achieved.
The selection device of the server comprises a processor and a memory, the acquisition unit, the identification unit, the calculation unit, the calling unit, the processing unit and the like are stored in the memory as program units, and the processor executes the program units stored in the memory to realize corresponding functions.
The processor comprises a kernel, and the kernel calls the corresponding program unit from the memory. The kernel can be set to be one or more, and the target server corresponding to the server set is automatically selected to process the service to be processed by adjusting the kernel parameters.
The memory may include volatile memory in a computer readable medium, Random Access Memory (RAM) and/or nonvolatile memory such as Read Only Memory (ROM) or flash memory (flash RAM), and the memory includes at least one memory chip.
An embodiment of the present invention provides a computer-readable storage medium on which a program is stored, which, when executed by a processor, implements a selection method of the server.
The embodiment of the invention provides a processor, which is used for running a program, wherein the selection method of a server is executed when the program runs.
As shown in fig. 11, an embodiment of the present invention provides an electronic device 1100, which includes a processor 1102, a memory 1104 and a program stored in the memory and running on the processor, and when the processor executes the program, the processor implements the following steps: acquiring a service to be processed; identifying a server set used for processing a service to be processed, wherein the server set at least comprises a first server and a second server; calculating service evaluation scores of the first server and the second server; calling the server with the highest service evaluation score as a target server; and processing the service to be processed based on the target server.
Optionally, the processor may further implement the following steps when executing the program: obtaining service parameters of each server, wherein the service parameters at least comprise: execution price, execution time, execution information, reputation, reliability, and availability; and determining a service evaluation score according to the service parameters of each server.
Optionally, the processor may further implement the following steps when executing the program: determining a plurality of server sets for processing a service to be processed; determining an execution structure of a plurality of server sets, wherein the execution structure comprises: a sequential structure, a parallel structure, a conditional structure, a cyclic structure; the execution order of the plurality of server sets is determined according to the execution structure.
Optionally, the processor may further implement the following steps when executing the program: acquiring a plurality of preset servers before determining a server set for a service to be processed; identifying the service category of each preset server; and storing preset servers belonging to the same service class in the same service library.
Optionally, the processor may further implement the following steps when executing the program: calling a target server with the highest service evaluation score from a service library; and storing the service to be processed and the target server into an execution library.
Optionally, the processor may further implement the following steps when executing the program: calling a target server from an execution library to process a service to be processed to obtain a processed service; and storing the processed service and the target server into a processing library.
Optionally, the processor may further implement the following steps when executing the program: after storing the processed service and the target server in the processing library, returning the target server in the processing library; and storing the processed service into a cache library, wherein the processed service stored in the cache library is a service to be processed which needs to be processed by the next server.
The device herein may be a server, a PC, a PAD, a mobile phone, etc.
The present application further provides a computer program product adapted to perform a program for initializing the following method steps when executed on a data processing device: acquiring a service to be processed; identifying a server set used for processing a service to be processed, wherein the server set at least comprises a first server and a second server; calculating service evaluation scores of the first server and the second server; calling the server with the highest service evaluation score as a target server; and processing the service to be processed based on the target server.
Alternatively, it is adapted to perform a procedure when executed on a data processing device, which initializes the following method steps: obtaining service parameters of each server, wherein the service parameters at least comprise: execution price, execution time, execution information, reputation, reliability, and availability; and determining a service evaluation score according to the service parameters of each server.
Alternatively, it is adapted to perform a procedure when executed on a data processing device, which initializes the following method steps: determining a plurality of server sets for processing a service to be processed; determining an execution structure of a plurality of server sets, wherein the execution structure comprises: a sequential structure, a parallel structure, a conditional structure, a cyclic structure; the execution order of the plurality of server sets is determined according to the execution structure.
Alternatively, it is adapted to perform a procedure when executed on a data processing device, which initializes the following method steps: acquiring a plurality of preset servers before determining a server set for a service to be processed; identifying the service category of each preset server; and storing preset servers belonging to the same service class in the same service library.
Alternatively, it is adapted to perform a procedure when executed on a data processing device, which initializes the following method steps: calling a target server with the highest service evaluation score from a service library; and storing the service to be processed and the target server into an execution library.
Alternatively, it is adapted to perform a procedure when executed on a data processing device, which initializes the following method steps: calling a target server from an execution library to process a service to be processed to obtain a processed service; and storing the processed service and the target server into a processing library.
Alternatively, it is adapted to perform a procedure when executed on a data processing device, which initializes the following method steps: after storing the processed service and the target server in the processing library, returning the target server in the processing library; and storing the processed service into a cache library, wherein the processed service stored in the cache library is a service to be processed which needs to be processed by the next server.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). The memory is an example of a computer-readable medium.
Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer readable medium does not include a transitory computer readable medium such as a modulated data signal and a carrier wave.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in the process, method, article, or apparatus that comprises the element.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The above are merely examples of the present application and are not intended to limit the present application. Various modifications and changes may occur to those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.

Claims (10)

1. A method for selecting a server, comprising:
acquiring a service to be processed;
identifying a set of servers for processing the service to be processed, wherein the set of servers comprises at least a first server and a second server;
calculating service evaluation scores of the first server and the second server;
calling the server with the highest service evaluation score as a target server;
and processing the service to be processed based on the target server.
2. The method of claim 1, wherein calculating the service valuation scores for the first server and the second server comprises:
obtaining service parameters of each server, wherein the service parameters at least comprise: execution price, execution time, execution information, reputation, reliability, and availability;
determining the service evaluation score according to the service parameters of each server.
3. The method of claim 1, wherein identifying a set of servers for processing the service to be processed comprises:
determining a plurality of server sets for processing the service to be processed;
determining an execution structure for a plurality of the server sets, wherein the execution structure comprises: a sequential structure, a parallel structure, a conditional structure, a cyclic structure;
determining an execution order of the plurality of server sets according to the execution structure.
4. The method of claim 1, wherein prior to determining the set of servers for servicing the to-be-processed, the method further comprises:
acquiring a plurality of preset servers;
identifying the service category of each preset server;
and storing preset servers belonging to the same service class in the same service library.
5. The method of claim 4, wherein invoking the server with the highest service rating score as the target server comprises:
calling a target server with the highest service evaluation score from the service library;
and storing the service to be processed and the target server into an execution library.
6. The method of claim 5, wherein processing the service to be processed based on the target server comprises:
calling the target server from the execution library to process the service to be processed to obtain a processed service;
and storing the processed service and the target server into a processing library.
7. The method of claim 6, wherein after storing the processed service and the target server in a process library, the method further comprises:
returning the target server in the processing library;
and storing the processed service into a cache library, wherein the processed service stored in the cache library is a service to be processed which needs to be processed by the next server.
8. A server selection apparatus, comprising:
the system comprises an acquisition unit, a processing unit and a processing unit, wherein the acquisition unit is used for acquiring a service to be processed;
the system comprises an identification unit, a processing unit and a processing unit, wherein the identification unit is used for identifying a server set used for processing the service to be processed, and the server set at least comprises a first server and a second server;
a calculating unit, configured to calculate service evaluation scores of the first server and the second server;
the calling unit is used for calling the server with the highest service evaluation score as a target server, wherein the server comprises a first server and a second server;
and the processing unit is used for processing the service to be processed based on the target server.
9. A processor, characterized in that the processor is configured to run a program, wherein the program when running performs the method of selecting a server according to any one of claims 1 to 7.
10. An electronic device comprising one or more processors and memory for storing one or more programs, wherein the one or more programs, when executed by the one or more processors, cause the one or more processors to implement the method of selecting a server of any of claims 1-7.
CN202210462563.7A 2022-04-28 2022-04-28 Server selection method and device, processor and electronic equipment Pending CN114844899A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210462563.7A CN114844899A (en) 2022-04-28 2022-04-28 Server selection method and device, processor and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210462563.7A CN114844899A (en) 2022-04-28 2022-04-28 Server selection method and device, processor and electronic equipment

Publications (1)

Publication Number Publication Date
CN114844899A true CN114844899A (en) 2022-08-02

Family

ID=82566877

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210462563.7A Pending CN114844899A (en) 2022-04-28 2022-04-28 Server selection method and device, processor and electronic equipment

Country Status (1)

Country Link
CN (1) CN114844899A (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150107296A (en) * 2014-03-14 2015-09-23 한국건설기술연구원 Method and system of management of each process step and support of decision making in the field of plant construction using mobile devices
CN106657367A (en) * 2016-12-30 2017-05-10 北京三快在线科技有限公司 Service data acquisition method, device and system
JP2019174969A (en) * 2018-03-27 2019-10-10 株式会社東芝 Communication system, gateway device and communication method
CN113590342A (en) * 2021-09-29 2021-11-02 睿至科技集团有限公司 Resource allocation method and system in cloud computing system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150107296A (en) * 2014-03-14 2015-09-23 한국건설기술연구원 Method and system of management of each process step and support of decision making in the field of plant construction using mobile devices
CN106657367A (en) * 2016-12-30 2017-05-10 北京三快在线科技有限公司 Service data acquisition method, device and system
JP2019174969A (en) * 2018-03-27 2019-10-10 株式会社東芝 Communication system, gateway device and communication method
CN113590342A (en) * 2021-09-29 2021-11-02 睿至科技集团有限公司 Resource allocation method and system in cloud computing system

Similar Documents

Publication Publication Date Title
US10554508B2 (en) Updating a topology graph representing a distributed computing system by monitoring predefined parameters with respect to predetermined performance threshold values and using predetermined rules to select a combination of application, storage and database server nodes to meet at least one service level objective (SLO)
US9864672B2 (en) Module specific tracing in a shared module environment
US10467129B2 (en) Measuring and optimizing test resources and test coverage effectiveness through run time customer profiling and analytics
Silva et al. Cloudbench: Experiment automation for cloud environments
US11233708B1 (en) System, apparatus and method for deploying infrastructure to the cloud
US10686891B2 (en) Migration of applications to a computing environment
US9311213B2 (en) Module database with tracing options
US20150067654A1 (en) Tracing System for Application and Module Tracing
Baranwal et al. A cloud service selection model using improved ranked voting method
US11176187B2 (en) Data insight discovery using a clustering technique
US10158725B2 (en) Differentiated service identification in a networked computing environment
Varghese et al. Cloud benchmarking for maximising performance of scientific applications
US20160092813A1 (en) Migration estimation with partial data
CN113867700B (en) Model construction method, display platform, server and storage medium
US11360877B2 (en) Forming microservices from monolithic applications
CN114844899A (en) Server selection method and device, processor and electronic equipment
US20180074947A1 (en) Using run time and historical customer profiling and analytics to iteratively design, develop, test, tune, and maintain a customer-like test workload
US11093636B2 (en) Maintaining data protection compliance and data inference from data degradation in cross-boundary data transmission using containers
US10303579B2 (en) Debug session analysis for related work item discovery
EP3042314B1 (en) Module specific tracing in a shared module environment
US10318410B2 (en) Using customer profiling and analytics to understand customer environment and workload complexity and characteristics by industry
GARG PERFORMANCE ANALYSIS AND BENCH MARKING OF THE MICRO VIRTUAL MACHINES BY PUBLIC CLOUD SERVICE PROVIDERS
FIEVEZ Hardware assessment and bottleneck analysis for database-as-a-service prototype
Johansson Evaluation of Cloud Native Solutions for Trading Activity Analysis
Butt Autoscaling through Self-Adaptation Approach in Cloud Infrastructure. A Hybrid Elasticity Management Framework Based Upon MAPE (Monitoring-Analysis-Planning-Execution) Loop, to Ensure Desired Service Level Objectives (SLOs)

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