CN116170512A - Service scheduling method, device, equipment and storage medium - Google Patents

Service scheduling method, device, equipment and storage medium Download PDF

Info

Publication number
CN116170512A
CN116170512A CN202310149703.XA CN202310149703A CN116170512A CN 116170512 A CN116170512 A CN 116170512A CN 202310149703 A CN202310149703 A CN 202310149703A CN 116170512 A CN116170512 A CN 116170512A
Authority
CN
China
Prior art keywords
service
target
service provider
determining
target service
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
CN202310149703.XA
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 CN202310149703.XA priority Critical patent/CN116170512A/en
Publication of CN116170512A publication Critical patent/CN116170512A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The disclosure provides a service scheduling method, a device, equipment and a storage medium, which can be applied to the technical field of Internet. The method comprises the following steps: determining service call information contained in a service call request by utilizing a centralized logic node cluster in response to the service call request sent by a service calling party, wherein the service call information comprises target service contents to be called; determining a target actual routing address corresponding to target service content according to the target service content to be called; determining a target service provider according to the target actual routing address; and receiving a processing result of the service call request processed by the target service provider and sending the processing result to the service caller.

Description

Service scheduling method, device, equipment and storage medium
Technical Field
The present disclosure relates to the field of internet technologies, and in particular, to a service scheduling method, apparatus, device, storage medium, and program product.
Background
In a distributed scene, the number of micro services is hundreds to thousands, and the call between the services is more complicated, so that the problems of more consumption of server resources, slow network, increased operation and maintenance pressure and the like can exist. Therefore, how to manage and schedule the traffic of each service is a problem that needs to be solved in the process of micro-service management and scheduling.
Disclosure of Invention
In view of the foregoing, the present disclosure provides a service scheduling method, apparatus, device, storage medium, and program product.
In one aspect of the present disclosure, a service scheduling method is provided, including: determining service call information contained in a service call request by utilizing a centralized logic node cluster in response to the service call request sent by a service calling party, wherein the service call information comprises target service contents to be called; determining a target actual routing address corresponding to target service content according to the target service content to be called; determining a target service provider according to the target actual routing address; and receiving a processing result of the service call request processed by the target service provider and sending the processing result to the service caller.
According to an embodiment of the present disclosure, determining service call information included in a service call request includes: analyzing the metadata of the service call request to obtain an analysis result; and determining service call information contained in the service call request according to the analysis result.
According to an embodiment of the present disclosure, determining, according to target service content to be invoked, a target actual routing address corresponding to the target service content includes: and calling a service routing table, and searching a target actual routing address corresponding to the target service content in the service routing table according to the target service content to be called.
According to an embodiment of the present disclosure, receiving a processing result of processing a service call request by a target service provider and transmitting the processing result to the service caller includes: sending a service call request to a target service provider so that the target service provider processes the service call request to obtain a processing result; receiving a processing result transmitted by a target service provider; and determining a service calling party corresponding to the target service provider, and sending a processing result to the service calling party.
According to an embodiment of the present disclosure, determining a target service provider according to a target actual routing address includes: determining a service provider corresponding to the target actual routing address according to the target actual routing address; invoking a flow scheduling rule module to determine the flow of the service provider; in the case where the traffic of the service provider satisfies the preset threshold, the service provider is determined as a target service provider of the target service content.
According to an embodiment of the present disclosure, before receiving a service call request sent by a service caller, the method further includes: calling a service registration and discovery module to receive service information sent by a service provider; service information corresponding to the service provider is written into the service routing table.
According to an embodiment of the present disclosure, the above method further includes: updating the flow of the target service provider in real time according to the processing result; and updating the routing strategy of the target service content in real time according to the traffic condition of the target service provider.
Another aspect of the present disclosure provides a service scheduling apparatus, including: the response module is used for responding to the service call request sent by the service calling party by utilizing the centralized logic node cluster and determining service call information contained in the service call request, wherein the service call information comprises target service content to be called;
the first determining module is used for determining a target actual routing address corresponding to target service content according to the target service content to be called;
the second determining module is used for determining a target service provider according to the target actual routing address;
and the receiving module is used for receiving a processing result of the service calling request processed by the target service provider and sending the processing result to the service calling party.
Another aspect of the present disclosure also provides an electronic device, including: one or more processors; and a storage device 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 perform the method described above.
Another aspect of the present disclosure also provides a computer-readable storage medium having stored thereon executable instructions that, when executed by a processor, cause the processor to perform the above-described method.
Another aspect of the present disclosure also provides a computer program product comprising a computer program which, when executed by a processor, implements the above method.
Service scheduling methods, apparatus, devices, storage media and program products provided in accordance with the present disclosure. The method comprises the steps of determining a corresponding target actual routing address by utilizing a centralized logic node cluster to respond to target service content to be called, which is sent by a service calling party, determining a target service provider according to the target actual routing address, and sending the target service content to the target service provider through the centralized logic node cluster, so that the target service provider sends a processing result to the service calling party through the centralized logic node cluster. The service to be called is deployed by adopting the centralized logic node cluster, so that the technical problems of high resource consumption, slow network and high operation and maintenance pressure caused by the traditional service scheduling are at least partially solved, and the technical effects of effectively reducing the operation resource consumption, improving the network efficiency and reducing the operation and maintenance pressure are realized.
Drawings
The foregoing and other objects, features and advantages of the disclosure will be more apparent from the following description of embodiments of the disclosure with reference to the accompanying drawings, in which:
FIG. 1 schematically illustrates an application scenario diagram of a service scheduling method and apparatus according to an embodiment of the present disclosure;
fig. 2 schematically illustrates an application diagram of a service scheduling method and apparatus according to an embodiment of the present disclosure;
FIG. 3 schematically illustrates a flow chart of a service scheduling method according to an embodiment of the disclosure;
FIG. 4 schematically illustrates an interactive schematic of a service scheduling method according to an embodiment of the present disclosure;
fig. 5 schematically shows a block diagram of a service scheduler according to an embodiment of the present disclosure; and
fig. 6 schematically illustrates a block diagram of an electronic device adapted to implement a service scheduling method according to an embodiment of the disclosure.
Detailed Description
Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. It should be understood that the description is only exemplary and is not intended to limit the scope of the present disclosure. In the following detailed description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the embodiments of the present disclosure. It may be evident, however, that one or more embodiments may be practiced without these specific details. In addition, in the following description, descriptions of well-known structures and techniques are omitted so as not to unnecessarily obscure the concepts of the present disclosure.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. The terms "comprises," "comprising," and/or the like, as used herein, specify the presence of stated features, steps, operations, and/or components, but do not preclude the presence or addition of one or more other features, steps, operations, or components.
All terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art unless otherwise defined. It should be noted that the terms used herein should be construed to have meanings consistent with the context of the present specification and should not be construed in an idealized or overly formal manner.
Where expressions like at least one of "A, B and C, etc. are used, the expressions should generally be interpreted in accordance with the meaning as commonly understood by those skilled in the art (e.g.," a system having at least one of A, B and C "shall include, but not be limited to, a system having a alone, B alone, C alone, a and B together, a and C together, B and C together, and/or A, B, C together, etc.).
In the technical scheme of the disclosure, the related data (such as including but not limited to personal information of a user) are collected, stored, used, processed, transmitted, provided, disclosed, applied and the like, all conform to the regulations of related laws and regulations, necessary security measures are adopted, and the public welcome is not violated.
In a distributed scenario, the number of micro services is hundreds to thousands, and at present, the traditional flow management and scheduling of micro services are mainly realized in two ways. One is to mainly use a registry, such as zookeeper, eureka, as a medium for discovery and registration of micro services, and then start a shared sidecar (sidecar) program for each micro service to take charge of traffic management and scheduling of the micro services. However, this method needs to start a corresponding sidecar program for each micro service, and in the case of a large amount of micro service data, a large amount of resources are consumed to run the sidecar program, and at the same time, managing a large amount of sidecar processes increases operation and maintenance pressure.
Another way is to use a registry, such as zookeeper, eureka, as a medium for finding and registering micro services, but the micro services inside each node adopt a method of a side car program agent, which reduces the number of side cars to a certain extent, but has some drawbacks, namely, all micro services share one side car, and isolation is a problem; another is that when a node sidecar program fails, all micro-services running on that node will not be accessible since a single node will typically not start two identical programs.
Based on this, the embodiment of the disclosure provides a service scheduling method, including: determining service call information contained in a service call request by utilizing a centralized logic node cluster in response to the service call request sent by a service calling party, wherein the service call information comprises target service contents to be called; determining a target actual routing address corresponding to target service content according to the target service content to be called; determining a target service provider according to the target actual routing address; and receiving a processing result of the service call request processed by the target service provider and sending the processing result to the service caller.
Fig. 1 schematically illustrates an application scenario diagram of a service scheduling method and apparatus according to an embodiment of the present disclosure.
As shown in fig. 1, an application scenario 100 according to this embodiment may include a first terminal device 101, a second terminal device 102, a third terminal device 103, a network 104, and a server 105. The network 104 is a medium used to provide a communication link between the first terminal device 101, the second terminal device 102, the third terminal device 103, and the server 105. The network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, among others.
The user may interact with the server 105 through the network 104 using at least one of the first terminal device 101, the second terminal device 102, the third terminal device 103, to receive or send messages, etc. Various communication client applications, such as a shopping class application, a web browser application, a search class application, an instant messaging tool, a mailbox client, social platform software, etc. (by way of example only) may be installed on the first terminal device 101, the second terminal device 102, and the third terminal device 103.
The server 105 may be a server that provides various services, and may be a centralized logical node cluster. During the operation, the server 105 may run a program on the service side of an application, so as to implement a centralized logic node cluster of the service invocation system, thereby assisting a service caller in the service invocation system to find a corresponding service provider.
The first terminal device 101, the second terminal device 102, the third terminal device 103 may be various electronic devices having a display screen and supporting web browsing, including but not limited to smartphones, tablets, laptop and desktop computers, and the like. The service side device may respectively run a program applied on the terminal device side, so as to implement a service calling party or a service provider of the service calling system. The program of the service party running on the same terminal equipment side can be called as a service calling party in some scenarios and can be called by the service calling party as a service provider in other scenarios.
It should be noted that, the service scheduling method provided by the embodiments of the present disclosure may be generally performed by the server 105. Accordingly, the service scheduling apparatus provided by the embodiments of the present disclosure may be generally disposed in the server 105. The service scheduling method provided by the embodiments of the present disclosure may also be performed by a server or a server cluster that is different from the server 105 and is capable of communicating with the first terminal device 101, the second terminal device 102, the third terminal device 103, and/or the server 105. Accordingly, the service scheduling apparatus provided by the embodiments of the present disclosure may also be provided in a server or a server cluster that is different from the server 105 and is capable of communicating with the first terminal device 101, the second terminal device 102, the third terminal device 103, and/or the server 105.
It should be understood that the number of terminal devices, networks and servers in fig. 1 is merely illustrative. There may be any number of terminal devices, networks, and servers, as desired for implementation.
Fig. 2 schematically illustrates an application diagram of a service scheduling method and apparatus according to an embodiment of the present disclosure.
In this figure, a service device having one service caller and a service provider service device are taken as an illustration of service scheduling. It should be understood that the number of service devices of the service invoker and service provider is merely illustrative. The number of service invoker service devices and the number of data provider service devices that can have any data according to the actual need.
As shown in fig. 2, when the service provider 201 application is started, the service provider 201 establishes a connection with the centralized logical node cluster 202, and the service provider 201 sends a service list, call volume and traffic scheduling rule that it can service to the centralized logical node cluster 202. At the same time, when the application of the service calling party 203 is started, the service calling party 202 also establishes a connection with the centralized logic node cluster 202. The centralized logical node cluster 202 may include a service registration and discovery device 202-1, a call link analysis device 202-2, a traffic scheduling rule 202-3, and a call volume real-time computing device 202-4.
When the application of the service caller 203 is to call a remote service, the service caller 203 initiates a service call request to the centralized logic node cluster 202, the centralized logic node cluster 202 searches for a service corresponding to the service in the received service call request in the centralized logic node cluster 202 according to the received service call request, and forwards the service call request to the service provider 201, the service provider 201 processes the service call request, sends a processing result to the centralized logic node cluster 202, and the centralized logic node cluster 202 returns the processing result to the service caller 203. It should be appreciated that in some scenarios in fig. 2, the service provider may also be a service caller; the service caller may also be a service provider.
Fig. 3 schematically illustrates a flowchart of a service scheduling method according to an embodiment of the present disclosure.
As shown in fig. 3, the method 300 may include: operations S310 to S340.
In operation S310, service call information included in the service call request is determined in response to the service call request transmitted by the service caller using the centralized logic node cluster, wherein the service call information includes target service contents to be called.
According to embodiments of the present disclosure, a centralized logical node cluster may initiate a service device of a centralized proxy process. In the actual micro-service flow management application, in order to ensure high efficiency and availability, a standby proxy process can be started for performing fault switching in addition to the proxy process actually responsible for processing the service.
According to embodiments of the present disclosure, the service invocation request may contain service invocation information, which may include target service content that needs to be invoked. The target service content that needs to be invoked may include the name of the service that was invoked.
According to an embodiment of the disclosure, before a service call request is sent to a centralized logic node cluster by a service call party, the service call party encapsulates the service call request into a message, and the message is identified by a unique first message ID. The first message ID may characterize a port of a service caller to which the service call request corresponds.
In operation S320, a target actual routing address corresponding to the target service content is determined according to the target service content to be called.
According to an embodiment of the present disclosure, a mapping relationship between service contents of a service provider and a target actual routing address of the service provider is pre-recorded in a centralized logical node cluster.
According to the embodiment of the disclosure, the centralized logic node cluster can search the target service content to be called in the centralized logic node cluster according to the target service content to be called contained in the received service call request, and the target actual routing address corresponding to the target service content is determined through the pre-recorded mapping relation.
In operation S330, a target service provider is determined according to the target actual routing address.
According to embodiments of the present disclosure, the target actual routing address may characterize path information that processes the target service content.
According to embodiments of the present disclosure, the path information characterized by the target actual routing address may determine the target service provider. The target service provider may be operable to provide a service for processing the service invocation request.
According to the embodiment of the disclosure, the number of the service providers can be one or more, and when the number of the service providers is one, the received service call request is sent to the service provider for processing according to the actual routing address; when there are a plurality of service providers, a corresponding target actual routing address is determined according to the target service content, so as to determine the target provider which needs to process the service call request.
In operation S340, a processing result of processing the service call request by the target service provider is received and transmitted to the service caller.
According to an embodiment of the present disclosure, receiving a processing result of processing a service call request by a target service provider and transmitting the processing result to the service caller includes: sending a service call request to a target service provider so that the target service provider processes the service call request to obtain a processing result; receiving a processing result transmitted by a target service provider; and determining a service calling party corresponding to the target service provider, and sending a processing result to the service calling party.
According to the embodiment of the disclosure, the centralized logic node cluster forwards a service call request to a target service provider, the target service provider processes the service call request to obtain a processing result, the processing result is packaged into a message, and the message is identified by a second message ID and sent to the centralized logic node cluster. The second message ID has a correspondence with a service caller of the service invocation request. That is, the first message ID at the time of sending the service call request can be determined from the second message ID.
According to the embodiment of the disclosure, the centralized logic node cluster analyzes the received processing result, and according to the second message ID, a first message ID corresponding to the service caller can be determined, and meanwhile, the centralized logic node cluster can forward the processing result to the corresponding service caller according to the first message ID.
According to the embodiment of the disclosure, the target service provider is determined according to the target actual routing address by utilizing the centralized logic node cluster to respond to the target service content to be called, which is sent by the service calling party, and the target service content is sent to the target service provider through the centralized logic node cluster, so that the target service provider sends the processing result to the service calling party through the centralized logic node cluster. The service to be called is deployed by adopting the centralized logic node cluster, so that the technical problems of high resource consumption, slow network and high operation and maintenance pressure caused by the traditional service scheduling are at least partially solved, and the technical effects of effectively reducing the operation resource consumption, improving the network efficiency and reducing the operation and maintenance pressure are realized.
According to an embodiment of the present disclosure, determining service call information included in a service call request may include: analyzing the metadata of the service call request to obtain an analysis result; and determining service call information contained in the service call request according to the analysis result.
According to the embodiment of the disclosure, the centralized logic node cluster receives a service call request sent by a service calling party, analyzes metadata of the service call request, and obtains service call information from the analyzed data, so as to determine target service content to be called.
According to the embodiment of the disclosure, the target service content to be invoked may be one service content request or a plurality of service content requests.
According to an embodiment of the present disclosure, determining a target actual routing address corresponding to target service content according to target service content to be invoked, includes: and calling a service routing table, and searching a target actual routing address corresponding to the target service content in the service routing table according to the target service content to be called.
According to an embodiment of the present disclosure, a service routing table is maintained by a centralized logical node cluster, and a service list which is recorded in advance and can be serviced and sent by a service provider and a mapping relation table corresponding to an actual routing address of the service provider are stored in the service routing table.
According to the embodiment of the disclosure, the target service content to be invoked can be extracted according to the service invocation information of the service invocation request sent by the service caller.
According to the embodiment of the disclosure, the service routing table can be called, the service content which can be called in the service routing table and is consistent with the target service content can be queried, and the target actual routing address corresponding to the target service content is determined according to the mapping relation table corresponding to the service content and the actual routing address stored in the service routing table.
According to an embodiment of the present disclosure, determining a target service provider according to a target actual routing address includes: determining a service provider corresponding to the target actual routing address according to the target actual routing address; invoking a flow scheduling rule module to determine the flow of the service provider; in the case where the traffic of the service provider satisfies the preset threshold, the service provider is determined as a target service provider of the target service content.
According to embodiments of the present disclosure, the traffic scheduling rules module may characterize the traffic scheduling criteria of each service provider. The service provider corresponding to the target actual routing address can be determined according to the target actual routing address, and the number of the corresponding service providers can be one or a plurality of.
According to the embodiment of the disclosure, according to whether the number of the processed service call requests exceeds the preset number of the service provider can process the service call requests, corresponding to the corresponding traffic scheduling rule, for example, the service scheduling request can be directly forwarded, discarded or loaded to other service provider nodes. If the service call request is directly forwarded, the service call request is directly forwarded to a corresponding service provider; if dropped or loaded onto other service provider nodes, the performance of the direct forwarding service provider is maximized and the request cannot be received any more.
According to an embodiment of the present disclosure, if the number of service call requests processed satisfies a traffic value of a directly forwarded service provider or satisfies a traffic value loaded to other service provider, the service provider or the other service provider is loaded as a target service provider of target service content.
According to the embodiment of the disclosure, if the service provider directly forwarded to the service provider can not receive the service call request any more after reaching the maximum performance, the service call request subsequently forwarded to the service provider is discarded or loaded onto other service providers according to the traffic scheduling rule until the service provider directly forwarded has spare performance and then receives a new service call request.
According to an embodiment of the present disclosure, before receiving a service call request sent by a service caller, the method further includes: calling a service registration and discovery module to receive service information sent by a service provider; service information corresponding to the service provider is written into the service routing table.
According to the embodiment of the disclosure, the centralized logic node cluster comprises a service registration and discovery module, and the service registration and discovery module can be used for registering service information which can be called by a service provider.
According to embodiments of the present disclosure, when a service provider application is started, service information of a service provider may be registered to a service registration and discovery module while establishing a TCP long link with a centralized logical node cluster.
According to an embodiment of the present disclosure, after the centralized logical node cluster receives registration service information sent by the service provider, the service information is written into a service routing table maintained by the centralized logical node cluster.
According to an embodiment of the present disclosure, the service scheduling method may further include: updating the flow of the target service provider in real time according to the processing result; and updating the routing strategy of the target service content in real time according to the traffic condition of the target service provider.
According to the embodiment of the disclosure, after the target provider processes the service call, the obtained processing result is sent to the centralized logic node cluster.
According to the embodiment of the disclosure, an investigation link analysis device in the centralized logic node cluster can be called, the received processing result is analyzed, and related information of the service provider and the service caller is analyzed so as to forward the processing result to the corresponding service caller.
According to the embodiment of the disclosure, after the centralized logic node cluster receives the processing result sent by the service provider, the flow of the target service provider for processing the service call request is updated in real time by using the call volume real-time computing device according to the information of the received processing result.
According to the embodiment of the disclosure, the call quantity real-time computing device can be utilized, and the routing strategy of the target service content can be updated in real time according to the traffic condition of the target service provider. Specifically, for example, when the processing result of the service provider returned to the centralized logic node cluster is 400, it is indicated that the target service provider node that processes the target service content is not available, and if there is any target service content to make a call request, the target service content may be directly discarded or loaded onto other service provider nodes.
Fig. 4 schematically illustrates an interactive schematic of a service scheduling method according to an embodiment of the present disclosure.
As shown in fig. 4, a service provider 401 starts an application program, and registers service information that the service provider 401 can call to a centralized logical node cluster 402. The service invoker 403 initiates a service invocation request to the centralized logical node cluster 402. After the centralized logic node cluster 402 receives the service call request, service call information carried by the service call request is parsed, and target service content 402-1 to be called is determined. The target actual routing address 402-2 is determined based on the target service content that needs to be invoked. The service provider 402-3 corresponding thereto is determined based on the target actual routing address. Traffic 402-4 for the service provider is determined using a traffic scheduling rule module. When the traffic of the service provider satisfies the preset traffic, the service provider is determined as a target service provider, and the traffic of the target service provider is updated in real time 402-5. The service call request is sent to the target service provider 401, the target service provider 401 processes the service call request to obtain a processing result, the processing result is sent to the centralized logic node cluster 402, and the centralized logic node cluster 402 performs real-time updating of traffic and real-time updating 402-6 of routing policies of corresponding service contents on the corresponding target provider according to the processing result, and forwards the processing result to the corresponding service caller 403. It should be noted that the interaction diagram is given as an example of the number of service providers, and thus, the target service provider may be the service provider.
Based on the service scheduling method, the disclosure also provides a service scheduling device. The device will be described in detail below in connection with fig. 5.
Fig. 5 schematically shows a block diagram of a service scheduler according to an embodiment of the present disclosure.
As shown in fig. 5, the apparatus 500 may include: a response module 510, a first determination module 520, a second determination module 530, and a receiving module 540.
And a response module 510, configured to determine service call information included in the service call request by using the centralized logic node cluster to respond to the service call request sent by the service caller, where the service call information includes target service content that needs to be called. In an embodiment, the response module 510 may be configured to perform the operation S310 described above, which is not described herein.
The first determining module 520 is configured to determine, according to the target service content to be invoked, a target actual routing address corresponding to the target service content. In an embodiment, the first determining module 520 may be configured to perform the operation S320 described above, which is not described herein.
A second determining module 530 is configured to determine a target service provider according to the target actual routing address. In an embodiment, the second determining module 530 may be configured to perform the operation S330 described above, which is not described herein.
And a receiving module 540, configured to receive a processing result of processing the service call request by the target service provider, and send the processing result to the service caller. In an embodiment, the receiving module 540 may be configured to perform the operation S340 described above, which is not described herein.
According to an embodiment of the present disclosure, the response module 510 may include: a sub-module and a determination sub-module are obtained.
And the obtaining sub-module is used for analyzing the metadata of the service call request to obtain an analysis result.
And the first determining submodule is used for determining service call information contained in the service call request according to the analysis result.
According to an embodiment of the present disclosure, the first determining module 520 may include: and searching the sub-module.
And the searching sub-module is used for calling the service routing table and searching a target actual routing address corresponding to the target service content in the service routing table according to the target service content required to be called.
According to an embodiment of the present disclosure, the receiving module 540 may include: the device comprises a transmitting sub-module, a receiving sub-module and a second determining sub-module.
And the sending submodule is used for sending the service call request to the target service provider so that the target service provider processes the service call request to obtain a processing result.
And the receiving sub-module is used for receiving the processing result sent by the target service provider.
And the second determining submodule is used for determining a service calling party corresponding to the target service provider and sending a processing result to the service calling party.
According to an embodiment of the present disclosure, the second determining module 530 may include: the third determination submodule, the calling submodule and the fourth determination submodule.
And the third determining submodule is used for determining the service provider corresponding to the target actual routing address according to the target actual routing address.
And the calling sub-module is used for calling the flow scheduling rule module and determining the flow of the service provider.
And the fourth determining submodule is used for determining the service provider as a target service provider of target service content under the condition that the flow of the service provider meets a preset threshold value.
According to an embodiment of the present disclosure, the apparatus 500 may further include:
and the calling module is used for calling the service registration and discovery module and receiving the service information sent by the service provider.
And the writing module is used for writing the service information corresponding to the service provider into the service routing table.
According to an embodiment of the present disclosure, the apparatus 500 may further include:
And the first updating module is used for updating the flow of the target service provider in real time according to the processing result.
And the second updating module is used for updating the routing strategy of the target service content in real time according to the traffic condition of the target service provider.
According to an embodiment of the present disclosure, any of the plurality of modules of the response module 510, the first determination module 520, the second determination module 530, and the receiving module 540 may be combined in one module to be implemented, or any of the plurality of modules may be split into a plurality of modules. Alternatively, at least some of the functionality of one or more of the modules may be combined with at least some of the functionality of other modules and implemented in one module. According to embodiments of the present disclosure, at least one of the response module 510, the first determination module 520, the second determination module 530, and the receiving module 540 may be implemented at least in part as hardware circuitry, such as a Field Programmable Gate Array (FPGA), a Programmable Logic Array (PLA), a system on a chip, a system on a substrate, a system on a package, an Application Specific Integrated Circuit (ASIC), or may be implemented in hardware or firmware in any other reasonable way of integrating or packaging the circuitry, or in any one of or a suitable combination of three of software, hardware, and firmware. Alternatively, at least one of the response module 510, the first determination module 520, the second determination module 530, and the receiving module 540 may be at least partially implemented as a computer program module, which when executed may perform the corresponding functions.
Fig. 6 schematically illustrates a block diagram of an electronic device adapted to implement a service scheduling method according to an embodiment of the disclosure.
As shown in fig. 6, an electronic device 600 according to an embodiment of the present disclosure includes a processor 601 that can perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM) 602 or a program loaded from a storage section 608 into a Random Access Memory (RAM) 603. The processor 601 may include, for example, a general purpose microprocessor (e.g., a CPU), an instruction set processor and/or an associated chipset and/or a special purpose microprocessor (e.g., an Application Specific Integrated Circuit (ASIC)), or the like. Processor 601 may also include on-board memory for caching purposes. The processor 601 may comprise a single processing unit or a plurality of processing units for performing different actions of the method flows according to embodiments of the disclosure.
In the RAM 603, various programs and data necessary for the operation of the electronic apparatus 600 are stored. The processor 601, the ROM 602, and the RAM 603 are connected to each other through a bus 604. The processor 601 performs various operations of the method flow according to the embodiments of the present disclosure by executing programs in the ROM 602 and/or the RAM 603. Note that the program may be stored in one or more memories other than the ROM 602 and the RAM 603. The processor 601 may also perform various operations of the method flow according to embodiments of the present disclosure by executing programs stored in one or more memories.
According to an embodiment of the present disclosure, the electronic device 600 may also include an input/output (I/O) interface 605, the input/output (I/O) interface 605 also being connected to the bus 604. The electronic device 600 may also include one or more of the following components connected to the I/O interface 605: an input portion 606 including a keyboard, mouse, etc.; an output portion 607 including a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, a speaker, and the like; a storage section 608 including a hard disk and the like; and a communication section 609 including a network interface card such as a LAN card, a modem, or the like. The communication section 609 performs communication processing via a network such as the internet. The drive 610 is also connected to the I/O interface 605 as needed. Removable media 611 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is installed as needed on drive 610 so that a computer program read therefrom is installed as needed into storage section 608.
The present disclosure also provides a computer-readable storage medium that may be embodied in the apparatus/device/system described in the above embodiments; or may exist alone without being assembled into the apparatus/device/system. The computer-readable storage medium carries one or more programs which, when executed, implement methods in accordance with embodiments of the present disclosure.
According to embodiments of the present disclosure, the computer-readable storage medium may be a non-volatile computer-readable storage medium, which may include, for example, but is not limited to: a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this disclosure, a computer-readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. For example, according to embodiments of the present disclosure, the computer-readable storage medium may include ROM 602 and/or RAM 603 and/or one or more memories other than ROM 602 and RAM 603 described above.
Embodiments of the present disclosure also include a computer program product comprising a computer program containing program code for performing the methods shown in the flowcharts. The program code, when executed in a computer system, causes the computer system to implement the service scheduling method provided by embodiments of the present disclosure.
The above-described functions defined in the system/apparatus of the embodiments of the present disclosure are performed when the computer program is executed by the processor 601. The systems, apparatus, modules, units, etc. described above may be implemented by computer program modules according to embodiments of the disclosure.
In one embodiment, the computer program may be based on a tangible storage medium such as an optical storage device, a magnetic storage device, or the like. In another embodiment, the computer program may also be transmitted, distributed in the form of signals over a network medium, and downloaded and installed via the communication section 609, and/or installed from the removable medium 611. The computer program may include program code that may be transmitted using any appropriate network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the foregoing.
In such an embodiment, the computer program may be downloaded and installed from a network through the communication portion 609, and/or installed from the removable medium 611. The above-described functions defined in the system of the embodiments of the present disclosure are performed when the computer program is executed by the processor 601. The systems, devices, apparatus, modules, units, etc. described above may be implemented by computer program modules according to embodiments of the disclosure.
According to embodiments of the present disclosure, program code for performing computer programs provided by embodiments of the present disclosure may be written in any combination of one or more programming languages, and in particular, such computer programs may be implemented in high-level procedural and/or object-oriented programming languages, and/or assembly/machine languages. Programming languages include, but are not limited to, such as Java, c++, python, "C" or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's device, partly on a remote computing device, or entirely on the remote computing device or server. In the case of remote computing devices, the remote computing device may be connected to the user computing device through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computing device (e.g., connected via the Internet using an Internet service provider).
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
Those skilled in the art will appreciate that the features recited in the various embodiments of the disclosure and/or in the claims may be provided in a variety of combinations and/or combinations, even if such combinations or combinations are not explicitly recited in the disclosure. In particular, the features recited in the various embodiments of the present disclosure and/or the claims may be variously combined and/or combined without departing from the spirit and teachings of the present disclosure. All such combinations and/or combinations fall within the scope of the present disclosure.
The embodiments of the present disclosure are described above. However, these examples are for illustrative purposes only and are not intended to limit the scope of the present disclosure. Although the embodiments are described above separately, this does not mean that the measures in the embodiments cannot be used advantageously in combination. The scope of the disclosure is defined by the appended claims and equivalents thereof. Various alternatives and modifications can be made by those skilled in the art without departing from the scope of the disclosure, and such alternatives and modifications are intended to fall within the scope of the disclosure.

