Data processing method and device, electronic equipment, storage medium and product

By performing fuse processing at the address level of the service instance in the service fuse technology, the performance reduction caused by service-level fuse in the existing technology is solved, and more refined exception handling and system performance improvement are achieved.

CN119902934APending Publication Date: 2025-04-29MASHANG CONSUMER FINANCE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411942073.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-26
Publication Date
2025-04-29

AI Technical Summary

Technical Problem

The existing service circuit breaker technology can only realize service-level circuit breaker processing, and the processing granularity is large, resulting in the overall call of the service when a service is abnormal, resulting in unavailability of all instances and degrading system performance.

Method used

By obtaining the address of the service instance accessed by the call request, determining the fuse corresponding to the address, obtaining the fuse conditions of the address based on the fuse, and performing fuse processing when the address meets the fuse conditions, realizing fuse at the address level.

Benefits of technology

It realizes timely discovery and processing of the address of the abnormal service instance, and the granularity is more refined. It only needs to fuse the abnormal address without affecting the service instance corresponding to other normal addresses, which improves the system's business stability and continuity and improves overall performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119902934A_ABST
    Figure CN119902934A_ABST
Patent Text Reader

Abstract

The invention provides a data processing method and device, electronic equipment, a storage medium and a product, and the data processing method comprises the steps: obtaining an address of a service instance accessed by a call request, the service instance corresponding to at least one address, and each address corresponding to a fuse; determining a fuse corresponding to the address; based on the fuse, obtaining a fusing condition of the address; and under the condition that the address meets the fusing condition, performing fusing processing on the address, so that the address can be obtained and fusing of the address level can be realized, the processing granularity is more refined, and the service performance is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, and in particular to a data processing method, device, electronic device, storage medium and product. Background Art

[0002] Service circuit breaker is a mechanism used to handle service failures in distributed systems. It can avoid the collapse of the entire system due to failures or delays of individual services. In related technologies, it mainly performs anomaly detection and circuit breaker calculations on services, and can only implement service-level circuit breaker processing with a large processing granularity. If a service is abnormal and triggers a circuit breaker, the entire service will be stopped from being called, causing all instances under the service to be unavailable. Summary of the invention

[0003] The present disclosure provides a data processing method, device, electronic device, storage medium and product.

[0004] In a first aspect, the present disclosure provides a data processing method, the data processing method comprising:

[0005] Obtaining the address of the service instance accessed by the call request, wherein the service instance corresponds to at least one address, and each address corresponds to a fuse;

[0006] Determine a fuse corresponding to the address;

[0007] Based on the fuse, obtaining a fuse condition of the address;

[0008] When the address satisfies the fuse condition, a fuse process is performed on the address.

[0009] In a second aspect, the present disclosure provides a data processing device, the data processing device comprising:

[0010] An acquisition module, used to acquire the address of the service instance accessed by the call request, wherein the service instance corresponds to at least one address, and each address corresponds to a fuse;

[0011] A first determining module, used to determine a fuse corresponding to the address;

[0012] A second determining module, configured to obtain a fuse condition of the address based on the fuse;

[0013] A processing module is used to perform a fuse processing on the address when the address meets the fuse condition. In a third aspect, the present disclosure provides an electronic device, which includes: at least one processor; and a memory connected to the at least one processor; wherein the memory stores one or more computer programs that can be executed by the at least one processor, and one or more of the computer programs are executed by the at least one processor to enable the at least one processor to perform the above-mentioned data processing method.

[0014] In a fourth aspect, the present disclosure provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program implements the above-mentioned data processing method when executed by a processor.

[0015] In a fifth aspect, the present disclosure provides a computer program product, including a computer-readable code, or a non-volatile computer-readable storage medium carrying the computer-readable code. When the computer-readable code runs in a processor of an electronic device, the processor in the electronic device executes the above-mentioned data processing method.

[0016] The data processing method provided by the embodiment of the present disclosure can obtain the address of the service instance accessed by the call request, and then determine the fuse corresponding to the address. Based on the fuse, the fuse condition of the address is obtained. When the address meets the fuse condition, the fuse operation is performed on the address. By obtaining the address corresponding to the call request, the address-level fuse is implemented, and the abnormal address can be discovered in time. The processing granularity is more refined. Only the abnormal address needs to be fused without affecting the service instances corresponding to other normal addresses, which also improves the service performance.

[0017] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] The accompanying drawings are used to provide a further understanding of the present disclosure and constitute a part of the specification. Together with the embodiments of the present disclosure, they are used to explain the present disclosure and do not constitute a limitation of the present disclosure. The above and other features and advantages will become more apparent to those skilled in the art by describing detailed example embodiments with reference to the accompanying drawings, in which:

