WO2024066374A1 - 业务降级方法、装置、设备、计算机可读介质和程序产品 - Google Patents

业务降级方法、装置、设备、计算机可读介质和程序产品 Download PDF

Info

Publication number
WO2024066374A1
WO2024066374A1 PCT/CN2023/093160 CN2023093160W WO2024066374A1 WO 2024066374 A1 WO2024066374 A1 WO 2024066374A1 CN 2023093160 W CN2023093160 W CN 2023093160W WO 2024066374 A1 WO2024066374 A1 WO 2024066374A1
Authority
WO
WIPO (PCT)
Prior art keywords
service
interface
configuration information
downgrade
information
Prior art date
Application number
PCT/CN2023/093160
Other languages
English (en)
French (fr)
Inventor
张云飞
Original Assignee
京东科技信息技术有限公司
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 京东科技信息技术有限公司 filed Critical 京东科技信息技术有限公司
Publication of WO2024066374A1 publication Critical patent/WO2024066374A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • H04L41/5025Ensuring fulfilment of SLA by proactively reacting to service quality change, e.g. by reconfiguration after service quality degradation or upgrade
    • 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/133Protocols for remote procedure calls [RPC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Definitions

  • Embodiments of the present disclosure relate to the field of computer technology, and in particular to a service degradation method, apparatus, device, computer-readable medium, and program product.
  • a business In a distributed system environment, a business usually relies on multiple basic services. As the business complexity increases, the dependencies between services become more complex, and the service avalanche effect follows. In order to improve the stability of application services, downgrade circuit breakers have emerged. At present, when downgrading a business, the usual method is to determine whether to downgrade based on a request and response.
  • Some embodiments of the present disclosure propose a service degradation method, apparatus, electronic device, computer-readable medium, and computer program product to solve one or more of the technical problems mentioned in the above background technology section.
  • some embodiments of the present disclosure provide a service downgrade method.
  • the method includes: receiving various interface call data corresponding to the target business; determining the business configuration information corresponding to the above target business, wherein the above business configuration information includes downgrade configuration information, and the above downgrade configuration information includes downgrade threshold information and downgrade interface information; determining whether to downgrade the above target business according to the above various interface call data and the downgrade threshold information included in the above business configuration information; in response to determining to downgrade the above target business, performing business downgrade processing on the request of the above target business according to the downgrade interface information included in the above business configuration information.
  • some embodiments of the present disclosure provide a service downgrading device, the device comprising: a receiving unit, configured to receive interface call data corresponding to a target service; a first determining unit, configured to determine service configuration information corresponding to the target service, wherein the service configuration information comprises downgrade configuration information, and the downgrade configuration information comprises downgrade threshold information and downgrade interface information; a second determining unit, configured to determine whether to downgrade the target service according to the interface call data and the downgrade threshold information included in the service configuration information; a downgrading unit, configured to downgrade the request of the target service according to the downgrade interface information included in the service configuration information in response to a determination to downgrade the target service.
  • some embodiments of the present disclosure provide an electronic device comprising: at least one processor; a storage device on which at least one program is stored, and when the at least one program is executed by the at least one processor, the at least one processor implements the method described in any implementation manner of the above-mentioned first aspect.
  • some embodiments of the present disclosure provide a computer-readable medium having a computer program stored thereon, wherein when the program is executed by a processor, the method described in any implementation manner of the above-mentioned first aspect is implemented.
  • some embodiments of the present disclosure provide a computer program product, including a computer program, which implements the method described in any implementation manner of the above-mentioned first aspect when executed by a processor.
  • FIG1 is an architectural diagram of an exemplary system in which some embodiments of the present disclosure may be applied;
  • FIG2 is a timing diagram of an application scenario of a service degradation method according to some embodiments of the present disclosure
  • FIG3 is a flow chart of some embodiments of the service degradation method according to the present disclosure.
  • FIG4 is a flow chart of other embodiments of the service downgrading method according to the present disclosure.
  • FIG5 is a flow chart of some other embodiments of the service degradation method according to the present disclosure.
  • FIG6 is a schematic structural diagram of some embodiments of a service degradation device according to the present disclosure.
  • FIG. 7 is a schematic diagram of the structure of an electronic device suitable for implementing some embodiments of the present disclosure.
  • judging whether to downgrade based on a request and response often have the following technical problems: judging whether to downgrade based on a request and response, can only judge whether to downgrade when the interface is called, resulting in degradation in actual business scenarios, and when the preceding node of the interface is blocked, the interface will not be called, resulting in the inability to maintain the status of subsequent fuses, and poor applicability in complex business scenarios.
  • some embodiments of the present disclosure propose a method and device for generating logistics point of interest information, which supports customized degradation strategies from a business perspective, thereby being able to adapt to complex and changing business scenarios.
  • FIG. 1 shows an exemplary system architecture 100 to which a service degradation method or a service degradation apparatus according to some embodiments of the present disclosure may be applied.
  • system architecture 100 may include terminal devices 101, 102, 103, network 104 and server 105.
  • Network 104 is used to provide a medium for communication links between terminal devices 101, 102, 103 and server 105.
  • Network 104 may include various connection types, such as wired, wireless communication links or optical fiber cables, etc.
  • terminal devices 101, 102, 103 Users can use terminal devices 101, 102, 103 to interact with server 105 through network 104 to receive or send messages, etc.
  • Various communication client applications can be installed on terminal devices 101, 102, 103, such as web browser applications, search applications, instant messaging tools, email clients, social platform software, etc.
  • Terminal devices 101, 102, 103 can be hardware or software.
  • terminal devices 101, 102, 103 When terminal devices 101, 102, 103 are hardware, they can be various electronic devices with display screens and supporting information browsing, including but not limited to smart phones, tablet computers, e-book readers, laptop computers, desktop computers, etc.
  • terminal devices 101, 102, 103 When terminal devices 101, 102, 103 are software, they can be installed in the electronic devices listed above. They can be implemented as multiple software or software modules for providing distributed services, or they can be implemented as a single software or software module. No specific limitation is made here.
  • the server 105 may be a server that provides various services, such as a backend server that supports the information displayed on the terminal devices 101, 102, and 103.
  • the backend server may be connected to The received request and other data are analyzed and processed, and the processing results are fed back to the terminal device.
  • the service degradation method provided in the embodiment of the present disclosure may be executed by the server 105. Accordingly, the service degradation device may be arranged in the server 105.
  • the server can be hardware or software.
  • the server can be implemented as a distributed server cluster consisting of multiple servers, or it can be implemented as a single server.
  • the server is software, it can be implemented as multiple software or software modules for providing distributed services, or it can be implemented as a single software or software module. No specific limitation is made here.
  • terminal devices, networks and servers in Figure 1 is only illustrative. Any number of terminal devices, networks and servers may be provided according to implementation requirements.
  • FIG. 2 is a timing diagram of an application scenario of a service degradation method according to some embodiments of the present disclosure.
  • the user end may send a request to the business system.
  • the business system may be a server for responding to the request of the user end.
  • the business system may request an external service from an external dependency.
  • the external dependency may be a server for providing services to the business system.
  • the business system may send interface call data to the monitoring server.
  • the monitoring server may be used to execute the business degradation method.
  • the sequential flow of an application scenario of the business degradation method includes the following steps:
  • Step 201 The user terminal sends a request for a target service to the service system.
  • the request may be a page access request.
  • Step 202 The business system calls a service from an external dependency.
  • calling a service may refer to calling an interface.
  • Step 203 The external dependency sends the external dependency processing result to the business system, wherein the external dependency processing result may be the processing result fed back by the external dependency for the received call request.
  • Step 204 The business system sends the interface call data generated based on the external dependency processing result sent by the received external dependency to the monitoring server.
  • the external dependency processing result includes processing data, it can indicate that the business system successfully calls the service to the external dependency, so that the business system can generate interface call data indicating the successful interface call.
  • the dependency processing result is empty or includes an identifier representing a call failure, it can represent that the business system fails to call the external dependency service, so that the business system can generate interface call data representing the interface call failure.
  • Step 205 The business system sends the business system processing result to the user end according to the external dependency processing result sent by the received external dependency.
  • the business system can generate the business system processing result corresponding to the user end's request according to the processing data.
  • Step 206 The monitoring server determines the service configuration information corresponding to the target service.
  • the service configuration information includes degradation configuration information
  • the degradation configuration information includes degradation threshold information and degradation interface information.
  • Step 207 The monitoring server determines whether to downgrade the target service according to the received interface call data of the target service and the downgrade threshold information included in the service configuration information.
  • Step 208 in response to determining to downgrade the target service, the monitoring server performs service downgrade processing on the request of the target service in the service system according to the downgrade interface information included in the service configuration information.
  • the above-mentioned user terminal, the above-mentioned business system, the above-mentioned external dependency and the above-mentioned monitoring server can be hardware or software.
  • the above-mentioned user terminal, the above-mentioned business system, the above-mentioned external dependency and the above-mentioned monitoring server are hardware, they can be implemented as a distributed cluster composed of multiple servers or terminal devices, or they can be implemented as a single server or a single terminal device.
  • the above-mentioned user terminal, the above-mentioned business system, the above-mentioned external dependency and the above-mentioned monitoring server are embodied as software, they can be installed in the hardware devices listed above. It can be implemented as multiple software or software modules for providing distributed services, for example, or it can be implemented as a single software or software module. No specific limitation is made here.
  • the service degradation method comprises the following steps:
  • Step 301 receiving each interface call data corresponding to the target service.
  • the execution subject of the service degradation method may receive each interface corresponding to the target service.
  • the target business may be any business.
  • the business may refer to a transaction implemented as an interface to provide related services.
  • the business may be uniquely represented by a business identifier.
  • the target business corresponds to an interface.
  • the interface call data corresponding to the target business may be data related to the call results of calling the interface.
  • the interface call data may be data representing the successful call of the interface or the failure of calling the interface.
  • the interface call data may include an interface identifier and an interface call result.
  • the interface identifier may uniquely identify the interface.
  • the interface call result may represent success or failure.
  • the interface call data may also include a business identifier.
  • the interface call data may be sent by the request processing server of the target business.
  • the request processing server may be understood as the business system of the target business.
  • the business system calls the interface. If the call is successful, the interface call result represents success. If the call fails, the interface call result represents failure.
  • the business system may send the interface call data to the execution subject, and may send the request result to the user terminal.
  • the execution subject may receive a preset number of interface call data corresponding to the target business through a wired connection or a wireless connection.
  • wireless connection methods may include but are not limited to 3G/4G connection, WiFi connection, Bluetooth connection, WiMAX connection, Zigbee connection, UWB (ultra wideband) connection, and other wireless connection methods currently known or to be developed in the future.
  • the above-mentioned execution entity can receive the various interface call data corresponding to the above-mentioned target business within a preset periodic time period.
  • the above-mentioned preset periodic time period can be a pre-set periodic time period for monitoring the interface call status of the target business.
  • the monitoring period can be 5 minutes.
  • the preset periodic time period of the last monitoring can be 08:00:00-08:05:00.
  • the current preset periodic time period can be 08:05:00-08:10:00.
  • the interface call status of the target business can be periodically monitored.
  • Step 302 Determine the service configuration information corresponding to the target service.
  • the execution subject may determine the service configuration information corresponding to the target service.
  • the service configuration information may be configuration-related information of the service.
  • the service configuration information may include downgrade configuration information.
  • the downgrade configuration information may be Information configured for downgrading the service.
  • the downgrading configuration information may include downgrading threshold information and downgrading interface information.
  • the downgrading threshold information may be threshold-related information for determining whether to downgrade the service.
  • the downgrading threshold information may include a threshold for the number of failed interface calls.
  • the threshold for the number of failed interface calls may be a threshold for limiting the maximum number of failed calls of the interface of the target service.
  • the downgraded interface information may be information related to the downgraded interface.
  • the downgraded interface information may include a downgraded interface identifier.
  • the downgraded interface identifier may be an identifier of the interface after the target service is downgraded.
  • the execution subject may obtain the service configuration information whose corresponding service identifier is the service identifier of the target service from the computing device storing the service configuration information.
  • the computing device storing the service configuration information may be understood as a server of the configuration center.
  • the execution subject may also determine the service configuration information corresponding to the target service from the service configuration information pre-stored locally.
  • the service configuration information pre-stored locally may be understood as the service configuration information stored in the local memory or cache during initialization.
  • Step 303 Determine whether to perform downgrade processing on the target service according to the degradation threshold information included in the interface call data and the service configuration information.
  • the execution subject may determine whether to downgrade the target service based on the interface call data and the downgrade threshold information included in the service configuration information.
  • the execution subject may determine the number of interface call data representing call failures in the interface call data as the number of failed calls. Then, in response to determining that the number of failed calls is greater than or equal to the interface call failure number threshold included in the downgrade threshold information, it may be determined that the target service is downgraded.
  • the degradation threshold information may include a degradation ratio threshold.
  • the degradation ratio threshold may be a threshold for limiting a maximum ratio of failed calls.
  • the execution subject may determine whether to downgrade the target service by following the steps below:
  • the first step is to determine the number of failed calls based on the above-mentioned interface call data and the preset failed call conditions.
  • the preset failed call conditions can be interface call data that indicates call failure.
  • the execution subject can determine the number of interface call data that meet the preset failed call conditions in the above-mentioned interface call data as the number of failed calls. Use quantity.
  • the second step in response to determining that the ratio of the number of failed calls to the number of each interface call data is greater than or equal to the downgrade ratio threshold, it is determined to downgrade the target service.
  • the target service needs to be downgraded from the dimension of the failed call ratio through the pre-configured downgrade ratio threshold.
  • the above-mentioned degradation threshold information may include a degradation quantity threshold and a degradation ratio threshold.
  • the execution subject may determine whether to downgrade the target service by following the steps below:
  • the first step is to determine the number of failed calls based on the above interface call data and the preset failed call conditions.
  • the execution entity may determine the number of interface call data that meet the preset failed call conditions in the above interface call data as the number of failed calls.
  • the second step in response to determining that the number of failed calls is greater than or equal to the downgrade number threshold, and the ratio of the number of failed calls to the number of each interface call data is greater than or equal to the downgrade ratio threshold, it is determined that the target service is to be downgraded.
  • the target service needs to be downgraded based on the dimensions of the failed call ratio and downgrade number thresholds by using the pre-customized downgrade ratio threshold and downgrade number threshold.
  • the downgrade configuration information may further include an extended service identifier.
  • the extended service identifier may be an identifier of a custom service, and may uniquely identify an interface method of an interface of the service.
  • a custom service may correspond to an interface method of an interface of a target service.
  • the service party may customize the calling status of the method to be monitored under the interface of the configured service.
  • the interface call data in each of the above interface call data corresponds to an extended service identifier.
  • the execution subject may determine the number of failed calls according to the above-mentioned interface call data and preset failed call conditions through the following steps:
  • the first step is to determine each interface call data that meets the above preset failure call conditions in the above interface call data as interface call failure data, and obtain the interface call failure data. According to the collection.
  • each interface call failure data satisfying the preset extended service identification condition in the above interface call failure data set is determined as the target interface call failure data set.
  • the above preset extended service identification condition may be that the extended service identification corresponding to the interface call failure data is the same as the extended service identification included in the above downgrade configuration information.
  • the number of each target interface call failure data included in the target interface call failure data set is determined as the number of failed calls.
  • Step 304 in response to determining to downgrade the target service, downgrade the request of the target service according to the downgrade interface information included in the service configuration information.
  • the execution subject may, in response to determining to downgrade the target service, perform service downgrade processing on the request of the target service according to the downgrade interface information included in the service configuration information.
  • the execution subject may determine the interface corresponding to the downgrade interface identifier included in the downgrade interface information as the interface of the target service to perform service downgrade processing on the request of the target service.
  • the execution subject may publish and process the service degradation event information corresponding to the target service.
  • the service degradation event information may be information indicating that the target service needs to be downgraded or has undergone downgrade processing.
  • the service degradation event information may include, but is not limited to: interface identifier before the target service is downgraded, event type, downgrade time, and downgrade event result.
  • the event type may be the type of processing of the interface of the target service.
  • the event type included in the service degradation event information may be "downgrade”.
  • the downgrade time may be the time of performing service downgrade processing on the target service.
  • the event result may be a result indicating whether the downgrade is successful.
  • the publishing process may be a process of sending the service degradation event information to the downgrade event subscriber.
  • the downgrade event subscriber may be a subscriber who needs to obtain the service degradation event information.
  • the subscriber may be, but is not limited to, a terminal device, a server, or the execution subject.
  • the execution subject may store the service degradation event information in a local preset directory to publish and process the service degradation event information.
  • the service degradation event information stored in the local preset directory may be read by other methods of the execution subject.
  • the execution subject may also publish and process the service degradation event information corresponding to the target service in response to receiving the degradation event result corresponding to the target service.
  • the degradation event result may be sent by the server in response to the request of the target service.
  • the above-mentioned execution entity may send the above-mentioned service degradation event information to an alarm terminal device.
  • the above-mentioned alarm terminal device may be a terminal device that needs to know the result of downgrading the above-mentioned target service.
  • the above-mentioned alarm terminal device may be a terminal device of a business party manager.
  • the above-mentioned execution entity may send the above-mentioned service degradation event information to the alarm terminal device through a preset contact method.
  • the above-mentioned preset contact method may include but is not limited to: SMS sending method, email sending method, telephone notification method, and mini-program notification method.
  • the service degradation event information can be sent to the alarm terminal device so that the user of the alarm terminal device can know the downgrade result of the target service.
  • the above-mentioned execution entity may send the above-mentioned business degradation event information to an associated data storage terminal for visual display of each business degradation event information stored in the above-mentioned data storage terminal.
  • the above-mentioned data storage terminal may be a server storing data that can be used for data visualization.
  • the execution entity for visual display of each business degradation event information stored in the above-mentioned data storage terminal may be the above-mentioned execution entity or a visualization terminal device.
  • the visualization terminal device may be a background terminal device for visualization.
  • the business degradation event information may be sent to an associated data storage terminal for visual display.
  • the service downgrade method of some embodiments of the present disclosure supports customized downgrade strategies, so that it can adapt to complex and changeable business scenarios.
  • the reason for the poor applicability in complex business scenarios is: the method of judging whether to downgrade based on a single request and response can only judge whether to downgrade when the interface is called, resulting in downgrade in the actual business scenario, and when the front node of the interface is blocked, the interface will not be called, resulting in the subsequent state of the fuse cannot be maintained, and the applicability in complex business scenarios is poor.
  • the service downgrade method of some embodiments of the present disclosure first, receives the interface call data of the corresponding target business.
  • the received interface call data can represent the data of multiple calls to the interface of the target business, so as to determine whether to downgrade the target business.
  • determine the The service configuration information of the target service is selected.
  • the service configuration information includes downgrade configuration information, and the downgrade configuration information includes downgrade threshold information and downgrade interface information.
  • the determined service configuration information can represent the relevant information configured for the target service
  • the downgrade configuration information included in the service configuration information can represent the downgrade logic related information configured for the target service.
  • whether to downgrade the target service is determined according to the above-mentioned interface call data and the downgrade threshold information included in the service configuration information. Thus, it can be determined whether to downgrade the target service by calling the interface of the target service multiple times and the downgrade threshold information of the target service configured by the user-defined configuration. Finally, in response to determining to downgrade the target service, the service downgrade is performed on the request of the target service according to the downgrade interface information included in the service configuration information. Thus, when determining to downgrade the target service, the target service can be downgraded by the downgrade interface information of the target service configured by the user-defined configuration.
  • the received interface call data are data of calling the interface of the target service multiple times, the method of judging whether to downgrade based on one request and response is avoided. Because the downgrade configuration information in the determined business configuration information is customized in advance, it can be adjusted according to the change of business scenarios. Therefore, it is realized to support customized downgrade strategies from a business perspective, so as to adapt to complex and changing business scenarios.
  • the process 400 of the service degradation method includes the following steps:
  • Step 401 receiving each interface call data corresponding to the target service.
  • Step 402 Determine the service configuration information corresponding to the target service.
  • Step 403 Determine whether to perform downgrade processing on the target service according to the degradation threshold information included in the interface call data and the service configuration information.
  • Step 404 in response to determining to downgrade the target service:
  • Step 4041 Perform service downgrade processing on the request of the target service according to the downgrade interface information included in the service configuration information.
  • steps 401-4041 and the technical effects brought about can refer to steps 301-304 in the embodiments corresponding to FIG. 3, and will not be repeated here.
  • Step 4042 determine whether the retry configuration information represents a retry target service.
  • the execution subject of the service degradation method can determine whether the retry configuration information represents the retry of the above-mentioned target service.
  • the above-mentioned service configuration information can also include retry configuration information.
  • the retry configuration information can be information configured for the retry logic after the service degradation.
  • the retry configuration information can represent whether the interface of the service can be retried.
  • the retry configuration information can include a retry identifier.
  • the retry identifier can be an identifier representing whether the interface of the service can be retried.
  • the retry configuration information can be "Y", representing that the interface of the service can be retried.
  • the retry configuration information can be "N", representing that the interface of the service cannot be retried.
  • the retry configuration information can also include an interface identifier.
  • the above-mentioned execution subject can determine that the retry configuration information represents the retry of the above-mentioned target service in response to determining that the above-mentioned retry identifier is an identifier representing that the interface of the service can be retried.
  • the interface retry can be to use the various request parameters of the request of the above-mentioned target service to re-call the interface.
  • Step 4043 in response to determining that the retry configuration information represents a retry target service, adding the request to a failed request queue.
  • the execution subject may add the request to a failed request queue in response to determining that the retry configuration information indicates retrying the target service.
  • the failed request queue may be a message queue for storing each failed request.
  • the execution subject may add the request to the end of the failed request queue.
  • Step 4044 according to the failed request queue and the preset time interval, retry the interface corresponding to the request to obtain an interface retry result set.
  • the execution entity may retry the interface corresponding to the request according to the failed request queue and the preset time interval to obtain an interface retry result set.
  • the preset time interval may be a preset period duration for retrying the interface.
  • the preset time interval may be 1 minute.
  • the execution entity may retry the interface corresponding to each request in the failed request queue once every preset time interval to generate a set of interface retry results for each interface corresponding to each request.
  • a set of interface retry results for the interface corresponding to the request of the target business may be obtained.
  • an identifier representing the success of the interface retry may be determined as the interface retry result.
  • an identifier representing the failure of the interface retry may be determined as the interface retry result.
  • the interface retry result in the interface retry result set may indicate whether the above interface is successfully retried.
  • the retry process may be to use the request parameters of the above request and call the above interface again.
  • the process 400 of the service downgrade method in some embodiments corresponding to FIG. 4 embodies the steps of expanding the retry processing after downgrade. Therefore, the scheme described in these embodiments can retry the interface of the target service at a fixed time when the target service needs to be retried after downgrade. Thus, it is realized that from the business perspective, a custom retry strategy is supported, so that it can adapt to complex and changing business scenarios.
  • FIG5 it shows a process 500 of yet another embodiment of a service degradation method.
  • the process 500 of the service degradation method includes the following steps:
  • Step 501 receiving each interface call data corresponding to the target service.
  • Step 502 Determine the service configuration information corresponding to the target service.
  • Step 503 Determine whether to perform downgrade processing on the target service according to the degradation threshold information included in the interface call data and the service configuration information.
  • Step 504 in response to determining to downgrade the target service:
  • Step 5041 Perform service downgrade processing on the request of the target service according to the downgrade interface information included in the service configuration information.
  • Step 5042 determine whether the retry configuration information represents a retry target service.
  • Step 5043 In response to determining that the retry configuration information represents a retry target service, the request is added to a failed request queue.
  • Step 5044 retry the interface corresponding to the request according to the failed request queue and the preset time interval to obtain an interface retry result set.
  • steps 501-5045 and the technical effects brought about can refer to steps 401-4044 in the embodiments corresponding to FIG. 4 , and will not be repeated here.
  • Step 5045 Determine whether to perform recovery processing on the target service according to the interface retry result set and the recovery threshold information.
  • the execution subject of the service degradation method can determine whether to restore the target service according to the interface retry result set and the recovery threshold information.
  • the service configuration information may also include recovery configuration information.
  • the above recovery configuration information may be information configured for recovery processing after service downgrade.
  • the above recovery configuration information includes recovery threshold information and recovery interface information.
  • the recovery threshold information may be threshold-related information used to determine whether to perform recovery processing on the downgraded service.
  • the recovery threshold information may include a threshold for the number of successful interface retries.
  • the threshold for the number of successful interface retries may be a threshold for limiting the minimum number of successful retries of the interface of the above target service.
  • the recovery interface information may be information related to the restored interface.
  • the recovery interface information may include a recovery interface identifier.
  • the recovery interface identifier may be an identifier of the interface after the target service is restored.
  • the above execution entity may determine the number of each interface retry result that represents the successful interface retry in the above interface retry result set as the number of successful interface retries. Then, in response to determining that the number of successful interface retries is greater than or equal to the threshold for successful interface retries, it may be determined that the target service is to be recovered.
  • the above-mentioned recovery threshold information may include a recovery ratio threshold.
  • the above-mentioned recovery ratio threshold may be a threshold used to define a minimum ratio of successful retries.
  • the execution subject may determine whether to perform recovery processing on the target service through the following steps:
  • the number of interface retry results that indicate successful interface retry and are included in the interface retry result set is determined as the number of successful retries.
  • the second step in response to determining that the ratio of the number of successful retries to the number of retry results of each interface included in the interface retry result set is greater than or equal to the recovery ratio threshold, it is determined to perform recovery processing on the target business.
  • the recovery ratio threshold configured in advance.
  • the above-mentioned restoration threshold information may include a restoration ratio threshold and a restoration quantity threshold.
  • the execution subject may determine whether to perform recovery processing on the target service through the following steps:
  • the number of interface retry results that indicate successful interface retry and are included in the interface retry result set is determined as the number of successful retries.
  • the second step in response to determining that the number of successful retries is greater than or equal to the recovery number threshold, value, and the ratio of the number of successful retries to the number of retry results of each interface included in the interface retry result set is greater than or equal to the recovery ratio threshold, it is determined that the target business needs to be restored. Therefore, it is possible to determine whether the target business needs to be restored from the dimensions of the successful call ratio and the successful number threshold by using the recovery ratio threshold and the recovery number threshold that are pre-configured and customized.
  • Step 5046 in response to determining to perform recovery processing on the target service, perform service recovery processing on the target service according to the recovery interface information.
  • the execution subject may perform service recovery processing on the target service according to the recovery interface information in response to determining to perform service recovery processing on the target service.
  • the execution subject may determine the interface corresponding to the recovery interface identifier included in the recovery interface information as the interface of the target service to perform service recovery processing on the target service.
  • Step 5047 In response to determining that the retry configuration information indicates that the target service is not to be retried, a service recovery process is performed on the target service according to the recovery interface information.
  • the execution subject may perform service recovery processing on the target service according to the recovery interface information in response to determining that the retry configuration information indicates not to retry the target service.
  • the specific implementation of service recovery processing on the target service may refer to step 5046.
  • step 5044 and step 5045 can be executed in parallel.
  • the process 500 of the service downgrade method in some embodiments corresponding to FIG. 5 embodies the steps of extending the recovery process after downgrade. Therefore, the schemes described in these embodiments can restore the target service when the target service meets the recovery conditions after downgrade. This realizes supporting customized recovery strategies from the business perspective, so as to adapt to complex and changing business scenarios.
  • the present disclosure provides some embodiments of a service degradation device, which correspond to the method embodiments shown in FIG. 3 , and the device can be specifically applied to various electronic devices.
  • a service degradation device 600 in some embodiments includes: a receiving unit 601, a first determining unit 602, a second determining unit 603 and a degradation unit 604.
  • Element 601 is configured to receive various interface call data corresponding to the target business;
  • the first determination unit 602 is configured to determine the business configuration information corresponding to the above-mentioned target business, wherein the above-mentioned business configuration information includes downgrade configuration information, and the above-mentioned downgrade configuration information includes downgrade threshold information and downgrade interface information;
  • the second determination unit 603 is configured to determine whether to downgrade the above-mentioned target business according to the above-mentioned various interface call data and the downgrade threshold information included in the above-mentioned business configuration information;
  • the downgrade unit 604 is configured to respond to the determination to downgrade the above-mentioned target business and, according to the downgrade interface information included in the above-mentioned business configuration information, perform business downgrade processing on the request of the above-mentioned
  • the second determination unit 603 can be configured to: determine the number of failed calls based on the above-mentioned interface call data and preset failure call conditions; in response to determining that the ratio of the above-mentioned number of failed calls to the number of the above-mentioned interface call data is greater than or equal to the above-mentioned downgrade ratio threshold, determine to downgrade the above-mentioned target business.
  • the above-mentioned downgrade threshold information includes a downgrade quantity threshold and a downgrade ratio threshold.
  • the second determination unit 603 can be configured to: determine the number of failed calls based on the above-mentioned interface call data and preset failure call conditions; in response to determining that the above-mentioned number of failed calls is greater than or equal to the above-mentioned downgrade number threshold, and the ratio of the above-mentioned number of failed calls to the number of the above-mentioned interface call data is greater than or equal to the above-mentioned downgrade ratio threshold, determine to downgrade the above-mentioned target business.
  • the receiving unit 601 may be configured to: receive each interface call data corresponding to the target service within a preset period of time.
  • the above service configuration information also includes retry configuration information.
  • the service degradation device 600 may further include: a retry determination unit, an adding unit and a retry unit (not shown in the figure).
  • the retry determination unit is configured to determine whether the above-mentioned retry configuration information represents retrying the above-mentioned target service.
  • the adding unit is configured to add the above-mentioned request to the failed request queue in response to determining that the above-mentioned retry configuration information represents retrying the above-mentioned target service.
  • the retry unit is configured to retry the interface corresponding to the above-mentioned request according to the above-mentioned failed request queue and a preset time interval, and obtain an interface retry result set, wherein the interface retry result in the above-mentioned interface retry result set represents whether the above-mentioned interface is successfully retried.
  • the service configuration information also includes recovery configuration information.
  • the information includes restoration threshold information and restoration interface information.
  • the service degradation device 600 may further include: a recovery determination unit and a first recovery unit (not shown in the figure).
  • the recovery determination unit is configured to determine whether to perform recovery processing on the target service according to the interface retry result set and the recovery threshold information.
  • the first recovery unit is configured to perform service recovery processing on the target service according to the recovery interface information in response to determining to perform recovery processing on the target service.
  • the service configuration information further includes recovery configuration information
  • the recovery configuration information includes recovery threshold information and recovery interface information.
  • the service degradation device 600 may further include: a second recovery unit (not shown in the figure), configured to, in response to determining that the retry configuration information indicates not to retry the target service, perform service recovery processing on the target service according to the recovery interface information.
  • a second recovery unit (not shown in the figure), configured to, in response to determining that the retry configuration information indicates not to retry the target service, perform service recovery processing on the target service according to the recovery interface information.
  • the above-mentioned recovery threshold information includes a recovery ratio threshold.
  • the recovery determination unit can be configured to: determine the number of interface retry results included in the above-mentioned interface retry result set that represent the success of the interface retry as the number of successful retries; in response to determining that the ratio of the above-mentioned number of successful retries to the number of each interface retry results included in the above-mentioned interface retry result set is greater than or equal to the above-mentioned recovery ratio threshold, determine to perform recovery processing on the above-mentioned target service.
  • the above-mentioned restoration threshold information includes a restoration ratio threshold and a restoration quantity threshold.
  • the recovery determination unit can be configured to: determine the number of interface retry results characterizing the success of the interface retry included in the above-mentioned interface retry result set as the number of successful retries; in response to determining that the above-mentioned successful retries number is greater than or equal to the above-mentioned recovery number threshold, and the ratio of the above-mentioned successful retries number to the number of each interface retry results included in the above-mentioned interface retry result set is greater than or equal to the above-mentioned recovery ratio threshold, determine to perform recovery processing on the above-mentioned target business.
  • the above-mentioned downgrade configuration information also includes an extended service identifier, and the interface call data in the above-mentioned each interface call data corresponds to the extended service identifier.
  • the second determination unit 603 may include: a first data determination unit, a second data determination unit and a failed call quantity determination unit (not shown in the figure).
  • the first data determination unit is configured to determine each interface call data that meets the above-mentioned preset failed call condition among the above-mentioned interface call data as interface call failed data, and obtain the interface call quantity.
  • the second data determination unit is configured to determine each interface call failure data satisfying a preset extended service identification condition in the above interface call failure data set as a target interface call failure data set, wherein the above preset extended service identification condition is that the extended service identification corresponding to the interface call failure data is the same as the extended service identification included in the above downgrade configuration information.
  • the failed call quantity determination unit is configured to determine the number of each target interface call failure data included in the above target interface call failure data set as the failed call quantity.
  • the service degradation apparatus 600 may further include: a publishing unit (not shown in the figure), configured to publish the service degradation event information corresponding to the target service.
  • a publishing unit (not shown in the figure), configured to publish the service degradation event information corresponding to the target service.
  • the issuing unit may be configured to: send the service degradation event information to an alarm terminal device.
  • the publishing unit may be configured to: send the service degradation event information to an associated data storage end, so as to provide a visual display of each service degradation event information stored in the data storage end.
  • the units recorded in the device 600 correspond to the steps in the method described with reference to Fig. 3. Therefore, the operations, features and beneficial effects described above for the method are also applicable to the device 600 and the units contained therein, and will not be described in detail here.
  • FIG. 7 a schematic diagram of the structure of an electronic device (e.g., the server 105 shown in FIG. 1 or the monitoring server shown in FIG. 2 ) 700 suitable for implementing some embodiments of the present disclosure is shown.
  • the electronic device shown in FIG. 7 is only an example and should not limit the functions and scope of use of the embodiments of the present disclosure.
  • the electronic device 700 may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 701, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 702 or a program loaded from a storage device 708 into a random access memory (RAM) 703.
  • a processing device e.g., a central processing unit, a graphics processing unit, etc.
  • RAM random access memory
  • various programs and data required for the operation of the electronic device 700 are also stored.
  • the processing device 701, the ROM 702, and the RAM 703 are connected to each other via a bus 704.
  • An input/output (I/O) interface 705 is also connected to the bus 704.
  • the following devices may be connected to the I/O interface 705: input devices 706 including, for example, a touch screen, a touchpad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; output devices 707 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; storage devices 708 including, for example, a magnetic tape, a hard disk, etc.; and communication devices 709.
  • the communication device 709 may allow the electronic device 700 to communicate wirelessly or wired with other devices to exchange data.
  • FIG. 7 shows an electronic device 700 with various devices, it should be understood that it is not required to implement or have all the devices shown. More or fewer devices may be implemented or have alternatively. Each box shown in FIG. 7 may represent one device, or may represent multiple devices as needed.
  • the process described above with reference to the flowchart can be implemented as a computer software program.
  • some embodiments of the present disclosure include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program contains program code for executing the method shown in the flowchart.
  • the computer program can be downloaded and installed from the network through the communication device 709, or installed from the storage device 708, or installed from the ROM 702.
  • the processing device 701 the above-mentioned functions defined in the method of some embodiments of the present disclosure are executed.
  • the computer-readable medium described in some embodiments of the present disclosure may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two.
  • the computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above.
  • Computer-readable storage media may include, but are not limited to: an electrical connection with at least one wire, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.
  • a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, device or device.
  • a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, which carries a computer-readable program. Code. This propagated data signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above.
  • the computer readable signal medium may also be any computer readable medium other than a computer readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.
  • the program code contained on the computer readable medium may be transmitted using any appropriate medium, including but not limited to: wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.
  • the client and server may communicate using any currently known or future developed network protocol such as HTTP (HyperText Transfer Protocol), and may be interconnected with any form or medium of digital data communication (e.g., a communication network).
  • HTTP HyperText Transfer Protocol
  • Examples of communication networks include a local area network ("LAN”), a wide area network ("WAN”), an internet (e.g., the Internet), and a peer-to-peer network (e.g., an ad hoc peer-to-peer network), as well as any currently known or future developed network.
  • the computer-readable medium may be included in the electronic device; or it may exist independently without being installed in the electronic device.
  • the computer-readable medium carries one or more programs. When the one or more programs are executed by the electronic device, the electronic device: receives the interface call data corresponding to the target service; determines the service configuration information corresponding to the target service, wherein the service configuration information includes downgrade configuration information, and the downgrade configuration information includes downgrade threshold information and downgrade interface information; determines whether to downgrade the target service according to the interface call data and the downgrade threshold information included in the service configuration information; in response to determining to downgrade the target service, performs service downgrade processing on the request of the target service according to the downgrade interface information included in the service configuration information.
  • Computer program code for performing operations of some embodiments of the present disclosure may be written in one or more programming languages, or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages.
  • the program code may be executed entirely on the user's computer, partially on the user's computer, as a stand-alone software package, partially on the user's computer and partially on a remote computer, or in a manner similar to that of a computer program. Or it can be executed entirely on a remote computer or server.
  • the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (e.g., through the Internet using an Internet service provider).
  • LAN local area network
  • WAN wide area network
  • each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains at least one executable instruction for realizing the specified logical function.
  • the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved.
  • each square box in the block diagram and/or flow chart, and the combination of the square boxes in the block diagram and/or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
  • the units described in some embodiments of the present disclosure may be implemented by software or by hardware.
  • the units described may also be provided in a processor, for example, may be described as: a processor including a receiving unit, a first determining unit, a second determining unit, and a degradation unit.
  • the names of these units do not, in some cases, constitute limitations on the units themselves, for example, the receiving unit may also be described as a "unit for receiving each interface call data corresponding to the target service".
  • exemplary types of hardware logic components include: field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chip (SOCs), complex programmable logic devices (CPLDs), and the like.
  • FPGAs field programmable gate arrays
  • ASICs application specific integrated circuits
  • ASSPs application specific standard products
  • SOCs systems on chip
  • CPLDs complex programmable logic devices
  • Some embodiments of the present disclosure further provide a computer program product, including a computer program, which implements any of the above-mentioned service degradation methods when executed by a processor.

Abstract

本公开的实施例公开了业务降级方法、装置、设备、计算机可读介质和程序产品。该方法的一具体实施方式包括:接收对应目标业务的各个接口调用数据;确定对应上述目标业务的业务配置信息,其中,上述业务配置信息包括降级配置信息,上述降级配置信息包括降级阈值信息和降级接口信息;根据上述各个接口调用数据和上述业务配置信息包括的降级阈值信息,确定是否对上述目标业务进行降级处理;响应于确定对上述目标业务进行降级处理,根据上述业务配置信息包括的降级接口信息,对上述目标业务的请求进行业务降级处理。

Description

业务降级方法、装置、设备、计算机可读介质和程序产品
相关申请的交叉引用
本申请要求于申请日为2022年09月26日提交的,申请号为202211175549.5、发明名称为“业务降级方法、装置、设备、计算机可读介质和程序产品”的中国专利申请的优先权,其全部内容作为整体并入本申请中。
技术领域
本公开的实施例涉及计算机技术领域,具体涉及业务降级方法、装置、设备、计算机可读介质和程序产品。
背景技术
分布式系统环境下,一个业务通常依赖多个基础服务。随着业务复杂度的提高,服务间的依赖关系也变的更为复杂,服务雪崩效应也随之而来。为了提高应用服务的稳定性,降级熔断组件应运而生。目前,在对业务进行降级时,通常采用的方式为:基于一次请求与响应判断是否降级。
发明内容
本公开的内容部分用于以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。本公开的内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。
本公开的一些实施例提出了业务降级方法、装置、电子设备、计算机可读介质和计算机程序产品,来解决以上背景技术部分提到的技术问题中的一项或多项。
第一方面,本公开的一些实施例提供了一种业务降级方法,该方 法包括:接收对应目标业务的各个接口调用数据;确定对应上述目标业务的业务配置信息,其中,上述业务配置信息包括降级配置信息,上述降级配置信息包括降级阈值信息和降级接口信息;根据上述各个接口调用数据和上述业务配置信息包括的降级阈值信息,确定是否对上述目标业务进行降级处理;响应于确定对上述目标业务进行降级处理,根据上述业务配置信息包括的降级接口信息,对上述目标业务的请求进行业务降级处理。
第二方面,本公开的一些实施例提供了一种业务降级装置,装置包括:接收单元,被配置成接收对应目标业务的各个接口调用数据;第一确定单元,被配置成确定对应上述目标业务的业务配置信息,其中,上述业务配置信息包括降级配置信息,上述降级配置信息包括降级阈值信息和降级接口信息;第二确定单元,被配置成根据上述各个接口调用数据和上述业务配置信息包括的降级阈值信息,确定是否对上述目标业务进行降级处理;降级单元,被配置成响应于确定对上述目标业务进行降级处理,根据上述业务配置信息包括的降级接口信息,对上述目标业务的请求进行业务降级处理。
第三方面,本公开的一些实施例提供了一种电子设备,包括:至少一个处理器;存储装置,其上存储有至少一个程序,当至少一个程序被至少一个处理器执行,使得至少一个处理器实现上述第一方面任一实现方式所描述的方法。
第四方面,本公开的一些实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,程序被处理器执行时实现上述第一方面任一实现方式所描述的方法。
第五方面,本公开的一些实施例提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现上述第一方面任一实现方式所描述的方法。
附图说明
结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附 图标记表示相同或相似的元素。应当理解附图是示意性的,元件和元素不一定按照比例绘制。
图1是本公开的一些实施例可以应用于其中的示例性系统的架构图;
图2是根据本公开的一些实施例的业务降级方法的一个应用场景的时序图;
图3是根据本公开的业务降级方法的一些实施例的流程图;
图4是根据本公开的业务降级方法的另一些实施例的流程图;
图5是根据本公开的业务降级方法的又一些实施例的流程图;
图6是根据本公开的业务降级装置的一些实施例的结构示意图;
图7是适于用来实现本公开的一些实施例的电子设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例。相反,提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“至少一个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称 仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
相关的业务降级方法,例如,基于一次请求与响应判断是否降级等经常会存在如下技术问题:基于一次请求与响应判断是否降级的方式,在调用接口时才能判断是否降级,导致在实际业务场景降级,且该接口的前置节点阻断时,该接口不会被调用,从而导致后续熔断器的状态无法维护,在复杂业务场景中的适用性较差。
为了解决以上所阐述的问题,本公开的一些实施例提出了物流兴趣点信息生成方法及装置,实现了从业务角度出发,支持自定义降级策略,从而可以适应复杂多变的业务场景。
下面将参考附图并结合实施例来详细说明本公开。
图1示出了可以应用本公开的一些实施例的业务降级方法或业务降级装置的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是具有显示屏并且支持信息浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成例如用来提供分布式服务的多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的信息提供支持的后台服务器。后台服务器可以对接 收到的请求等数据进行分析等处理,并将处理结果反馈给终端设备。
需要说明的是,本公开的实施例所提供的业务降级方法可以由服务器105执行。相应地,业务降级装置可以设置于服务器105中。
需要说明的是,服务器可以是硬件,也可以是软件。当服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可以实现成例如用来提供分布式服务的多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
图2是根据本公开一些实施例的业务降级方法的一个应用场景的时序图。
在图2的应用场景中,用户端可以向业务系统发送请求。业务系统可以为用于响应用户端的请求的服务端。业务系统可以向外部依赖请求外部服务。外部依赖可以为用于为业务系统提供服务的服务端。业务系统可以将接口调用数据发送至监控服务端。监控服务端可以用于执行业务降级方法。业务降级方法的一个应用场景的时序流程,包括以下步骤:
步骤201,用户端向业务系统发送针对目标业务的请求。这里,请求可以为页面访问请求。
步骤202,业务系统向外部依赖调用服务。这里,调用服务可以指调用接口。
步骤203,外部依赖向业务系统发送外部依赖处理结果。其中,上述外部依赖处理结果可以为外部依赖针对接收的调用请求所反馈的处理结果。
步骤204,业务系统将根据接收的外部依赖发送的外部依赖处理结果生成的接口调用数据发送至监控服务端。其中,当外部依赖处理结果包括处理数据时,可以表征业务系统向外部依赖成功调用服务,从而业务系统可以生成表征接口调用成功的接口调用数据。当外部依 赖处理结果为空或包括表征调用失败的标识时,可以表征业务系统向外部依赖调用服务失败,从而业务系统可以生成表征接口调用失败的接口调用数据。
步骤205,业务系统根据接收的外部依赖发送的外部依赖处理结果,将业务系统处理结果发送至用户端。其中,当外部依赖处理结果包括处理数据时,业务系统可以根据上述处理数据生成对应用户端的请求的业务系统处理结果。
步骤206,监控服务端确定对应上述目标业务的业务配置信息。其中,上述业务配置信息包括降级配置信息,上述降级配置信息包括降级阈值信息和降级接口信息。
步骤207,监控服务端根据接收的上述目标业务的各个接口调用数据和上述业务配置信息包括的降级阈值信息,确定是否对上述目标业务进行降级处理。
步骤208,监控服务端响应于确定对上述目标业务进行降级处理,根据上述业务配置信息包括的降级接口信息,对业务系统中上述目标业务的请求进行业务降级处理。
需要说明的是,上述用户端、上述业务系统、上述外部依赖和上述监控服务端可以是硬件,也可以是软件。当上述用户端、上述业务系统、上述外部依赖和上述监控服务端为硬件时,可以实现成多个服务器或终端设备组成的分布式集群,也可以实现成单个服务器或单个终端设备。当上述用户端、上述业务系统、上述外部依赖和上述监控服务端体现为软件时,可以安装在上述所列举的硬件设备中。其可以实现成例如用来提供分布式服务的多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。
继续参考图3,示出了根据本公开的业务降级方法的一些实施例的流程300。该业务降级方法,包括以下步骤:
步骤301,接收对应目标业务的各个接口调用数据。
在一些实施例中,业务降级方法的执行主体(例如图1所示的服务器105或图2所示的监控服务端)可以接收对应目标业务的各个接 口调用数据。其中,上述目标业务可以为任意的业务。这里,业务可以指实现为接口以提供相关服务的事务。业务可以以业务标识唯一表示。上述目标业务对应有接口。对应目标业务的各个接口调用数据可以为调用上述接口的各个调用结果相关数据。例如,接口调用数据可以为表征成功调用上述接口或调用上述接口失败的数据。作为示例,接口调用数据可以包括接口标识和接口调用结果。接口标识可以唯一标识接口。接口调用结果可以表征成功或失败。接口调用数据还可以包括业务标识。上述各个接口调用数据可以是上述目标业务的请求处理服务器发送的。请求处理服务器可以理解为上述目标业务的业务系统。作为示例,用户端向上述业务系统发送页面请求时,业务系统调用上述接口。若调用成功,则接口调用结果表征成功。若调用失败,则接口调用结果表征失败。业务系统可以将接口调用数据发送至上述执行主体,并可以将请求结果发送至用户端。实践中,上述执行主体可以通过有线连接方式或无线连接方式,接收预设数目个对应目标业务的各个接口调用数据。这里,对于预设数目的具体设定,不作限定。
需要指出的是,上述无线连接方式可以包括但不限于3G/4G连接、WiFi连接、蓝牙连接、WiMAX连接、Zigbee连接、UWB(ultra wideband)连接、以及其他现在已知或将来开发的无线连接方式。
在一些实施例的一些可选的实现方式中,上述执行主体可以在预设周期时间段内接收对应上述目标业务的各个接口调用数据。其中,上述预设周期时间段可以为预先设定的用于对目标业务的接口调用状态进行监控的周期性的时间段。例如,监控周期可以为5分钟。上次监控的预设周期时间段可以为08:00:00-08:05:00。则当前的预设周期时间段可以为08:05:00-08:10:00。由此,可以通过在预设周期时间段内接收对应上述目标业务的各个接口调用数据,实现对目标业务的接口调用状态进行周期性监控。
步骤302,确定对应目标业务的业务配置信息。
在一些实施例中,上述执行主体可以确定对应上述目标业务的业务配置信息。其中,上述业务配置信息可以为业务的配置相关信息。上述业务配置信息可以包括降级配置信息。上述降级配置信息可以为 对业务的降级处理所配置的信息。上述降级配置信息可以包括降级阈值信息和降级接口信息。降级阈值信息可以为用于确定是否对业务进行降级处理的阈值相关信息。降级阈值信息可以包括接口调用失败数量阈值。接口调用失败数量阈值可以为对上述目标业务的接口的最大失败调用次数进行限定的阈值。降级接口信息可以为降级后的接口相关信息。降级接口信息可以包括降级接口标识。降级接口标识可以为对目标业务降级后的接口的标识。
实践中,上述执行主体可以从存储各个业务配置信息的计算设备获取对应的业务标识为上述目标业务的业务标识的业务配置信息。存储各个业务配置信息的计算设备可以理解为配置中心的服务器。
实践中,上述执行主体还可以从预先存储至本地的各个业务配置信息中确定对应上述目标业务的业务配置信息。预先存储至本地的各个业务配置信息可以理解为初始化时存储至本地内存或缓存的各个业务配置信息。
步骤303,根据各个接口调用数据和业务配置信息包括的降级阈值信息,确定是否对目标业务进行降级处理。
在一些实施例中,上述执行主体可以根据上述各个接口调用数据和上述业务配置信息包括的降级阈值信息,确定是否对上述目标业务进行降级处理。实践中,上述执行主体可以将上述各个接口调用数据中表征调用失败的各个接口调用数据的数量确定为失败调用数量。然后,可以响应于确定上述失败调用数量大于等于上述降级阈值信息包括的接口调用失败数量阈值,确定对上述目标业务进行降级处理。
可选地,上述降级阈值信息可以包括降级比例阈值。上述降级比例阈值可以为用于对失败调用的最大比例进行限定的阈值。
在一些实施例的一些可选的实现方式中,上述执行主体可以通过以下步骤确定是否对上述目标业务进行降级处理:
第一步,根据上述各个接口调用数据和预设失败调用条件,确定失败调用数量。其中,上述预设失败调用条件可以为接口调用数据表征调用失败。实践中,上述执行主体可以将上述各个接口调用数据中满足上述预设失败调用条件的各个接口调用数据的数量确定为失败调 用数量。
第二步,响应于确定上述失败调用数量与上述各个接口调用数据的数量的比值大于等于上述降级比例阈值,确定对上述目标业务进行降级处理。由此,可以通过预先自定义配置的降级比例阈值,从失败调用比例的维度确定是否需对目标业务进行降级处理。
可选地,上述降级阈值信息可以包括降级数量阈值和降级比例阈值。
在一些实施例的一些可选的实现方式中,上述执行主体可以通过以下步骤确定是否对上述目标业务进行降级处理:
第一步,根据上述各个接口调用数据和预设失败调用条件,确定失败调用数量。实践中,上述执行主体可以将上述各个接口调用数据中满足上述预设失败调用条件的各个接口调用数据的数量确定为失败调用数量。
第二步,响应于确定上述失败调用数量大于等于上述降级数量阈值,且上述失败调用数量与上述各个接口调用数据的数量的比值大于等于上述降级比例阈值,确定对上述目标业务进行降级处理。由此,可以通过预先自定义配置的降级比例阈值和降级数量阈值,同时从失败调用比例和降级数量的阈值的维度,确定是否需对目标业务进行降级处理。
可选地,上述降级配置信息还可以包括扩展业务标识。上述扩展业务标识可以为自定义业务的标识,可以唯一标识业务的接口的接口方法。自定义业务可以对应目标业务的接口的一接口方法。通过扩展业务标识,可以使得业务方自定义配置业务的接口下所需监控的方法的调用状态。上述各个接口调用数据中的接口调用数据对应有扩展业务标识。
在一些实施例的一些可选的实现方式中,上述执行主体可以通过以下步骤根据上述各个接口调用数据和预设失败调用条件,确定失败调用数量:
第一步,将上述各个接口调用数据中满足上述预设失败调用条件的各个接口调用数据确定为接口调用失败数据,得到接口调用失败数 据集合。
第二步,将上述接口调用失败数据集合中满足预设扩展业务标识条件的各个接口调用失败数据确定为目标接口调用失败数据集合。其中,上述预设扩展业务标识条件可以为接口调用失败数据对应的扩展业务标识与上述降级配置信息包括的扩展业务标识相同。
第三步,将上述目标接口调用失败数据集合包括的各个目标接口调用失败数据的数量确定为失败调用数量。由此,通过扩展业务标识,可以从业务粒度角度出发,支持自定义不同粒度的业务的降级策略,从而可以适应复杂多变的不同粒度的业务场景。
步骤304,响应于确定对目标业务进行降级处理,根据业务配置信息包括的降级接口信息,对目标业务的请求进行业务降级处理。
在一些实施例中,上述执行主体可以响应于确定对上述目标业务进行降级处理,根据上述业务配置信息包括的降级接口信息,对上述目标业务的请求进行业务降级处理。实践中,上述执行主体可以将上述降级接口信息包括的降级接口标识对应的接口确定为上述目标业务的接口,以对上述目标业务的请求进行业务降级处理。
可选地,上述执行主体可以对上述目标业务对应的业务降级事件信息进行发布处理。其中,业务降级事件信息可以为表征上述目标业务需进行降级或经过了降级处理的信息。上述业务降级事件信息可以包括但不限于:目标业务降级前的接口标识,事件类型,降级时间,降级事件结果。上述事件类型可以为对上述目标业务的接口的处理的类型。例如,业务降级事件信息包括的事件类型可以为“降级”。降级时间可以为对目标业务进行业务降级处理的时间。事件结果可以为表征是否降级成功的结果。这里,发布处理可以为将业务降级事件信息发送至降级事件订阅方的处理。降级事件订阅方可以为需获取业务降级事件信息的订阅方。这里,订阅方可以为但不限于:终端设备、服务器、本执行主体。实践中,上述执行主体可以将上述业务降级事件信息存储至本地预设目录下,以对上述业务降级事件信息进行发布处理。存储至本地预设目录下的业务降级事件信息可以供本执行主体的其他方法读取。
实践中,上述执行主体还可以响应于接收到对应上述目标业务的降级事件结果,对上述目标业务对应的业务降级事件信息进行发布处理。降级事件结果可以为响应上述目标业务的请求的服务端发送的。
在一些实施例的一些可选的实现方式中,上述执行主体可以将上述业务降级事件信息发送至告警终端设备。其中,上述告警终端设备可以为需获知对上述目标业务进行降级的结果的终端设备。例如,上述告警终端设备可以为业务方管理人员的终端设备。实践中,上述执行主体可以通过预设触达方式,将上述业务降级事件信息发送至告警终端设备。上述预设触达方式可以包括但不限于:短信发送方式,邮件发送方式,电话通知方式,小程序通知方式。由此,可以将业务降级事件信息发送至告警终端设备,以供告警终端设备的用户获知目标业务的降级结果。
在一些实施例的一些可选的实现方式中,上述执行主体可以将上述业务降级事件信息发送至相关联的数据存储端,以供对上述数据存储端存储的各个业务降级事件信息进行可视化展示。上述数据存储端可以为存储了可用于进行数据可视化的数据的服务器。对上述数据存储端存储的各个业务降级事件信息进行可视化展示的执行主体可以为上述执行主体,也可以为可视化终端设备。可视化终端设备可以为用于进行可视化的后台终端设备。由此,可以将业务降级事件信息发送至相关联的数据存储端,以供进行可视化展示。
本公开的上述各个实施例具有如下有益效果:通过本公开的一些实施例的业务降级方法,从业务角度出发,支持自定义降级策略,从而可以适应复杂多变的业务场景。具体来说,造成在复杂业务场景中的适用性较差的原因在于:基于一次请求与响应判断是否降级的方式,在调用接口时才能判断是否降级,导致在实际业务场景降级,且该接口的前置节点阻断时,该接口不会被调用,从而导致后续熔断器的状态无法维护,在复杂业务场景中的适用性较差。基于此,本公开的一些实施例的业务降级方法,首先,接收对应目标业务的各个接口调用数据。由此,接收的各个接口调用数据可以表征多次调用该目标业务的接口的数据,以用于判断是否对目标业务进行降级。然后,确定对 应上述目标业务的业务配置信息。其中,上述业务配置信息包括降级配置信息,上述降级配置信息包括降级阈值信息和降级接口信息。由此,所确定的业务配置信息可以表征针对该目标业务所配置的相关信息,业务配置信息包括的降级配置信息可以表征针对该目标业务配置的降级逻辑相关信息。之后,根据上述各个接口调用数据和上述业务配置信息包括的降级阈值信息,确定是否对上述目标业务进行降级处理。由此,可以通过多次调用该目标业务的接口的各个接口调用数据和自定义配置的该目标业务的降级阈值信息,确定是否对上述目标业务进行降级处理。最后,响应于确定对上述目标业务进行降级处理,根据上述业务配置信息包括的降级接口信息,对上述目标业务的请求进行业务降级处理。由此,可以在确定对该目标业务降级时,通过自定义配置的该目标业务的降级接口信息,对该目标业务进行降级处理。也因为接收的各个接口调用数据是多次调用该目标业务的接口的数据,避免了基于一次请求与响应判断是否降级的方式。又因为确定的业务配置信息中的降级配置信息是在先自定义配置的,可以根据业务场景的改变而调整。由此,实现了从业务角度出发,支持自定义降级策略,从而可以适应复杂多变的业务场景。
参考图4,其示出了业务降级方法的另一些实施例的流程400。该业务降级方法的流程400,包括以下步骤:
步骤401,接收对应目标业务的各个接口调用数据。
步骤402,确定对应目标业务的业务配置信息。
步骤403,根据各个接口调用数据和业务配置信息包括的降级阈值信息,确定是否对目标业务进行降级处理。
步骤404,响应于确定对目标业务进行降级处理:
步骤4041,根据业务配置信息包括的降级接口信息,对目标业务的请求进行业务降级处理。
在一些实施例中,步骤401-4041的具体实现及所带来的技术效果可以参考图3对应的那些实施例中的步骤301-304,在此不再赘述。
步骤4042,确定重试配置信息是否表征重试目标业务。
在一些实施例中,业务降级方法的执行主体(例如图1所示的服务器105或图2所示的监控服务端)可以确定重试配置信息是否表征重试上述目标业务。上述业务配置信息还可以包括重试配置信息。重试配置信息可以为针对业务降级后的重试逻辑所配置的信息。重试配置信息可以表征业务的接口是否可重试。重试配置信息可以包括重试标识。重试标识可以为表征业务的接口是否可重试的标识。例如,重试配置信息可以为“Y”,表征业务的接口可重试。重试配置信息可以为“N”,表征业务的接口不可重试。重试配置信息还可以包括接口标识。实践中,上述执行主体可以响应于确定上述重试标识为表征业务的接口可重试的标识,确定重试配置信息表征重试上述目标业务。这里,接口重试可以为采用上述目标业务的请求的各项请求参数,重新调用接口。
步骤4043,响应于确定重试配置信息表征重试目标业务,将请求添加至失败请求队列。
在一些实施例中,上述执行主体可以响应于确定上述重试配置信息表征重试上述目标业务,将上述请求添加至失败请求队列。其中,上述失败请求队列可以为用于存储各个失败的请求的消息队列。实践中,上述执行主体可以将上述请求添加至上述失败请求队列的末尾。
步骤4044,根据失败请求队列和预设时间间隔,对请求对应的接口进行重试处理,得到接口重试结果集合。
在一些实施例中,上述执行主体可以根据上述失败请求队列和预设时间间隔,对上述请求对应的接口进行重试处理,得到接口重试结果集合。其中,上述预设时间间隔可以为预设的用于对接口进行重试处理的周期时长。例如,上述预设时间间隔可以为1分钟。实践中,上述执行主体可以每隔上述预设时间间隔,对上述失败请求队列中的各个请求对应的接口进行一次重试处理,以生成对应各个请求的各个接口的各个接口重试结果集合。由此可以得到对应上述目标业务的请求的接口的接口重试结果集合。具体地,重试处理成功时,可以将表征上述接口重试成功的标识确定为接口重试结果。重试处理失败时,可以将表征上述接口重试失败的标识确定为接口重试结果。由此,上 述接口重试结果集合中的接口重试结果可以表征上述接口是否重试成功。这里,重试处理可以为采用上述请求的各项请求参数,再次调用上述接口。
从图4中可以看出,与图3对应的一些实施例的描述相比,图4对应的一些实施例中的业务降级方法的流程400体现了对降级后的重试处理进行扩展的步骤。由此,这些实施例描述的方案可以在目标业务降级后需重试时,定时重试该目标业务的接口。从而实现了从业务角度出发,支持自定义重试策略,从而可以适应复杂多变的业务场景。
参考图5,其示出了业务降级方法的又一些实施例的流程500。该业务降级方法的流程500,包括以下步骤:
步骤501,接收对应目标业务的各个接口调用数据。
步骤502,确定对应目标业务的业务配置信息。
步骤503,根据各个接口调用数据和业务配置信息包括的降级阈值信息,确定是否对目标业务进行降级处理。
步骤504,响应于确定对目标业务进行降级处理:
步骤5041,根据业务配置信息包括的降级接口信息,对目标业务的请求进行业务降级处理。
步骤5042,确定重试配置信息是否表征重试目标业务。
步骤5043,响应于确定重试配置信息表征重试目标业务,将请求添加至失败请求队列。
步骤5044,根据失败请求队列和预设时间间隔,对请求对应的接口进行重试处理,得到接口重试结果集合。
在一些实施例中,步骤501-5045的具体实现及所带来的技术效果可以参考图4对应的那些实施例中的步骤401-4044,在此不再赘述。
步骤5045,根据接口重试结果集合和恢复阈值信息,确定是否对目标业务进行恢复处理。
在一些实施例中,业务降级方法的执行主体(例如图1所示的服务器105或图2所示的监控服务端)可以根据上述接口重试结果集合和上述恢复阈值信息,确定是否对上述目标业务进行恢复处理。上述 业务配置信息还可以包括恢复配置信息。上述恢复配置信息可以为对业务降级后的恢复处理所配置的信息。上述恢复配置信息包括恢复阈值信息和恢复接口信息。恢复阈值信息可以为用于确定是否对降级后的业务进行恢复处理的阈值相关信息。恢复阈值信息可以包括接口重试成功数量阈值。接口重试成功数量阈值可以为对上述目标业务的接口的最小成功重试次数进行限定的阈值。恢复接口信息可以为恢复后的接口相关信息。恢复接口信息可以包括恢复接口标识。恢复接口标识可以为对目标业务恢复后的接口的标识。实践中,上述执行主体可以将上述接口重试结果集合中表征接口重试成功的各个接口重试结果的数量确定为接口重试成功数量。然后,可以响应于确定上述接口重试成功数量大于等于上述接口重试成功数量阈值,确定对上述目标业务进行恢复处理。
可选地,上述恢复阈值信息可以包括恢复比例阈值。上述恢复比例阈值可以为用于对成功重试的最小比例进行限定的阈值。
在一些实施例的一些可选的实现方式中,上述执行主体可以通过以下步骤确定是否对上述目标业务进行恢复处理:
第一步,将上述接口重试结果集合包括的表征接口重试成功的接口重试结果数量确定为重试成功数量。
第二步,响应于确定上述重试成功数量与上述接口重试结果集合包括的各个接口重试结果的数量的比值大于等于上述恢复比例阈值,确定对上述目标业务进行恢复处理。由此,可以通过预先自定义配置的恢复比例阈值,从成功重试比例的维度确定是否需对目标业务进行恢复处理。
可选地,上述恢复阈值信息可以包括恢复比例阈值和恢复数量阈值。
在一些实施例的一些可选的实现方式中,上述执行主体可以通过以下步骤确定是否对上述目标业务进行恢复处理:
第一步,将上述接口重试结果集合包括的表征接口重试成功的接口重试结果数量确定为重试成功数量。
第二步,响应于确定上述重试成功数量大于等于上述恢复数量阈 值,且上述重试成功数量与上述接口重试结果集合包括的各个接口重试结果的数量的比值大于等于上述恢复比例阈值,确定对上述目标业务进行恢复处理。由此,可以通过预先自定义配置的恢复比例阈值和恢复数量阈值,同时从成功调用比例和成功数量的阈值的维度,确定是否需对目标业务进行恢复处理。
步骤5046,响应于确定对目标业务进行恢复处理,根据恢复接口信息,对目标业务进行业务恢复处理。
在一些实施例中,上述执行主体可以响应于确定对上述目标业务进行恢复处理,根据上述恢复接口信息,对上述目标业务进行业务恢复处理。实践中,上述执行主体可以将上述恢复接口信息包括的恢复接口标识对应的接口确定为上述目标业务的接口,以对上述目标业务进行业务恢复处理。
步骤5047,响应于确定重试配置信息表征不重试目标业务,根据恢复接口信息,对目标业务进行业务恢复处理。
在一些实施例中,上述执行主体可以响应于确定上述重试配置信息表征不重试上述目标业务,根据上述恢复接口信息,对上述目标业务进行业务恢复处理。这里,对上述目标业务进行业务恢复处理的具体实现,可以参考步骤5046。
需要说明的是,步骤5044和步骤5045可以并行执行。
从图5中可以看出,与图4对应的一些实施例的描述相比,图5对应的一些实施例中的业务降级方法的流程500体现了对降级后的恢复处理进行扩展的步骤。由此,这些实施例描述的方案可以在目标业务降级后达到恢复条件时,恢复该目标业务。从而实现了从业务角度出发,支持自定义恢复策略,从而可以适应复杂多变的业务场景。
参考图6,作为对上述各图所示方法的实现,本公开提供了一种业务降级装置的一些实施例,这些装置实施例与图3所示的那些方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图6所示,一些实施例的业务降级装置600包括:接收单元601、第一确定单元602、第二确定单元603和降级单元604。其中,接收单 元601被配置成接收对应目标业务的各个接口调用数据;第一确定单元602被配置成确定对应上述目标业务的业务配置信息,其中,上述业务配置信息包括降级配置信息,上述降级配置信息包括降级阈值信息和降级接口信息;第二确定单元603被配置成根据上述各个接口调用数据和上述业务配置信息包括的降级阈值信息,确定是否对上述目标业务进行降级处理;降级单元604被配置成响应于确定对上述目标业务进行降级处理,根据上述业务配置信息包括的降级接口信息,对上述目标业务的请求进行业务降级处理。
可选地,第二确定单元603可以被配置成:根据上述各个接口调用数据和预设失败调用条件,确定失败调用数量;响应于确定上述失败调用数量与上述各个接口调用数据的数量的比值大于等于上述降级比例阈值,确定对上述目标业务进行降级处理。
可选地,上述降级阈值信息包括降级数量阈值和降级比例阈值。
可选地,第二确定单元603可以被配置成:根据上述各个接口调用数据和预设失败调用条件,确定失败调用数量;响应于确定上述失败调用数量大于等于上述降级数量阈值,且上述失败调用数量与上述各个接口调用数据的数量的比值大于等于上述降级比例阈值,确定对上述目标业务进行降级处理。
可选地,接收单元601可以被配置成:在预设周期时间段内接收对应上述目标业务的各个接口调用数据。
可选地,上述业务配置信息还包括重试配置信息。
可选地,业务降级装置600还可以包括:重试确定单元、添加单元和重试单元(图中未示出)。其中,重试确定单元被配置成确定上述重试配置信息是否表征重试上述目标业务。添加单元被配置成响应于确定上述重试配置信息表征重试上述目标业务,将上述请求添加至失败请求队列。重试单元被配置成根据上述失败请求队列和预设时间间隔,对上述请求对应的接口进行重试处理,得到接口重试结果集合,其中,上述接口重试结果集合中的接口重试结果表征上述接口是否重试成功。
可选地,上述业务配置信息还包括恢复配置信息,上述恢复配置 信息包括恢复阈值信息和恢复接口信息。
可选地,业务降级装置600还可以包括:恢复确定单元和第一恢复单元(图中未示出)。其中,恢复确定单元被配置成根据上述接口重试结果集合和上述恢复阈值信息,确定是否对上述目标业务进行恢复处理。第一恢复单元被配置成响应于确定对上述目标业务进行恢复处理,根据上述恢复接口信息,对上述目标业务进行业务恢复处理。
可选地,上述业务配置信息还包括恢复配置信息,上述恢复配置信息包括恢复阈值信息和恢复接口信息。
可选地,业务降级装置600还可以包括:第二恢复单元(图中未示出),被配置成响应于确定上述重试配置信息表征不重试上述目标业务,根据上述恢复接口信息,对上述目标业务进行业务恢复处理。
可选地,上述恢复阈值信息包括恢复比例阈值。
可选地,恢复确定单元可以被配置成:将上述接口重试结果集合包括的表征接口重试成功的接口重试结果数量确定为重试成功数量;响应于确定上述重试成功数量与上述接口重试结果集合包括的各个接口重试结果的数量的比值大于等于上述恢复比例阈值,确定对上述目标业务进行恢复处理。
可选地,上述恢复阈值信息包括恢复比例阈值和恢复数量阈值。
可选地,恢复确定单元可以被配置成:将上述接口重试结果集合包括的表征接口重试成功的接口重试结果数量确定为重试成功数量;响应于确定上述重试成功数量大于等于上述恢复数量阈值,且上述重试成功数量与上述接口重试结果集合包括的各个接口重试结果的数量的比值大于等于上述恢复比例阈值,确定对上述目标业务进行恢复处理。
可选地,上述降级配置信息还包括扩展业务标识,上述各个接口调用数据中的接口调用数据对应有扩展业务标识。
可选地,第二确定单元603可以包括:第一数据确定单元、第二数据确定单元和失败调用数量确定单元(图中未示出)。其中,第一数据确定单元被配置成将上述各个接口调用数据中满足上述预设失败调用条件的各个接口调用数据确定为接口调用失败数据,得到接口调用 失败数据集合。第二数据确定单元被配置成将上述接口调用失败数据集合中满足预设扩展业务标识条件的各个接口调用失败数据确定为目标接口调用失败数据集合,其中,上述预设扩展业务标识条件为接口调用失败数据对应的扩展业务标识与上述降级配置信息包括的扩展业务标识相同。失败调用数量确定单元被配置成将上述目标接口调用失败数据集合包括的各个目标接口调用失败数据的数量确定为失败调用数量。
可选地,业务降级装置600还可以包括:发布单元(图中未示出),被配置成对上述目标业务对应的业务降级事件信息进行发布处理。
可选地,发布单元可以被配置成:将上述业务降级事件信息发送至告警终端设备。
可选地,发布单元可以被配置成:将上述业务降级事件信息发送至相关联的数据存储端,以供对上述数据存储端存储的各个业务降级事件信息进行可视化展示。
可以理解的是,该装置600中记载的诸单元与参考图3描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作、特征以及产生的有益效果同样适用于装置600及其中包含的单元,在此不再赘述。
下面参考图7,其示出了适于用来实现本公开的一些实施例的电子设备(例如图1所示的服务器105或图2所示的监控服务端)700的结构示意图。图7示出的电子设备仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
如图7所示,电子设备700可以包括处理装置(例如中央处理器、图形处理器等)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储装置708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有电子设备700操作所需的各种程序和数据。处理装置701、ROM 702以及RAM703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
通常,以下装置可以连接至I/O接口705:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置706;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置707;包括例如磁带、硬盘等的存储装置708;以及通信装置709。通信装置709可以允许电子设备700与其他设备进行无线或有线通信以交换数据。虽然图7示出了具有各种装置的电子设备700,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图7中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
特别地,根据本公开的一些实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的一些实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的一些实施例中,该计算机程序可以通过通信装置709从网络上被下载和安装,或者从存储装置708被安装,或者从ROM 702被安装。在该计算机程序被处理装置701执行时,执行本公开的一些实施例的方法中限定的上述功能。
需要说明的是,本公开的一些实施例中记载的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有至少一个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的一些实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开的一些实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序 代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText Transfer Protocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:接收对应目标业务的各个接口调用数据;确定对应上述目标业务的业务配置信息,其中,上述业务配置信息包括降级配置信息,上述降级配置信息包括降级阈值信息和降级接口信息;根据上述各个接口调用数据和上述业务配置信息包括的降级阈值信息,确定是否对上述目标业务进行降级处理;响应于确定对上述目标业务进行降级处理,根据上述业务配置信息包括的降级接口信息,对上述目标业务的请求进行业务降级处理。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的一些实施例的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、 或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含至少一个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开的一些实施例中的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括接收单元、第一确定单元、第二确定单元和降级单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,接收单元还可以被描述为“接收对应目标业务的各个接口调用数据的单元”。
本文中以上描述的功能可以至少部分地由至少一个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
本公开的一些实施例还提供一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现上述的任一种业务降级方法。
以上描述仅为本公开的一些较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开的实施例中所涉及的发明范 围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开的实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (17)

  1. 一种业务降级方法,包括:
    接收对应目标业务的各个接口调用数据;
    确定对应所述目标业务的业务配置信息,其中,所述业务配置信息包括降级配置信息,所述降级配置信息包括降级阈值信息和降级接口信息;
    根据所述各个接口调用数据和所述业务配置信息包括的降级阈值信息,确定是否对所述目标业务进行降级处理;
    响应于确定对所述目标业务进行降级处理,根据所述业务配置信息包括的降级接口信息,对所述目标业务的请求进行业务降级处理。
  2. 根据权利要求1所述的方法,其中,所述降级阈值信息包括降级比例阈值;以及
    所述确定是否对所述目标业务进行降级处理,包括:
    根据所述各个接口调用数据和预设失败调用条件,确定失败调用数量;
    响应于确定所述失败调用数量与所述各个接口调用数据的数量的比值大于等于所述降级比例阈值,确定对所述目标业务进行降级处理。
  3. 根据权利要求1所述的方法,其中,所述降级阈值信息包括降级数量阈值和降级比例阈值;以及
    所述确定是否对所述目标业务进行降级处理,包括:
    根据所述各个接口调用数据和预设失败调用条件,确定失败调用数量;
    响应于确定所述失败调用数量大于等于所述降级数量阈值,且所述失败调用数量与所述各个接口调用数据的数量的比值大于等于所述降级比例阈值,确定对所述目标业务进行降级处理。
  4. 根据权利要求1-3之一所述的方法,其中,所述接收对应目标 业务的各个接口调用数据,包括:
    在预设周期时间段内接收对应所述目标业务的各个接口调用数据。
  5. 根据权利要求1-4之一所述的方法,其中,所述业务配置信息还包括重试配置信息;以及
    在所述对所述目标业务的请求进行业务降级处理之后,所述方法还包括:
    确定所述重试配置信息是否表征重试所述目标业务;
    响应于确定所述重试配置信息表征重试所述目标业务,将所述请求添加至失败请求队列;
    根据所述失败请求队列和预设时间间隔,对所述请求对应的接口进行重试处理,得到接口重试结果集合,其中,所述接口重试结果集合中的接口重试结果表征所述接口是否重试成功。
  6. 根据权利要求5所述的方法,其中,所述业务配置信息还包括恢复配置信息,所述恢复配置信息包括恢复阈值信息和恢复接口信息;以及
    所述方法还包括:
    根据所述接口重试结果集合和所述恢复阈值信息,确定是否对所述目标业务进行恢复处理;
    响应于确定对所述目标业务进行恢复处理,根据所述恢复接口信息,对所述目标业务进行业务恢复处理。
  7. 根据权利要求5或6所述的方法,其中,所述业务配置信息还包括恢复配置信息,所述恢复配置信息包括恢复阈值信息和恢复接口信息;以及
    所述方法还包括:
    响应于确定所述重试配置信息表征不重试所述目标业务,根据所述恢复接口信息,对所述目标业务进行业务恢复处理。
  8. 根据权利要求6所述的方法,其中,所述恢复阈值信息包括恢复比例阈值;以及
    所述根据所述接口重试结果集合和所述恢复阈值信息,确定是否对所述目标业务进行恢复处理,包括:
    将所述接口重试结果集合包括的表征接口重试成功的接口重试结果数量确定为重试成功数量;
    响应于确定所述重试成功数量与所述接口重试结果集合包括的各个接口重试结果的数量的比值大于等于所述恢复比例阈值,确定对所述目标业务进行恢复处理。
  9. 根据权利要求6所述的方法,其中,所述恢复阈值信息包括恢复比例阈值和恢复数量阈值;以及
    所述根据所述接口重试结果集合和所述恢复阈值信息,确定是否对所述目标业务进行恢复处理,包括:
    将所述接口重试结果集合包括的表征接口重试成功的接口重试结果数量确定为重试成功数量;
    响应于确定所述重试成功数量大于等于所述恢复数量阈值,且所述重试成功数量与所述接口重试结果集合包括的各个接口重试结果的数量的比值大于等于所述恢复比例阈值,确定对所述目标业务进行恢复处理。
  10. 根据权利要求2-3之一所述的方法,其中,所述降级配置信息还包括扩展业务标识,所述各个接口调用数据中的接口调用数据对应有扩展业务标识;以及
    所述根据所述各个接口调用数据和预设失败调用条件,确定失败调用数量,包括:
    将所述各个接口调用数据中满足所述预设失败调用条件的各个接口调用数据确定为接口调用失败数据,得到接口调用失败数据集合;
    将所述接口调用失败数据集合中满足预设扩展业务标识条件的各 个接口调用失败数据确定为目标接口调用失败数据集合,其中,所述预设扩展业务标识条件为接口调用失败数据对应的扩展业务标识与所述降级配置信息包括的扩展业务标识相同;
    将所述目标接口调用失败数据集合包括的各个目标接口调用失败数据的数量确定为失败调用数量。
  11. 根据权利要求1-9之一所述的方法,其中,所述方法还包括:
    对所述目标业务对应的业务降级事件信息进行发布处理。
  12. 根据权利要求11所述的方法,其中,所述对所述目标业务对应的业务降级事件信息进行发布处理,包括:
    将所述业务降级事件信息发送至告警终端设备。
  13. 根据权利要求11或12所述的方法,其中,所述对所述目标业务对应的业务降级事件信息进行发布处理,包括:
    将所述业务降级事件信息发送至相关联的数据存储端,以供对所述数据存储端存储的各个业务降级事件信息进行可视化展示。
  14. 一种业务降级装置,包括:
    接收单元,被配置成接收对应目标业务的各个接口调用数据;
    第一确定单元,被配置成确定对应所述目标业务的业务配置信息,其中,所述业务配置信息包括降级配置信息,所述降级配置信息包括降级阈值信息和降级接口信息;
    第二确定单元,被配置成根据所述各个接口调用数据和所述业务配置信息包括的降级阈值信息,确定是否对所述目标业务进行降级处理;
    降级单元,被配置成响应于确定对所述目标业务进行降级处理,根据所述业务配置信息包括的降级接口信息,对所述目标业务的请求进行业务降级处理。
  15. 一种电子设备,包括:
    至少一个处理器;
    存储装置,其上存储有至少一个程序,
    当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如权利要求1-13中任一所述的方法。
  16. 一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1-13中任一所述的方法。
  17. 一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-13中任一项所述的方法。
PCT/CN2023/093160 2022-09-26 2023-05-10 业务降级方法、装置、设备、计算机可读介质和程序产品 WO2024066374A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202211175549.5 2022-09-26
CN202211175549.5A CN115766484A (zh) 2022-09-26 2022-09-26 业务降级方法、装置、设备、计算机可读介质和程序产品

Publications (1)

Publication Number Publication Date
WO2024066374A1 true WO2024066374A1 (zh) 2024-04-04

Family

ID=85351997

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/093160 WO2024066374A1 (zh) 2022-09-26 2023-05-10 业务降级方法、装置、设备、计算机可读介质和程序产品

Country Status (2)

Country Link
CN (1) CN115766484A (zh)
WO (1) WO2024066374A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115766484A (zh) * 2022-09-26 2023-03-07 京东科技信息技术有限公司 业务降级方法、装置、设备、计算机可读介质和程序产品

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105677466A (zh) * 2015-12-31 2016-06-15 百度在线网络技术(北京)有限公司 第三方应用接口的降级处理的方法和装置
CN112448987A (zh) * 2019-08-29 2021-03-05 北京京东尚科信息技术有限公司 一种熔断降级的触发方法、系统和存储介质
US10999132B1 (en) * 2017-10-25 2021-05-04 Amazon Technologies, Inc. Detecting degraded network monitoring agents
CN114090037A (zh) * 2021-11-12 2022-02-25 北京字节跳动网络技术有限公司 一种服务降级方法、装置、计算机设备以及存储介质
CN114584480A (zh) * 2022-03-03 2022-06-03 北京沃东天骏信息技术有限公司 用于服务降级处理的方法和装置
CN114913004A (zh) * 2022-06-14 2022-08-16 中国工商银行股份有限公司 服务降级方法、系统、装置、计算机设备和存储介质
CN115766484A (zh) * 2022-09-26 2023-03-07 京东科技信息技术有限公司 业务降级方法、装置、设备、计算机可读介质和程序产品

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105677466A (zh) * 2015-12-31 2016-06-15 百度在线网络技术(北京)有限公司 第三方应用接口的降级处理的方法和装置
US10999132B1 (en) * 2017-10-25 2021-05-04 Amazon Technologies, Inc. Detecting degraded network monitoring agents
CN112448987A (zh) * 2019-08-29 2021-03-05 北京京东尚科信息技术有限公司 一种熔断降级的触发方法、系统和存储介质
CN114090037A (zh) * 2021-11-12 2022-02-25 北京字节跳动网络技术有限公司 一种服务降级方法、装置、计算机设备以及存储介质
CN114584480A (zh) * 2022-03-03 2022-06-03 北京沃东天骏信息技术有限公司 用于服务降级处理的方法和装置
CN114913004A (zh) * 2022-06-14 2022-08-16 中国工商银行股份有限公司 服务降级方法、系统、装置、计算机设备和存储介质
CN115766484A (zh) * 2022-09-26 2023-03-07 京东科技信息技术有限公司 业务降级方法、装置、设备、计算机可读介质和程序产品

Also Published As

Publication number Publication date
CN115766484A (zh) 2023-03-07

Similar Documents

Publication Publication Date Title
CN111277639B (zh) 一种保持数据一致性的方法和装置
WO2024066374A1 (zh) 业务降级方法、装置、设备、计算机可读介质和程序产品
CN111158637A (zh) 基于区块链的随机数生成方法、设备及存储介质
CN115599640A (zh) 异常供应端告警方法、电子设备和介质
CN110071952B (zh) 服务调用量的控制方法和装置
CN107818027B (zh) 名字节点主备切换的方法、装置和分布式系统
CN113760503A (zh) 任务迁移方法、装置、电子设备和计算机可读介质
CN111161072A (zh) 基于区块链的随机数生成方法、设备及存储介质
CN113553206B (zh) 数据事件执行方法、装置、电子设备和计算机可读介质
CN112751689A (zh) 一种网络连通性检测方法、监控服务端和监控代理装置
CN113760487B (zh) 一种业务处理方法和装置
CN112507676B (zh) 能源报表生成方法、装置、电子设备和计算机可读介质
CN114049065A (zh) 一种数据处理方法、装置及系统
US10097613B2 (en) Systems and methods for enhancing performance of resource state polling
CN112148417A (zh) 页面调整方法、装置、电子设备和计算机可读介质
CN110019671B (zh) 一种处理实时消息的方法和系统
CN110262756B (zh) 用于缓存数据的方法和装置
CN113472565B (zh) 服务器功能的扩容方法、装置、设备和计算机可读介质
CN111698132B (zh) 用于控制集群中心跳事件的方法、装置、设备和介质
CN113766437B (zh) 一种短信发送方法和装置
CN113419992B (zh) 文件清除配置页面展示方法、装置、电子设备和介质
CN113962782A (zh) 订单信息处理方法、装置、电子设备和计算机可读介质
CN115269645A (zh) 信息查询方法、装置、电子设备和计算机可读介质
CN117520399A (zh) 数据存储方法、装置、电子设备和计算机可读介质
CN114398437A (zh) 用户信息处理方法、装置、电子设备和计算机可读介质