Claims (11)

1. A service scheduling method, comprising:
determining service call information contained in a service call request by utilizing a centralized logic node cluster in response to the service call request sent by a service calling party, wherein the service call information comprises target service content to be called;
Determining a target actual routing address corresponding to the target service content according to the target service content to be called;
determining a target service provider according to the target actual routing address;
and receiving a processing result of the service call request processed by the target service provider, and sending the processing result to the service caller.
2. The method of claim 1, wherein determining service invocation information contained by the service invocation request comprises:
analyzing the metadata of the service call request to obtain an analysis result;
and determining service call information contained in the service call request according to the analysis result.
3. The method of claim 1, wherein determining a target actual routing address corresponding to the target service content according to the target service content to be invoked comprises:
and calling a service routing table, and searching a target actual routing address corresponding to the target service content in the service routing table according to the target service content to be called.
4. The method of claim 1, wherein the receiving a processing result of the processing of the service invocation request by the target service provider and transmitting the processing result to the service invocation provider comprises:
The service calling request is sent to the target service provider, so that the target service provider processes the service calling request to obtain a processing result;
receiving the processing result transmitted by the target service provider;
and determining a service calling party corresponding to the target service provider, and sending the processing result to the service calling party.
5. The method of claim 1, wherein determining a target service provider based on the target actual routing address comprises:
determining a service provider corresponding to the target actual routing address according to the target actual routing address;
invoking a flow scheduling rule module to determine the flow of the service provider;
and determining the service provider as a target service provider of target service content under the condition that the flow of the service provider meets a preset threshold.
6. The method of claim 1, further comprising, prior to receiving a service invocation request sent by a service caller:
calling a service registration and discovery module to receive service information sent by a service provider;
and writing the service information corresponding to the service provider into a service routing table.
7. The method of claim 1, further comprising:
updating the flow of the target service provider in real time according to the processing result;
and updating the routing strategy of the target service content in real time according to the traffic condition of the target service provider.
8. A service scheduling apparatus comprising:
the response module is used for responding to a service call request sent by a service calling party by utilizing the centralized logic node cluster, and determining service call information contained in the service call request, wherein the service call information comprises target service content to be called;
the first determining module is used for determining a target actual routing address corresponding to the target service content according to the target service content to be called;
the second determining module is used for determining a target service provider according to the target actual routing address;
and the receiving module is used for receiving a processing result of the service call request processed by the target service provider and sending the processing result to the service caller.
9. An electronic device, comprising:
one or more processors;
storage means 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 perform the method of any of claims 1-7.
10. A computer readable storage medium having stored thereon executable instructions which, when executed by a processor, cause the processor to perform the method according to any of claims 1-7.
11. A computer program product comprising a computer program which, when executed by a processor, implements the method according to any one of claims 1 to 7.
CN202310149703.XA 2023-02-13 2023-02-13 Service scheduling method, device, equipment and storage medium Pending CN116170512A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310149703.XA CN116170512A (en) 2023-02-13 2023-02-13 Service scheduling method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310149703.XA CN116170512A (en) 2023-02-13 2023-02-13 Service scheduling method, device, equipment and storage medium