[0019] Figure 1 An application scenario diagram of the data processing method and device provided in the embodiments of the present disclosure;

[0020] Figure 2 A flowchart of a data processing method provided by an embodiment of the present disclosure;

[0021] Figure 3 A schematic diagram of a logical architecture of data processing in an embodiment of the present disclosure;

[0022] Figure 4 This is a flow chart of a data processing method in an embodiment of the present disclosure;

[0023] Figure 5 A schematic diagram of a scenario embodiment of data processing in an embodiment of the present disclosure;

[0024] Figure 6 A block diagram of a data processing device provided in an embodiment of the present disclosure;

[0025] Figure 7 A block diagram of an electronic device provided in an embodiment of the present disclosure. DETAILED DESCRIPTION

[0026] In order to enable those skilled in the art to better understand the technical solutions of the present disclosure, the exemplary embodiments of the present disclosure are described below in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding, which should be considered as merely exemplary. Therefore, those of ordinary skill in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, for the sake of clarity and conciseness, the description of well-known functions and structures is omitted in the following description.

[0027] In the absence of conflict, the various embodiments of the present disclosure and the various features therein may be combined with each other.

[0028] As used herein, the term "and / or" includes any and all combinations of one or more of the associated listed items.

[0029] The terms used herein are only used to describe specific embodiments and are not intended to limit the present disclosure. As used herein, the singular forms "a" and "the" are also intended to include plural forms, unless the context clearly indicates otherwise. It will also be understood that when the terms "including" and / or "made of" are used in this specification, the presence of the features, wholes, steps, operations, elements and / or components is specified, but the presence or addition of one or more other features, wholes, steps, operations, elements, components and / or groups thereof is not excluded. "Connected" or "connected" and similar words are not limited to physical or mechanical connections, but can include electrical connections, whether direct or indirect.

[0030] Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by those of ordinary skill in the art. It will also be understood that terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant art and the present disclosure, and will not be interpreted as having an idealized or overly formal meaning unless explicitly defined as such herein.

[0031] In the technical solution disclosed in this disclosure, the collection, storage, use, processing, transmission, provision and disclosure of user personal information involved are in compliance with the provisions of relevant laws and regulations and do not violate public order and good morals. The use of user data in this technical solution complies with relevant national laws and regulations (for example, the "Information Security Technology Personal Information Security Specification", etc.). For example: corresponding prescribed measures are taken for personal information access control; prescribed restrictions are imposed on the display of personal information; the purpose of using personal information does not exceed the scope of direct or reasonable association; when using personal information, clear identity orientation is eliminated to avoid precise positioning of specific individuals.

[0032] To facilitate understanding of the embodiments of the present disclosure, several concepts are briefly introduced below:

[0033] Service circuit breaker: It is a mechanism used to handle service call failures in distributed systems. Its main function is to block further calls to downstream services in upstream services to prevent the entire system from crashing due to failures or delays in a certain service. The basic principle of service circuit breaker is to set a circuit breaker during the service call process. The circuit breaker detects the service call status. When the error rate or failure number of the service exceeds the set threshold, the circuit breaker will be triggered, causing subsequent call requests to fail quickly instead of continuing to wait for responses that may cause high latency or service failure. After the circuit breaker is triggered, the system can choose to return a preset default value or execute degradation logic to ensure the basic performance of the system.

[0034] Service and service instance: A service can represent a certain function or application, and a service instance can be understood as the instantiation result of a service. A service usually corresponds to multiple service instances, which may be distributed on the same or different servers. Each service can correspond to one or more interfaces, and each service instance can also correspond to one or more interfaces. Each interface corresponds to an Internet Protocol Address (IP). For example, a transfer service in a payment application can have multiple transfer instances corresponding to specific accounts.

[0035] Interceptor: An interceptor represents a component in a web application that allows custom logic to be executed between requests and responses. By intercepting requests and responses and performing some operations before the request is sent, various functions can be implemented in the application, such as logging, permission checking, performance monitoring, etc. Specifically: 1) Logging: Through the interceptor, you can record which resources are requested and detailed information about the request, such as the request time, the uniform resource locator (URL) of the request, etc. This is very helpful for later problem tracking and performance optimization; 2) Permission checking: Before processing the request, the interceptor performs a permission check to ensure that the user has permission to access the requested resource, which can help prevent unauthorized access and potential security vulnerabilities. 3) Performance monitoring: Through the interceptor, timestamps can be recorded before and after the request is processed in order to calculate the processing time of the request, which can help discover and optimize the performance of the application. 4) Circuit breaker processing: During the request processing process, if an exception occurs, the interceptor can capture the exception and execute the corresponding processing logic, such as recording error information, returning alternative error prompts, etc. 5) Unified processing logic: Through the interceptor, the processing logic required for multiple requests can be managed in a unified manner, avoiding the need to repeatedly write the same logic in the code for each request processing.

[0036] The service circuit breaking method in the related technology mainly performs anomaly detection and circuit breaking processing on the service. The circuit breaking rules corresponding to the service are pre-set, and only service-level anomaly detection and circuit breaking processing can be achieved. The processing granularity is large. If a service triggers a circuit breaker, the call to the service as a whole will be stopped, resulting in all instances under the service being unavailable, thereby reducing performance.

[0037] The data processing method provided in the embodiment of the present disclosure obtains the address of the service instance accessed by the call request and determines the fuse corresponding to the address. In this way, the address corresponding to the call request can be obtained, and each address corresponds to an independent fuse, which realizes the fuse at the address level. It is able to perform fuse processing on the address, promptly discover abnormal service instances and their addresses, and perform fuse processing on the addresses of the service instances. The processing granularity is more refined, and only the abnormal addresses need to be fused without affecting other normal service instances, thereby improving business stability and continuity and enhancing overall performance.

[0038] Figure 1 The application scenario diagram of the data processing method and device provided by the embodiments of the present disclosure is schematically shown.

[0039] like Figure 1As shown, the application scenario of the embodiment of the present disclosure may include a terminal device 101, a network 103 and a server 102. The network 103 is used to provide a medium for a communication link between the terminal device 101 and the server 102. The network 103 may include various connection types, such as wired, wireless communication links or optical fiber cables, etc.

[0040] The user can use the terminal device 101 to interact with the server 102 through the network 103 to receive or send messages, etc. Various communication client applications can be installed on the terminal device 101, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social platform software, etc. (only as examples).

[0041] The terminal device 101 may be any electronic device having a display screen and supporting web browsing, including but not limited to a smart phone, a tablet computer, a laptop computer, a desktop computer, and the like.

[0042] The server 102 may be a server that provides various services, such as a background management server (only as an example) that provides support for websites browsed by users using the terminal device 101. The background management server may analyze and process the received data such as the user's call request, and feed back the processing result (such as the web page, information, or data obtained or generated according to the call request) to the terminal device.

[0043] It should be noted that the data processing method and apparatus provided in the embodiments of the present disclosure may be executed by the server 102. Accordingly, the data processing method and apparatus provided in the embodiments of the present disclosure may be arranged in the server 102. The data processing method and apparatus provided in the embodiments of the present disclosure may also be executed by a server or server cluster that is different from the server 102 and that can communicate with the terminal device 101 and / or the server 102. Accordingly, the data processing method and apparatus provided in the embodiments of the present disclosure may also be arranged in a server or server cluster that is different from the server 102 and that can communicate with the terminal device 101 and / or the server 102.

[0044] It should be understood that Figure 1 The number of terminal devices, networks and servers in the embodiment is only for illustration. Any number of terminal devices, networks and servers may be provided according to the implementation requirements.

[0045] Figure 2 A flowchart of a data processing method provided by an embodiment of the present disclosure. Figure 2 , the method comprising:

[0046] S201: Obtain the address of the service instance accessed by the call request, wherein the service instance corresponds to at least one address, and each address corresponds to a fuse.

[0047] The address may indicate the IP address of the server or interface where the service instance accessed by the call request is located. In addition, the call request may also include resources, which may indicate the content requested in the call request. For example, when a user initiates a remote call request for a transfer to a server through a client, the resources corresponding to the call request include an account identifier, a request path, etc.

[0048] S202: Determine the fuse corresponding to the address.

[0049] In the disclosed embodiment, after the address is intercepted, the fuse logic is entered, and each address corresponds to an independent fuse, so that the fuse for the address can be realized.

[0050] For step S202, the present disclosure provides a specific implementation method, including:

[0051] 1) If the fuse corresponding to the address is not found, create a fuse condition object corresponding to the address, which includes a fuse condition and an address field.

[0052] 2) Assign the address to the address field to obtain the assigned fuse condition object.

[0053] 3) Assign the fuse condition and address in the assigned fuse condition object to the fuse condition field in the fuse to obtain the fuse corresponding to the address.

[0054] In the disclosed embodiments, a fuse can be generated according to a fuse condition and an address. For example, a custom fuse condition subclass can be created based on an existing fuse tool, and an address attribute can be added to the subclass. Then, when creating a fuse, a new fuse condition object can be constructed according to the custom fuse condition subclass, and the address corresponding to the call request can be assigned to the address field in the fuse condition object. According to the assigned fuse condition object, the fuse corresponding to the address can be obtained. In this way, each address can correspond to an independent fuse.