Publications (1)

Publication Number Publication Date
CN116170512A true CN116170512A (en) 2023-05-26

Family

ID=86416121

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310149703.XA Pending CN116170512A (en) 2023-02-13 2023-02-13 Service scheduling method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN116170512A (en)

Similar Documents

Publication Publication Date Title
CN107729139B (en) Method and device for concurrently acquiring resources
CN113132489A (en) Method, device, computing equipment and medium for downloading file
US9323588B2 (en) Service platform architecture
CN110719215B (en) Flow information acquisition method and device of virtual network
CN114172966B (en) Service calling method, service processing method and device under unitized architecture
CN112799825A (en) Task processing method and network equipment
CN112288577B (en) Transaction processing method, device, electronic equipment and medium for distributed service
CN115190062B (en) Service processing method and device, electronic equipment and computer readable storage medium
CN114760233B (en) Service processing method, device, electronic equipment and storage medium
CN115357761A (en) Link tracking method and device, electronic equipment and storage medium
CN110457132B (en) Method and device for creating functional object and terminal equipment
CN115277855A (en) Request processing method and device, electronic equipment and storage medium
CN106612263B (en) Method and equipment for processing application access request
CN109683992B (en) Method and apparatus for managing objects
CN111475230B (en) Application function configuration method and device and electronic equipment
CN110275701B (en) Data processing method, device, medium and computing equipment
CN116828035A (en) Data integration system based on cloud computing
EP4340436A1 (en) Operation and maintenance method, apparatus, and system, server, electronic device, and medium
CN116170512A (en) Service scheduling method, device, equipment and storage medium
CN116032614A (en) Container network micro-isolation method, device, equipment and medium
CN113779021B (en) Data processing method, device, computer system and readable storage medium
CN114780361A (en) Log generation method, device, computer system and readable storage medium
CN110502891B (en) Method, device, medium and electronic equipment for acquiring process memory leakage
CN112905273A (en) Service calling method and device
CN113760262A (en) Task processing method, device, computer system and computer readable storage medium

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