[0055] Furthermore, in the disclosed embodiments, the created fuse and address can be stored correspondingly, so that if a call request for the address is received subsequently, the corresponding fuse can be directly queried and obtained without having to create it again, thereby improving efficiency. In addition, in order to further improve storage performance and reduce memory resource usage, the storage duration can also be set to regularly delete timed or infrequently used fuses.

[0056] S203: Based on the fuse, obtain the fuse condition of the address.

[0057] Among them, the fuse conditions may include: the number of call exceptions that occur at the address within a statistical time period is greater than or equal to a preset threshold. For example, in the embodiment of the present disclosure, the fuse object is the address, and the statistical time period can be achieved by setting a sliding time window. In the embodiment of the present disclosure, different fuse conditions can be set accordingly for different call requests.

[0058] Among them, a call exception in a call request may be characterized as a response time corresponding to the call request exceeding a certain time threshold, or an address corresponding to the call request being unavailable, or other situations in which an error occurs in the call request.

[0059] S204: When the address meets the fuse condition, perform fuse processing on the address.

[0060] For example, after performing fuse processing on an address, subsequent call requests for the address can be intercepted.

[0061] Furthermore, in the embodiment of the present disclosure, the server with the address where the fuse occurs can also be deactivated, and a service instance can be created based on other normally used servers to distribute the call requests for the service instance to the normally used servers for processing, so as to improve business stability and enhance user experience.

[0062] In an embodiment of the present disclosure, after performing fuse processing on the address, exception prompt information of the first exception type can also be generated, and the exception prompt information includes the address and exception call information of the address; the exception prompt information is sent or displayed, and the exception prompt information is used to provide prompt information when processing a call request to access the address.

[0063] In the embodiments of the present disclosure, it is taken into account that the types of exceptions supported for throwing in different usage scenarios may be different. For example, in a certain usage scenario, only input and output exceptions (IOException) are supported. However, in the embodiments of the present disclosure, it is necessary to be able to throw a degraded exception (DegradeException) and an address in order to perform a fallback operation of the fuse. The Fallback operation means returning processable or alternative preset response information. Therefore, in order to improve efficiency and reduce changes to tools in existing usage scenarios while meeting the needs of performing Fallback operations, in the embodiments of the present disclosure, a packaging tool can be designed to encapsulate the DegradeException and the address into the IOException type, and throw the encapsulated exception prompt information. After throwing, the actual DegradeException and address can be obtained by parsing the encapsulated exception prompt information, and the Fallback operation can be performed on the address.

[0064] In this way, in the embodiment of the present disclosure, after the fuse processing is performed on the address, the required exception prompt information of the first exception type can be generated according to the needs. After the exception prompt information is thrown, it can also be distributed to relevant personnel, so that the relevant personnel can perform exception investigation and processing on the address according to the exception call information and address in the exception prompt information.

[0065] In the disclosed embodiments, by intercepting the address of the service instance accessed by the call request and then executing the fuse logic, address-level fuse detection and operation are implemented, the fuse condition of the address is obtained based on the fuse corresponding to the address, and when the address meets the fuse condition, the address is processed by the fuse. Abnormal addresses can be quickly discovered, and rapid fuse processing of the address is achieved. The granularity of the fuse processing is more refined, thereby improving the overall stability and continuity of the service.

[0066] The above step S201 in the embodiment of the present disclosure is described below.

[0067] In the embodiment of the present disclosure, in order to obtain the address of the service instance accessed by the call request, several possible implementation methods are also provided, specifically:

[0068] In a possible embodiment, obtaining the address of the service instance accessed by the call request includes:

[0069] 1) Based on the first interceptor, the call request is processed and a service request is sent to the service instance, where the service request includes an address.

[0070] 2) Based on the second interceptor, intercept the service request sent by the first interceptor, and obtain the address from the service request, wherein the first interceptor and the second interceptor are in the first interceptor set, and the second interceptor is executed after the first interceptor, and the second interceptor is used to intercept the address obtained by the first interceptor and to interact with the fuse for data;

[0071] The first interceptor set is obtained by replacing the second interceptor set, and the second interceptor set includes the first interceptor.

[0072] For example, for RestTemplate, RestTemplate is a client tool provided by Spring for sending Hypertext Transfer Protocol (HTTP) call requests. The Load Balancer Interceptor in the interceptor set provided by RestTemplate is used to select the IP address actually accessed, that is, the first interceptor in the embodiment of the present disclosure is, for example, the Load Balancer Interceptor. In order to minimize the code modification of the tool, a new second interceptor is customized in the embodiment of the present disclosure to intercept the IP address from the LoadBalancer Interceptor. However, the relevant technology Spring stipulates that Load BalancerInterceptor is placed at the end of the interceptor set by default, that is, in the related technology, the first interceptor is executed at the end of the second interceptor set by default, but the first interceptor cannot transmit the address to the fuse. Therefore, in order to intercept the IP address, an improvement is made in the embodiment of the present disclosure. By rewriting the interceptor sorting method, the customized second interceptor is placed after the first interceptor for execution, thereby constructing a new first interceptor set, and replacing the original second interceptor set with the first interceptor set. In this way, the service request sent by the first interceptor can be intercepted by the second interceptor, and the address can be obtained from the service request, and then the address can be transmitted to the fuse through the second interceptor for fuse judgment and processing.

[0073] In this way, in the embodiment of the present disclosure, a customized second interceptor is forced to be executed after the first interceptor that can use the address. The address in the service request sent by the first interceptor can be intercepted, and then the address can be passed into the trigger entry of the fuse to implement fuse processing for the address.

[0074] In a possible embodiment, obtaining the address of the service instance accessed by the call request includes:

[0075] Based on the third interceptor, the call request is intercepted, the call parameters corresponding to the call request are parsed, and the address corresponding to the call request is obtained; wherein the third interceptor is used to intercept the call request and obtain the address, and is used to interact with the fuse for data.

[0076] For example, for the scenario of using Feign tool for remote call, Feign tool is a client load balancer, which is mainly used to distribute the call request to the corresponding target server according to a certain rule when a call request occurs. The basic process of Feign remote call is to convert the remote call interface defined in JAVA annotation into HTTP call request form through a series of encapsulation and processing, and then decode the response result of HTTP call request into JAVA Bean form and return it to the requester. There are many ways to obtain addresses in Feign tool, so it is difficult to determine which interceptor can use the address. For this situation, in the embodiment of the present disclosure, the client Client.Default class in Feign can be forcibly hijacked through the predefined third interceptor, wherein the Client.Default class is an implementation class of a client interface, which is mainly used to complete the uniform resource locator (URL) call request processing, so as to intercept the call request based on the third interceptor, parse the call parameters corresponding to the call request, obtain the address corresponding to the call request, and then pass the obtained address into the trigger entry of the fuse through the third interceptor.

[0077] In this way, in the embodiment of the present disclosure, it is also possible to forcibly hijack the call request, parse the call parameters corresponding to the call request, obtain the address, and then implement fuse processing for the address.

[0078] The data processing method in the embodiment of the present disclosure is described below using a specific application scenario.

[0079] See also Figure 3 As shown, it is a schematic diagram of the logical architecture of data processing in the embodiment of the present disclosure. Figure 3 As shown, in the embodiment of the present disclosure, a fuse for implementing address fusing can be customized. Taking the Sentinel fusing tool as an example, the customized fuse in the embodiment of the present disclosure (here called ParamDegradeSlot) can be integrated into the fusing processing chain of Sentinel. Sentinel mainly takes traffic as the entry point to ensure the stability of the service from multiple dimensions such as traffic control, fusing degradation, and system load protection.

[0080] In Sentinel, all resources correspond to a resource name. Each resource call will create an entry object. When the Entry object is created, a series of function slots (slot chain) will also be created. These slots have different functions, such as Figure 3As shown, it includes a statistics slot (StatisticSlot), a parameter flow slot (ParamFlowSlot), a flow slot (FlowSlot), a degradation slot (DegradeSlot) and a parameter degradation slot (ParamDegradeSlot), wherein StatisticSlot is used to record and count the runtime indicator detection information of different dimensions, ParamFlowSlot is mainly used for hotspot parameter current limiting, FlowSlot is mainly used to perform flow control according to preset current limiting rules and the status of previous slot statistics, DegradeSlot is mainly used to perform fuse degradation through statistical information and preset fuse conditions, ParamDegradeSlot is the fuse of the address in the embodiment of the present disclosure, which is mainly used to perform circuit breaking calculation and fuse processing on the address, and each address corresponds to an independent fuse.

[0081] The specific implementation process of ParamDegradeSlot in the embodiment of the present disclosure is described. ParamDegradeSlot may also include a parameter degradation rule manager (ParamDegradeRuleManager) and a circuit breaker (CircuitBreaker), wherein the parameter degradation rule manager is mainly used to manage the fuse conditions, and the circuit breaker is the core computing component in ParamDegradeSlot, which is mainly used to execute the calculation and judgment logic of the fuse, see Figure 4 As shown, it is a flow chart of a data processing method in an embodiment of the present disclosure. Figure 4 As shown, specifically including:

[0082] S401: receiving a call request.

[0083] S402: Obtain the address of the service instance accessed by the call request, and pass the address into the trigger entry of the fuse.

[0084] For example, using Sentinel, you can pass the address into the Sentinel entry, and you can also get the resource in the call request to pass into the Sentinel entry.

[0085] In the disclosed embodiment, after the address is intercepted, the fuse logic is entered, so that the address can be carried into the fuse logic to achieve address-level fuse.

[0086] S403: Based on the fuse corresponding to the address, determine whether the fuse condition is met.

[0087] Specifically, Figure 4 As shown, step S403 may include:

[0088] S4031: According to the address, query the fuse corresponding to the address.

[0089] S4032: Determine whether the query is found, if so, execute step S4035, if not, execute step S4033.

[0090] S4033: Create and store.

[0091] Specifically, a fuse for the address may be generated according to the address and the fuse condition.

[0092] S4034: Create a sliding time window of the circuit breaker condition according to the circuit breaker condition.

[0093] In the embodiment of the present disclosure, whether the fuse is turned on or off needs to be judged based on the call requests within a certain statistical time period. To facilitate statistical analysis, a sliding time window can be created to count the number of call requests, the number of call exceptions, and other information within the sliding time window.

[0094] S4035: Call the fuse corresponding to the address.

[0095] In the embodiment of the present disclosure, after querying the fuse corresponding to the address, the parameter degradation rule manager can send a fuse execution instruction to the circuit breaker in the corresponding fuse to trigger the circuit breaker to perform a fuse check on the address.

[0096] S4036: Determine whether the fuse condition is met based on the fuse execution.

[0097] S4037: Determine whether the fuse condition is met. If so, execute step S4038. If not, it means that the fuse condition is not met, the fuse processing is not triggered, and the call request can be responded to normally.

[0098] S4038: Throws an exception prompt message.

[0099] S4039: Perform fuse processing on the address.

[0100] Based on the above embodiments, refer to Figure 5 As shown, it is a schematic diagram of a scenario implementation example of data processing in an embodiment of the present disclosure, such as Figure 5 As shown, based on the data processing method in the embodiment of the present disclosure, fuse calculation and processing can be performed on the address of the service instance. For example, in a certain business scenario, a call request is received. Based on the predefined second interceptor or third interceptor in the embodiment of the present disclosure, the address of the service instance accessed by the call request can be intercepted, and logging and output can also be performed.

[0101] Statistics are collected on whether the address of the service instance is abnormal. The address where the call exception occurs can be reported to the fuse. The fuse can collect relevant data and store it in the database. The fuse determines whether the address meets the fuse condition based on the number of call exceptions that occur within the statistical time period. If the address meets the fuse condition, the fuse is processed. The address processed by the fuse can also be reported to the business system so that the business system can perform subsequent related processing on the fuse address, such as troubleshooting the address.

[0102] In the disclosed embodiment, the address of the service instance accessed by the call request can be intercepted, and fuse processing can be performed on the address to implement address-level fuse processing with more refined processing granularity. It is only necessary to deactivate the address of the abnormal service instance without deactivating other normal service instances under the service, thereby improving business stability and continuity.

[0103] It can be understood that the above-mentioned various method embodiments mentioned in the present disclosure can be combined with each other to form a combined embodiment without violating the principle logic. Due to space limitations, the present disclosure will not repeat them. It can be understood by those skilled in the art that in the above-mentioned method of the specific implementation method, the specific execution order of each step should be determined according to its function and possible internal logic.

[0104] In addition, the present disclosure also provides a data processing device, an electronic device, and a computer-readable storage medium, all of which can be used to implement any data processing method provided by the present disclosure. The corresponding technical solutions and descriptions are referred to the corresponding records in the method part and will not be repeated here.

[0105] Figure 6 A block diagram of a data processing device provided in an embodiment of the present disclosure.

[0106] Reference Figure 6 , an embodiment of the present disclosure provides a data processing device, the data processing device comprising:

[0107] An acquisition module 61 is used to acquire the address of the service instance accessed by the call request, wherein the service instance corresponds to at least one address, and each address corresponds to a fuse;

[0108] A first determining module 62, configured to determine a fuse corresponding to the address;

[0109] A second determining module 63, configured to obtain a fuse condition of the address based on the fuse;

[0110] The processing module 64 is used to perform a fuse process on the address when the address meets the fuse condition.

[0111] In a possible embodiment, when acquiring the address of the service instance accessed by the call request, the acquisition module 61 is used to:

[0112] Processing the call request based on the first interceptor, sending a service request to the service instance, wherein the service request includes the address;

[0113] Based on the second interceptor, intercept the service request sent by the first interceptor, and obtain the address from the service request, wherein the first interceptor and the second interceptor are in the first interceptor set, and the second interceptor is executed after the first interceptor, and the second interceptor is used to intercept the address obtained by the first interceptor, and is used to interact with the fuse for data;

[0114] The first interceptor set is obtained by replacing the second interceptor set, and the second interceptor set includes the first interceptor.

[0115] In a possible embodiment, when acquiring the address of the service instance accessed by the call request, the acquisition module 61 is used to:

[0116] Based on the third interceptor, intercept the call request, parse the call parameters corresponding to the call request, and obtain the address corresponding to the call request;

[0117] Among them, the third interceptor is used to intercept the call request and obtain the address, and is used to interact with the fuse for data.

[0118] In a possible embodiment, when determining the fuse corresponding to the address, the first determining module 62 is used to:

[0119] If no fuse corresponding to the address is found, create a fuse condition object corresponding to the address, wherein the fuse condition object includes a fuse condition and an address field;

[0120] Assign the address to the address field to obtain a fuse condition object after the assignment;

[0121] The fuse condition and address in the assigned fuse condition object are assigned to the fuse condition field in the fuse to obtain the fuse corresponding to the address.

[0122] In a possible embodiment, the fuse condition includes: the number of times that an address has call exceptions within a statistical time period is greater than or equal to a preset threshold.

[0123] In a possible embodiment, after performing the fuse processing on the address, the processing module 64 is further configured to:

[0124] Generate exception prompt information of a first exception type, wherein the exception prompt information includes the address and exception call information of the address;

[0125] The abnormal prompt information is sent or displayed, where the abnormal prompt information is used to provide prompt information when processing a call request to access the address.

[0126] Each module in the above data processing device can be implemented in whole or in part by software, hardware or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute operations corresponding to each module.

[0127] Figure 7 A block diagram of an electronic device provided in an embodiment of the present disclosure.

[0128] Reference Figure 7 An embodiment of the present disclosure provides an electronic device, which includes: at least one processor 701; at least one memory 702, and one or more I / O interfaces 703, connected between the processor 701 and the memory 702; wherein the memory 702 stores one or more computer programs that can be executed by the at least one processor 701, and the one or more computer programs are executed by the at least one processor 701 so that the at least one processor 701 can execute the above-mentioned data processing method.

[0129] Each module in the above electronic device can be implemented in whole or in part by software, hardware, or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute operations corresponding to each module.

[0130] The present disclosure also provides a computer-readable storage medium on which a computer program is stored, wherein the computer program implements the above-mentioned data processing method when executed by a processor. The computer-readable storage medium may be a volatile or non-volatile computer-readable storage medium.

[0131] The embodiments of the present disclosure also provide a computer program product, including a computer-readable code, or a non-volatile computer-readable storage medium carrying the computer-readable code. When the computer-readable code runs in a processor of an electronic device, the processor in the electronic device executes the above-mentioned data processing method.

[0132] It will be appreciated by those skilled in the art that all or some of the steps, systems, and functional modules / units in the methods disclosed above may be implemented as software, firmware, hardware, and appropriate combinations thereof. In a hardware implementation, the division between the functional modules / units mentioned in the above description does not necessarily correspond to the division of physical components; for example, a physical component may have multiple functions, or a function or step may be performed by several physical components in cooperation. Some or all physical components may be implemented as software executed by a processor, such as a central processing unit, a digital signal processor, or a microprocessor, or may be implemented as hardware, or may be implemented as an integrated circuit, such as an application-specific integrated circuit. Such software may be distributed on a computer-readable storage medium, which may include a computer storage medium (or a non-transitory medium) and a communication medium (or a temporary medium).

[0133] As is known to those of ordinary skill in the art, the term computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable program instructions, data structures, program modules or other data). Computer storage media include, but are not limited to, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), static random access memory (SRAM), flash memory or other memory technology, portable compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical disk storage, magnetic cassettes, magnetic tapes, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and can be accessed by a computer. In addition, it is known to those of ordinary skill in the art that communication media typically contain computer-readable program instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transmission mechanism, and may include any information delivery medium.

[0134] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to each computing / processing device, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in the computer-readable storage medium in each computing / processing device.

[0135] The computer program instructions for performing the operation of the present disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages, such as Smalltalk, C++, etc., and conventional procedural programming languages, such as "C" language or similar programming languages. Computer-readable program instructions may be executed completely on a user's computer, partially on a user's computer, as an independent software package, partially on a user's computer, partially on a remote computer, or completely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., using an Internet service provider to connect via the Internet). In some embodiments, an electronic circuit, such as a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), may be customized by utilizing the state information of the computer-readable program instructions, and the electronic circuit may execute the computer-readable program instructions, thereby realizing various aspects of the present disclosure.

[0136] The computer program product described herein may be implemented in hardware, software, or a combination thereof. In one optional embodiment, the computer program product is embodied as a computer storage medium, and in another optional embodiment, the computer program product is embodied as a software product, such as a software development kit (SDK), etc.

[0137] Various aspects of the present disclosure are described herein with reference to the flowcharts and / or block diagrams of the methods, devices (systems) and computer program products according to the embodiments of the present disclosure. It should be understood that each box in the flowchart and / or block diagram and the combination of each box in the flowchart and / or block diagram can be implemented by computer-readable program instructions.

[0138] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, so that when these instructions are executed by the processor of the computer or other programmable data processing device, a device that implements the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0139] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operating steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0140] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to multiple embodiments of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a part of a module, program segment or instruction, and a part of the module, program segment or instruction includes one or more executable instructions for realizing the specified logical function. In some alternative implementations, the function marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous square boxes can actually be executed substantially in parallel, and they can sometimes be executed in reverse order, depending on the functions involved. It should also be noted that 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 the specified function or action, or can be implemented with a combination of special hardware and computer instructions.

[0141] Example embodiments have been disclosed herein, and although specific terms are employed, they are used and should be interpreted only in a general illustrative sense and not for limiting purposes. In some instances, it will be apparent to those skilled in the art that, unless otherwise expressly noted, features, characteristics, and / or elements described in conjunction with a particular embodiment may be used alone or in combination with features, characteristics, and / or elements described in conjunction with other embodiments. Therefore, those skilled in the art will appreciate that various changes in form and detail may be made without departing from the scope of the present disclosure as set forth in the appended claims.

Claims

1. A data processing method, characterized in that: include: Obtaining the address of the service instance accessed by the call request, wherein the service instance corresponds to at least one address, and each address corresponds to a fuse; Determine a fuse corresponding to the address; Based on the fuse, obtaining a fuse condition of the address; When the address satisfies the fuse condition, a fuse process is performed on the address.

2. The data processing method according to claim 1, characterized in that: The obtaining the address of the service instance accessed by the call request includes: Processing the call request based on the first interceptor, sending a service request to the service instance, wherein the service request includes the address; Based on the second interceptor, intercept the service request sent by the first interceptor, and obtain the address from the service request, wherein the first interceptor and the second interceptor are in the first interceptor set, and the second interceptor is executed after the first interceptor, and the second interceptor is used to intercept the address obtained by the first interceptor, and is used to interact with the fuse for data; The first interceptor set is obtained by replacing the second interceptor set, and the second interceptor set includes the first interceptor.

3. The data processing method according to claim 1, characterized in that: The obtaining the address of the service instance accessed by the call request includes: Based on the third interceptor, intercept the call request, parse the call parameters corresponding to the call request, and obtain the address corresponding to the call request; Among them, the third interceptor is used to intercept the call request and obtain the address, and is used to interact with the fuse for data.

4. The data processing method according to any one of claims 1 to 3, characterized in that: The determining the fuse corresponding to the address includes: If no fuse corresponding to the address is found, create a fuse condition object corresponding to the address, wherein the fuse condition object includes a fuse condition and an address field; Assign the address to the address field to obtain a fuse condition object after the assignment; The fuse condition and address in the assigned fuse condition object are assigned to the fuse condition field in the fuse to obtain the fuse corresponding to the address.

5. The data processing method according to claim 1, characterized in that: The fuse condition includes: the number of times that the address has call exceptions within a statistical time period is greater than or equal to a preset threshold.

6. The data processing method according to any one of claims 1 to 3, characterized in that: After performing fuse processing on the address, the method further includes: Generate exception prompt information of a first exception type, wherein the exception prompt information includes the address and exception call information of the address; The abnormal prompt information is sent or displayed, where the abnormal prompt information is used to provide prompt information when processing a call request to access the address.

7. A data processing device, characterized in that: include: An acquisition module, used to acquire the address of the service instance accessed by the call request, wherein the service instance corresponds to at least one address, and each address corresponds to a fuse; A first determining module, used to determine a fuse corresponding to the address; A second determining module, configured to obtain a fuse condition of the address based on the fuse; A processing module is used to perform a fuse processing on the address when the address meets the fuse condition.

8. An electronic device, characterized in that: include: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores one or more computer programs executable by the at least one processor, and the one or more computer programs are executed by the at least one processor to enable the at least one processor to perform the data processing method according to any one of claims 1 to 6.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the computer program implements the data processing method according to any one of claims 1 to 6.

10. A computer program product, characterized in that The invention comprises a computer-readable code, or a non-volatile computer-readable storage medium carrying the computer-readable code. When the computer-readable code runs in a processor of an electronic device, the processor in the electronic device executes the data processing method as described in any one of claims 1 to 6.