Data processing method and related product

By not including the identification information of the third-party service in the request instruction, ensuring that only one thread calls the third-party service, it solves the problem of excessive third-party service pressure caused by multiple threads to call at the same time, and achieves efficient execution of data requests.

CN119149264APending Publication Date: 2024-12-17MASHANG CONSUMER FINANCE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410940453.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-07-12
Publication Date
2024-12-17

AI Technical Summary

Technical Problem

In Internet applications, when multiple threads call third-party services at the same time, it will cause excessive pressure on the third-party services, affecting their normal work.

Method used

By not including the identification information of the third-party service in the request instruction, ensuring that only one thread calls the third-party service, avoiding multiple threads requesting at the same time, thereby reducing the pressure on the third-party service.

Benefits of technology

It effectively reduces the pressure on third-party services, ensures that the normal operation of third-party services will not be affected during the execution of data requests, and improves the efficiency of data acquisition.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119149264A_ABST
    Figure CN119149264A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses a data processing method and a related product. The data processing method comprises the steps that a request instruction of a first thread for first business data is responded, the request instruction comprises identification information of a third-party service, and a preset request set does not comprise the identification information of the third-party service; and calling the third-party service through the first thread to obtain the first business data. According to the method, the calling frequency of the third-party service in the data processing process can be reduced, so that the calling pressure of the third-party service is effectively reduced, and the data processing efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of data processing technology, and in particular to a data processing method and related products. Background Art

[0002] In Internet applications, data access is performed between services through HTTP (HyperText Transfer Protocol). For example, in Internet shopping applications, the order service obtains product information by calling the product service; in data processing applications, the data processing node obtains relevant business data by calling the data storage node; and so on. When the same service is called by multiple other services at the same time, the service traffic will be too high and the service call pressure will be too high. For example, when multiple concurrent threads call a third-party service at the same time, the third-party service will be overwhelmed by the large traffic and cannot provide normal services, resulting in data processing errors. Therefore, how to ensure the orderly calling between application services and the unaffected service of application services during the calling process has become one of the problems that need to be solved urgently. Summary of the invention

[0003] The purpose of the embodiments of the present application is to provide a data processing method and related products to solve the technical problem that when multiple threads call a third-party service at the same time, the third-party service is overloaded.

[0004] To solve the above technical problems, the embodiments of the present application are implemented as follows:

[0005] On the one hand, an embodiment of the present application provides a data processing method, including:

[0006] In response to a request instruction of the first thread for the first business data, the request instruction includes identification information of a third-party service, and the preset request set does not include the identification information of the third-party service;

[0007] The first business data is obtained by calling the third-party service through the first thread.

[0008] On the other hand, an embodiment of the present application provides a data processing device, including:

[0009] A response module, configured to respond to a request instruction of the first thread for the first business data, wherein the request instruction includes identification information of a third-party service, and a preset request set does not include identification information of the third-party service;

[0010] A calling module is used to call the third-party service through the first thread to obtain the first business data.

[0011] On the other hand, an embodiment of the present application provides an electronic device, including a processor and a memory electrically connected to the processor, the memory storing a computer program, and the processor being used to call and execute the computer program from the memory to implement the above-mentioned data processing method.

[0012] On the other hand, an embodiment of the present application provides a computer-readable storage medium for storing a computer program, wherein the computer program can be executed by a processor to implement the above-mentioned data processing method.

[0013] On the other hand, an embodiment of the present application provides a computer program product, which includes a computer program, and the computer program is executed by a processor to implement the above-mentioned data processing method.

[0014] By adopting the technical solution of the embodiment of the present application, in response to the first thread's request instruction for the first business data, the request instruction includes the identification information of the third-party service, and the preset request set does not include the identification information of the third-party service, the first business data is obtained by calling the third-party service through the first thread. Since the request set does not include the identification information of the third-party service, it means that the third-party service is not currently called by other threads, so it can ensure that only one thread (i.e., the first thread) calls the third-party service, avoiding the situation where the third-party service is overloaded when multiple threads request the third-party service at the same time, effectively reducing the pressure on the third-party service, thereby ensuring that the normal operation of the third-party service will not be affected during the execution of the data request. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] In order to more clearly illustrate one or more embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in one or more embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0016] Figure 1 is a schematic flow chart of a data processing method according to an embodiment of the present application;

[0017] Figure 2 is a schematic application scenario diagram of a data processing method according to an embodiment of the present application;

[0018] Figure 3 is a schematic flow chart of a data processing method according to another embodiment of the present application;

[0019] Figure 4 is a schematic flow chart of a data processing method according to yet another embodiment of the present application;

[0020] Figure 5 is a schematic flow chart of a data processing method according to yet another embodiment of the present application;

[0021] Figure 6 is a schematic flow chart of a data processing method according to yet another embodiment of the present application;

[0022] Figure 7 is a schematic block diagram of a data processing device according to an embodiment of the present application;

[0023] Figure 8 It is a schematic block diagram of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION

[0024] The embodiments of the present application provide a data processing method and related products to solve the technical problem that when multiple threads call a third-party service at the same time, the third-party service is overloaded.

[0025] In order to enable those skilled in the art to better understand the technical solutions in this application, the technical solutions in the embodiments of this application will be clearly and completely described below in conjunction with the drawings in the embodiments of this application. Obviously, the described embodiments are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of this application.

[0026] In Internet applications, each service obtains the required business data by calling each other. In order to improve the processing efficiency of business data, multiple threads are usually used to obtain or process business data in parallel. Usually, when the number of business requests is large, the threads where multiple business requests are located will call the third-party service at the same time. If the threads where multiple business requests are located call the same third-party service at the same time, it will cause the traffic of the third-party service to be too high and the service call pressure to be too high, thereby affecting the normal operation of the third-party service. In order to reduce the call pressure of the third-party service, in the related technology, a cache layer is added between the local service and the third-party service to cache the business data returned by the third-party service. In this way, when the business data returned by the third-party service exists in the cache pool, there is no need to call the third-party service again, so as to achieve the purpose of reducing the call pressure of the third-party service. However, in some cases, such as the cache layer does not cache the business data of the third-party service, or the business data cached by the cache layer expires, a large number of business requests will directly request the third-party service, which will still cause the third-party service to be overwhelmed by large traffic. In this regard, the present application proposes a data processing method, in response to a request instruction of a first thread for first business data, the request instruction includes identification information of a third-party service, and the preset request set does not include the identification information of the third-party service, the first business data is obtained by calling the third-party service through the first thread. Since when the request set does not include the identification information of the third-party service, it means that the third-party service is not currently called by other threads, it can ensure that only one thread (i.e., the first thread) calls the third-party service, avoiding the situation where the third-party service is overloaded when multiple threads request the third-party service at the same time, effectively reducing the pressure on the third-party service, thereby ensuring that the normal operation of the third-party service is not affected during the execution of the data request.

[0027] The data processing method provided in the embodiments of the present application may be executed by an electronic device or by software installed in the electronic device. Specifically, the electronic device may be a terminal device or a server device. The terminal device may include a smart phone, a laptop computer, a smart wearable device, a vehicle terminal, etc. The server device may include an independent physical server, a server cluster composed of multiple servers, or a cloud server capable of cloud computing.

[0028] Figure 1 is a schematic flow chart of a data processing method according to an embodiment of the present application, such as Figure 1 As shown, the method includes the following steps S102-S104:

[0029] S102, responding to a request instruction of the first thread for first business data, where the request instruction includes identification information of a third-party service, and the preset request set does not include the identification information of the third-party service.

[0030] After responding to the first thread's request instruction for the first business data, it is determined whether the preset request set includes the identification information of the third-party service according to the identification information of the third-party service included in the request instruction. In order to accurately determine whether there is a thread currently calling the third-party service, the identification information of the third-party service can be stored in the preset request set when any thread calls the third-party service.

[0031] If the preset request set does not include the identification information of the third-party service, it means that there is no thread currently calling the third-party service.

[0032] If the preset request set includes the identification information of the third-party service, it means that there is currently a thread calling the third-party service, and the first thread does not call the third-party service at this time. Optionally, the first thread can be in a waiting state first, and then call the third-party thread when the third-party service is not called by other threads. Alternatively, after other threads have finished calling the third-party service, the first thread obtains the first business data obtained by other threads from the cache pool.

[0033] The cache pool is used to cache the business data obtained by any thread. The business data in the cache pool can be updated according to a preset period.

[0034] Optionally, before processing the request instruction for the first business data, the first business data may be obtained in advance by calling a third-party service, and the first business data may be stored in a cache pool. By pre-storing the first business data in the cache pool, when the electronic device receives the request instruction for the first business data from the first thread, the first business data may be obtained from the cache pool if the first business data is stored in the cache pool. In other words, the first thread can directly obtain the first business data from the local cache pool without calling a third-party service, thereby improving data acquisition efficiency.

[0035] In the cache pool, business data and identification information of third-party services can be stored correspondingly. The identification information of the third-party service may include at least one of the following: the URL (Universal Resource Locator) of the third-party service, the name of the third-party service, a code with a unique identification function, etc.

[0036] After responding to the first thread's request instruction for the first business data, the cache pool may be queried to see whether the first business data is stored. When querying the cache pool, the business data corresponding to the identification information of the third-party service may be queried from the cache pool based on the identification information of the third-party service included in the execution instruction.

[0037] S104, calling a third-party service through the first thread to obtain first business data.

[0038] Optionally, if the cache pool does not store the first service data, after the first thread obtains the first service data, the obtained first service data may be stored in the cache pool, so that other threads can directly obtain the required service data from the cache pool when requesting the same service data.

[0039] Optionally, in response to the preset request set including identification information of the third-party service, and the cache pool storing the first business data, the first business data is obtained from the cache pool through the first thread.

[0040] In response to the preset request set including identification information of the third-party service, and the cache pool not storing the first business data, the third-party service is called through the first thread to obtain the first business data.

[0041] The request set includes identification information of the third-party service, indicating that a thread is currently calling the third-party service.

[0042] Only one cache pool may be configured in the electronic device, and the cache pool is used to cache the business data obtained by any thread. Two cache pools may also be configured in the electronic device, for example, a first cache pool and a second cache pool, the first cache pool being used to cache the business data obtained in advance from the third-party service before responding to the request instruction, and the second cache pool being used to cache the business data obtained from the third-party service after responding to the request instruction. The second cache pool and the first cache pool may be the same cache pool, or may be two cache pools distributed in different locations in the electronic device.

[0043] In this embodiment, the data structure of the first cache pool and the second cache pool is not limited, and may be any structure with a data storage function, such as a HashMap data structure.

[0044] In one embodiment, after responding to the first thread's request instruction for the first business data, a lock may be acquired for the first thread, and after determining that the second thread is not included in the threads in the execution state, the lock of the first thread may be released. The purpose of acquiring the lock is to avoid multiple business requests from calling the same third-party service at the same time. When it is determined that the second thread is not included in the threads in the execution state, it means that no thread is currently calling the third-party service, so the lock of the first thread may be released to enable it to call the third-party service. If the lock acquisition fails, attempts to acquire the lock may be continued until the lock is acquired. Among them, the lock may be acquired and released by constructing a lock using the ReentrantLock class.

[0045] By adopting the technical solution of the embodiment of the present application, in response to the first thread's request instruction for the first business data, the request instruction includes the identification information of the third-party service, and the preset request set does not include the identification information of the third-party service, the first business data is obtained by calling the third-party service through the first thread. Since the request set does not include the identification information of the third-party service, it means that the third-party service is not currently called by other threads, so it can ensure that only one thread (i.e., the first thread) calls the third-party service, avoiding the situation where the third-party service is overloaded when multiple threads request the third-party service at the same time, effectively reducing the pressure on the third-party service, thereby ensuring that the normal operation of the third-party service will not be affected during the execution of the data request.

[0046] In one embodiment, when obtaining the first service data from the cache pool, any of the following methods A1-A2 may be performed:

[0047] Mode A1, in response to first service data being queried in the cache pool at a preset frequency, the first service data is acquired from the cache pool.

[0048] Mode A2: Control the first thread to be in a waiting state. When the first thread is in the waiting state, in response to a first notification of stopping waiting sent by the second thread, the first thread obtains the first service data from the buffer pool.

[0049] The second thread is a thread that requests a third-party service and is different from the first thread.

[0050] In mode A2, after the second thread obtains the first business data from the third-party service, it will actively send a first notification to the thread in the waiting state (such as the first thread), so that the first thread obtains the first business data from the cache pool based on the first notification. There may be multiple threads in the waiting state. At this time, the second thread can send the first notification to multiple threads in the waiting state at the same time, so that the multiple threads in the waiting state stop waiting at the same time and obtain the first business data from the cache pool, which greatly improves the efficiency of obtaining business data.

[0051] In this embodiment, no matter the first thread actively queries the cache pool (i.e., method A1) or passively receives notifications (i.e., method A2), the existing thread (i.e., the second thread) can call a third-party service to obtain the first business data. The first thread does not need to call the third-party service again, but only needs to obtain the first business data from the local cache pool. This not only reduces the calling pressure of the third-party service and saves traffic, but also improves the efficiency of obtaining business data.

[0052] In one embodiment, in response to a request instruction from the first thread for first business data, the request instruction includes identification information of a third-party service, and after a preset request set does not include the identification information of the third-party service, the identification information of the third-party service is stored in the request set.

[0053] The data structure of the preset request set is not limited, and may be, for example, a HashSet data structure.

[0054] In this embodiment, the preset request set does not include the identification information of the third-party service, indicating that there is no thread currently calling the third-party service. By querying whether the preset request set includes the identification information of the third-party service to determine whether the second thread (i.e., the thread that is calling the third-party service) is included, the method of determining whether there is a thread currently calling the third-party service is very convenient and fast. Moreover, in the case where the preset request set does not include the identification information of the third-party service, the third-party service is called by the first thread, and the identification information of the third-party service is stored in the request set. During the process of the first thread calling the third-party service, other threads can determine that the first thread is calling the third-party service through the request set, so that other threads no longer call the third thread, avoiding the situation where multiple threads call the third-party service at the same time, causing excessive pressure on the third-party service, and effectively reducing the calling pressure of the third-party service.

[0055] In one embodiment, after the first thread calls the third-party service and obtains the first business data, the first business data can be stored in the cache pool. In this way, when other threads request the first business data, there is no need to call the third-party service again, and the first business data can be directly obtained from the local cache pool, which not only improves the efficiency of obtaining business data, but also reduces the calling pressure of the third-party service.

[0056] In one embodiment, after obtaining the first business data by invoking the third-party service through the first thread, it can be determined whether there is a third thread in a waiting state. In response to the third thread in a waiting state, the third thread is controlled to stop waiting.

[0057] Figure 2 FIG. 1 is a schematic application scenario diagram of a data processing method according to an embodiment of the present application. Figure 2 As shown, the application scenario architecture of the data processing method includes a client (i.e., a local service), a concurrent controller, and a third-party service. The third-party service is located on the network side, and the concurrent controller is deployed between the client and the third-party service. The client creates a first cache pool, and the concurrent controller creates a second cache pool. In other embodiments, the concurrent controller can also be deployed in the client, and its working principle is the same as Figure 2 The concurrent controllers in the scenario shown work in the same way.

[0058] based on Figure 2 The application scenario architecture shown in the figure, the embodiment of the present application provides a data processing method, which is specifically implemented as follows Figure 3 Steps S301-S311 shown:

[0059] S301: The client receives a request instruction from a first thread for first business data, and acquires a lock for the first thread.

[0060] The request instruction includes identification information of the third-party service. The identification information of the third-party service may include at least one of the following: a URL of the third-party service, a name of the third-party service, a code with a unique identification function, and the like.

[0061] S302, query whether the first buffer pool stores the first business data. If yes, execute S311; if no, execute S303.

[0062] In which, in the first cache pool, business data and identification information of the third-party service can be stored correspondingly. When querying the first cache pool, business data corresponding to the identification information of the third-party service can be queried from the first cache pool based on the identification information of the third-party service carried in the request instruction.

[0063] S303, query whether the preset request set contains the identification information of the third-party service. If yes, execute S308; if no, execute S304.

[0064] The preset request set does not include the identification information of the third-party service, which means that the current thread (ie, the first thread) is the first thread to obtain the lock, that is, the first thread that needs to call the third-party service.

[0065] S304: Store the identification information of the third-party service into a preset request set, and release the lock of the first thread.

[0066] S305: Call a third-party service through the first thread to obtain first business data.

[0067] S306: Associate the first business data with the identification information of the third-party service and store them in the first cache pool and the second cache pool.

[0068] S307, sending notifications to other threads in the waiting state to wake up the other threads.

[0069] The execution order of steps S306 and S307 is not limited.

[0070] S308, query whether the second cache pool stores the first business data. If yes, execute S310; if no, execute S309.

[0071] S309: Control the first thread to be in a waiting state, and after the first thread receives a first notification of stopping waiting from the second thread, obtain the first business data from the second cache pool.

[0072] Among them, when the preset request set includes the identification information of the third-party service, it means that there is currently a thread (i.e., the second thread) calling the third-party service, so the first thread does not need to call the third-party service again, and only needs to obtain the first business data from the second cache pool. There is a situation where the second thread is calling the third-party service, but has not yet obtained the first business data, or has not yet stored the first business data in the second cache pool. In this case, the first thread can wait first, that is, control the first thread to be in a waiting state. After the second thread stores the first business data in the second cache pool, it will send a notification to the first thread to notify the first thread to stop waiting and obtain the first business data from the second cache pool.

[0073] S310, obtaining first business data from the second cache pool, and releasing the lock of the first thread.

[0074] S311, obtaining first service data from a first cache pool.

[0075] Optionally, after the first thread obtains the first business data, it can be determined whether the first thread still holds a lock, and if so, the lock of the first thread is released, thereby ensuring that the lock can be released after the thread execution ends, and even if an exception occurs during data processing, it will not affect the normal execution of other threads.

[0076] Optionally, during the execution of the first thread, there may be an exception, such as a feedback timeout exception or other HTTP request exception, which makes the first thread unable to continue to execute normal logic. In this case, the lock of the first thread can be released to ensure that the normal execution of other threads will not be affected when the first thread executes abnormally.

[0077] Optionally, after the first thread obtains the first business data, it is determined whether there are other threads that have not been awakened, that is, in a waiting state. If so, the thread in the waiting state is awakened. Thus, it is ensured that other waiting threads can be awakened after the thread execution ends, and even if an exception occurs during the data processing process, it will not affect the normal execution of other threads. In this embodiment, only when the first business data is not stored in the local cache pool and there is no thread calling the third-party service at present, the first business data will be obtained by calling the third-party service through the first thread, so that when the required business data is not stored in the local cache pool, only one thread calls the same third-party service, avoiding the situation where the third-party service pressure is too large when multiple threads request the third-party service at the same time, effectively reducing the pressure of the third-party service, thereby ensuring that the normal operation of the third-party service will not be affected in the process of requesting business data. In addition, after the first thread obtains the first business data, by storing the first business data in the local cache pool, other threads do not need to call the third-party service when obtaining the same business data (such as the first business data), but only need to obtain the required business data from the local cache pool, thereby further reducing the calling pressure of the third-party service and improving the efficiency of obtaining business data.

[0078] The data processing method provided by this application is explained below using a specific scenario as an example.

[0079] Assume that the electronic device executing the data processing method includes multiple business nodes, and each business node consists of two parts: data acquisition and business decision logic. Among them, data acquisition is to obtain multiple different parameter values ​​(i.e., business data) through a set of data sources, and the business decision logic makes decisions and judgments based on these variable values, and gives the processing result of the current business node. In the related art, after the data processing process starts, the business node starts to execute, and first obtains the business data of multiple data sources in sequence according to the arrangement order of multiple data sources (which can be a random arrangement order or a custom arrangement order). Assuming that data source 1, data source 2... data source n are configured for the current business node, then data source 1 is called first, and after the parameter value returned by data source 1 is obtained, data source 2 is triggered to call and obtain the parameter value returned by data source 2, and the execution is carried out in sequence until the last data source n is called and the parameter value returned by data source n is obtained, and then all the parameter values ​​obtained above are passed into the business decision logic, and the business decision logic is calculated to obtain the processing result of the current business node. When the data acquisition action is executed on the next business node, the data acquisition action of the previous business node is repeated again. Among them, the data source is a third-party service.

[0080] It can be seen that in the data acquisition phase, the data processing flow calls the data source in sequence to obtain business data. The total time required to obtain all business data of the current business node should be equal to the sum of the time consumed to call each data source, which is obviously very time-consuming. In addition, since the data source is a third-party service located on the network side, it is necessary to interact with the third-party service on the network side when calling the data source to obtain business data, which undoubtedly increases the time required to obtain business data, resulting in slower data processing. In the data processing method provided by the present application, the data acquisition phase is based on the business data stored in the local cache pool and the control mechanism for parallel threads. Compared with the acquisition method of calling a third-party service, data acquisition is less time-consuming and more efficient, so it can improve the efficiency of data processing. In addition, obtaining business data through the cache pool can reduce the number of calls to third-party services, that is, reduce the number of interactions between the electronic device performing data processing and the third-party service, so it can reduce the operating pressure of the third-party service.

[0081] Figure 4 FIG. 1 is a schematic flow chart of a data processing method according to another embodiment of the present application. In this embodiment, the electronic device executing the data processing method includes one or more service nodes, and each service node corresponds to one or more service parameters. Figure 4 As shown, the method includes:

[0082] S402: Determine a service parameter of a first service node.

[0083] The service parameter of the first service node may be one or more. When determining the service parameter of the first service node, the process may include determining the parameter quantity, parameter name, parameter description information, etc. of the service parameter.

[0084] S404, determining whether the locally pre-created cache pool stores the service data of the service parameters of the first service node. If yes, execute S406; if no, execute S408.

[0085] S406: Acquire service data of service parameters of the first service node according to the service data stored in the cache pool.

[0086] The cache pool is a space created locally on the electronic device for caching business data. The cache pool can be created in advance before the data processing process starts, or it can be created at the same time as the data processing process is triggered.

[0087] S408, initiating a request instruction for first business data through a first thread, where the request instruction for the first business data is used to request to call a third-party service to obtain business data of business parameters of a first business node.

[0088] Optionally, if the first service node includes multiple service parameters, service data of the multiple service parameters may be acquired concurrently.

[0089] In this step, after the first thread initiates a request instruction for the first service data, the following steps can be followed: Figure 1 The data processing method shown processes the request instruction initiated by the first thread. In the case where the business parameters include multiple ones, a request instruction is initiated through a different thread for each business parameter to request to call a third-party service to obtain the business data of the business parameter. Each business request corresponds to a thread.

[0090] S410 , when the service data of all service parameters of the first service node are acquired, the first service node is processed according to the service data of all service parameters to obtain a processing result of the first service node.

[0091] In this embodiment, if the service parameters of the first service node include multiple ones, it can be determined whether the service data of all service parameters of the first service node are obtained before executing step S410. An optional judgment method is: determining the number of parameters of the service parameters corresponding to the obtained service data, and when the number of parameters is the same as the number of preset parameters corresponding to the first service node, determining that the service data of all service parameters of the first service node are obtained.

[0092] For each business node, corresponding business parameters and parameter information of the business parameters are pre-configured. The parameter information may include at least one of the following: parameter quantity, parameter name, parameter description information, unique parameter number, etc. The preset parameter quantity corresponding to the first business node refers to the parameter quantity of the business parameters pre-configured for the first business node. For example, the preset parameter quantity corresponding to the first business node is 5. Every time business data of a first business node is obtained, a count is performed. The count value is the number of parameters corresponding to the obtained business data. When the count value is 5, it means that the number of parameters corresponding to the obtained business data is the same as the preset parameter quantity corresponding to the first business node. At this time, it is determined that the business data of all business parameters of the first business node have been obtained.

[0093] In this application, the data acquisition stage is based on whether the local cache pool stores business data. Compared with the acquisition method of directly calling third-party services, data acquisition takes less time and is more efficient, so the efficiency of data processing can be improved. In addition, obtaining business data through the local cache pool can reduce the number of calls to third-party services, that is, reduce the number of interactions between the electronic device and the third-party service, so the operating pressure of the third-party service can be reduced.

[0094] In one embodiment, when obtaining business data, it is possible to first query whether the business data of the business parameters of the first business node is stored in the cache pool. If it is found that the business data of the business parameters of the first business node is stored in the cache pool, the business data of the business parameters of the first business node is further obtained from the cache pool. If the business data of the business parameters of the first business node is not stored in the cache pool, the third-party service corresponding to the business parameter is called to obtain the business data of the business parameter from the third-party service. The third-party service corresponding to the business parameter refers to a third-party service for managing (including storing) the business data of the business parameter.

[0095] In the cache pool, the parameter identifier of the business parameter and the business data may be stored correspondingly, and the parameter identifier of the business parameter may include at least one of the following: the parameter name of the business parameter, parameter description information, unique parameter number, etc. In this way, when querying whether the cache pool stores the business data of the business parameter, it is possible to query whether the cache pool stores the parameter identifier of the business parameter. If the cache pool stores the parameter identifier of the business parameter, it means that the cache pool stores the business data of the business parameter. Furthermore, according to the corresponding relationship between the parameter identifier of the business parameter and the business data, the business data corresponding to the parameter identifier of the business parameter can be obtained.

[0096] In this embodiment, the business data of the business parameters will be obtained by calling the third-party service corresponding to the business parameters only when the cache pool does not store the business data of the business parameters. If the cache pool already stores the business data of the business parameters, there is no need to call the third-party service, thereby greatly reducing the number of calls to the third-party service, reducing the time required to obtain the business data, and improving the efficiency of obtaining the business data.

[0097] In one embodiment, the first business node is processed according to the business data of all business parameters. After the processing result of the first business node is obtained, it is determined whether there is a next second business node to be processed according to the processing result of the first business node; if so, the business data of the business parameters of the second business node is obtained, and the second business node is processed according to the business data of the business parameters of the second business node; if not, it is determined that the data processing event is completed, and the data processing result of the data processing event is obtained.

[0098] When determining whether there is a next second service node to be processed according to the processing result of the first service node, the following steps may be performed:

[0099] If the first preset condition is met, it is determined that the second service node does not exist. The first preset condition includes: the processing result of the first service node is that the processing fails, or the first service node is the last node in the data processing event.

[0100] If the second preset condition is met, it is determined that the second service node exists. The second preset condition includes: the processing result of the first service node is that the processing is passed, and the first service node is not the last node in the data processing event.

[0101] Optionally, when it is determined that the second service node does not exist, the service data stored in the first cache pool is cleared.

[0102] In this embodiment, by clearing the business data stored in the cache pool, a cache pool can be created again when a new data processing event is generated for use by the new data processing event, and the cache pool is not shared by different data processing events, thereby avoiding confusion of business data.

[0103] Figure 5 FIG. 1 is a schematic flow chart of a data processing method provided in yet another embodiment of the present application. Figure 5 As shown, the data processing method includes the following steps:

[0104] S501, determining all service parameters of the service node currently to be processed.

[0105] In this embodiment, the service node is configured with multiple service parameters, including service parameter 1, service parameter 2, ... and service parameter n. When determining the service parameters of the service node, the number of parameters, parameter names, parameter description information, etc. of the service parameters may be determined.

[0106] S502.1, query whether the cache pool stores the business data of business parameter 1. If yes, execute S503; if no, execute S504.

[0107] S502.2, query whether the buffer pool stores the business data of business parameter 2. If yes, execute S503; if no, execute S504.

[0108] S502.n, query whether the cache pool stores the business data of business parameter n. If yes, execute S503; if no, execute S504.

[0109] Among them, steps S502.1, S502.2, ... and S502.N are executed concurrently. Figure 5 Only these three concurrently executed steps are schematically shown. In actual applications, all business parameter acquisition actions can be executed concurrently.

[0110] S503: Acquire business data of business parameters from the cache pool.

[0111] After executing step S503, jump to step S506 to continue execution.

[0112] S504: Initiate a request instruction for business data of business parameters through the first thread.

[0113] The request instruction for business data is used to request to call a third-party service corresponding to the business parameter to obtain business data. After initiating the request instruction for business data through the first thread, the following can be done: Figure 1 The data processing method shown processes the request instruction initiated by the first thread. In the case where the business parameters include multiple ones, a request instruction for business data is initiated through different threads for each business parameter to request to call a third-party service to obtain the business data of the business parameter. Each business request corresponds to one thread.

[0114] S505: Store the acquired business data into a cache pool.

[0115] S506: When the buffer pool stores the service data of all service parameters, obtain the service data of all service parameters from the buffer pool.

[0116] Among them, all service parameters refer to all service parameters of the service node currently to be processed, including service parameter 1, service parameter 2, ... and service parameter n.

[0117] S507, processing the service node according to the service data of all service parameters to obtain a processing result of the service node.

[0118] S508, determine whether there is a next service node to be processed. If yes, return to step S501 and use the next service node as the current service node to be processed; if no, execute S509.

[0119] If the processing result of the current service node to be processed is that the processing fails, or the current service node to be processed is the last node in the data processing event, it is determined that there is no next service node to be processed. If the processing result of the current service node to be processed is that the processing passes, and the current service node to be processed is not the last node in the data processing event, it is determined that there is a next service node to be processed.

[0120] S509, determining that the data processing event is completed, and obtaining the processing result of the data processing event.

[0121] S510: Clear the business data stored in the cache pool.

[0122] If the processing result of the current service node to be processed is not processed, the processing result of the data processing event is determined to be not processed. If the processing result of each service node in the data processing event is passed, the processing result of the data processing event is determined to be passed.

[0123] Of course, the judgment conditions for the processing results of the data processing event can be customized. Optionally, when the preset conditions are met, the processing result of the data processing event is determined to be processed successfully. For example, if the processing results of 80% or more of the business nodes in the data processing event are processed successfully, the processing result of the data processing event is determined to be processed successfully.

[0124] In the embodiment of the present application, the business data of the business parameters will be obtained by calling a third-party service only when the local cache pool does not store the business data of the business parameters. In the case where the local cache pool already stores the business data of the business parameters, there is no need to call the third-party service, and the business data of the business parameters is directly obtained from the local cache pool, which greatly reduces the number of calls to the third-party service, reduces the time required to obtain the business data, improves the efficiency of obtaining the business data, and thus can improve the efficiency of data processing. In addition, obtaining business data through the local cache pool can reduce the number of calls to the third-party service, that is, reduces the number of interactions between the electronic device and the third-party service, thereby reducing the operating pressure of the third-party service.

[0125] The data processing method provided by the present application is described below through a specific embodiment.

[0126] Figure 6 : is a schematic flow chart of a data processing method provided by another embodiment of the present application. In this embodiment, it is assumed that the data processing event includes two business nodes. The first business node is configured with two business parameters: age parameter and student identity parameter. The second business node is configured with two business parameters: age parameter and default record parameter. Figure 6 As shown, the data processing method includes the following steps:

[0127] S601, the data processing flow starts, and the first service node begins to be executed.

[0128] S602.1, query the business data of the age parameter from the cache pool, and then execute step S603.1.

[0129] S602.2, query the business data of the student identity parameter from the cache pool, and then execute step S303.2.

[0130] Among them, steps S602.1 and S602.2 are executed concurrently. Since it is the first business node in the data processing event, the cache pool has not yet stored any business data, so it must not store any business data of age parameters and business data of student identity parameters.

[0131] S603.1, calling a third-party service corresponding to the age parameter, obtaining business data of the age parameter based on the third-party service, and storing the business data of the age parameter in a cache pool.

[0132] S603.2, calling a third-party service corresponding to the student identity parameter, obtaining business data of the student identity parameter based on the third-party service, and storing the business data of the student identity parameter in a cache pool.

[0133] When calling a third-party service corresponding to a business parameter (including an age parameter and / or a student identity parameter), a request instruction for business data of the business parameter may be initiated through a thread first, and the request instructions for business data of different business parameters may be initiated through different threads. In this embodiment, a request instruction for business data of the age parameter may be initiated through a first thread, and a request instruction for business data of the student identity parameter may be initiated through a second thread. The first thread and the second thread may be executed in parallel.

[0134] If the third-party service corresponding to the age parameter is different from the third-party service corresponding to the student identity parameter, then when the first thread calls the third-party service corresponding to the age parameter and the second thread calls the third-party service corresponding to the student identity parameter, the two do not affect each other and can be executed in parallel. Since the acquisition of business data of different business parameters is executed in a concurrent manner, the total time for acquiring the business data of the two business parameters of the first business node is equal to the longest time for calling a single third-party service. Assuming that it takes 0.5 seconds to acquire the business data of the age parameter by calling the third-party service corresponding to the age parameter, and it takes 0.7 seconds to acquire the business data of the student identity parameter by calling the third-party service corresponding to the student identity parameter, then the total time for acquiring the business data of the two business parameters of the first business node is 0.7 seconds.

[0135] If the third-party service corresponding to the age parameter and the third-party service corresponding to the student identity parameter are the same third-party service, that is, the same third-party service manages both the business data of the age parameter and the business data of the student identity parameter. Figure 1 The data processing method shown processes request instructions initiated by the first thread and the second thread.

[0136] S604, obtaining business data of age parameters and business data of student identity parameters from the cache pool, processing the first business node according to the business data of age parameters and business data of student identity parameters, and obtaining a processing result of the first business node.

[0137] When the processing result of the first service node is that the processing is passed, step S605 is continued to be executed.

[0138] S605, start executing the second service node.

[0139] S606.1, query the business data of the age parameter from the cache pool.

[0140] S606.2, query the business data of the default record parameters from the cache pool, and then execute step S607.

[0141] Among them, steps S606.1 and S606.2 are executed concurrently.

[0142] S607 , calling a third-party service corresponding to the breach record parameter, obtaining business data of the breach record parameter based on the third-party service, and storing the business data of the breach record parameter in a cache pool.

[0143] S608, obtaining the business data of the age parameter and the business data of the default record parameter from the cache pool, processing the second business node according to the business data of the age parameter and the business data of the default record parameter, and obtaining a processing result of the second business node.

[0144] Since the acquisition of business data for different business parameters is executed in a concurrent manner, the total time required to acquire the business data for the two business parameters of the second business node is equal to the longest time required to call a single third-party service. Since the business data for the age parameter has been stored in the cache pool when the first business node is executed, there is no need to call the third-party service corresponding to the age parameter, and the acquisition time for the business data for the age parameter is 0 seconds. Assuming that it takes 0.9 seconds to acquire the business data for the default record parameter by calling the third-party service corresponding to the default record parameter, the total time required to acquire the business data for the two business parameters of the second business node is 0.9 seconds.

[0145] Before executing this step, the electronic device can determine whether the service data of all service parameters of the service node to be processed is obtained, and if it is determined that the service data of all service parameters of the service node to be processed is obtained, step S608 is triggered. How to determine whether the service data of all service parameters is obtained has been described in detail in the above embodiments, and will not be repeated here.

[0146] S609, the data processing process ends, the processing result of the data processing event is obtained, and the business data stored in the buffer pool is cleared.

[0147] In the embodiment of the present application, the business data of the business parameters will be obtained by calling the third-party service corresponding to the business parameters only when the business data of the business parameters is not stored in the local cache pool. In the case where the business data of the business parameters has been stored in the local cache pool, there is no need to call the third-party service, and the business data of the business parameters can be directly obtained from the local cache pool, which greatly reduces the number of calls to the third-party service, reduces the time required for obtaining the business data, improves the efficiency of obtaining the business data, and thus can improve the efficiency of data processing. In addition, obtaining business data through the local cache pool can reduce the number of calls to the third-party service, that is, reduces the number of interactions between the electronic device and the third-party service, thereby reducing the operating pressure of the third-party service. In addition, by adopting a concurrent acquisition method to obtain the third-party service data of multiple business parameters, the total time for obtaining the third-party service data of multiple business parameters is equal to the longest time taken to call a single third-party service, which is much less than the sum of the time taken to call each third-party service.

[0148] In summary, specific embodiments of the present subject matter have been described. Other embodiments are within the scope of the appended claims. In some cases, the actions recorded in the claims can be performed in a different order and still achieve the desired results. In addition, the processes depicted in the accompanying drawings do not necessarily require the specific order or sequential order shown to achieve the desired results. In some embodiments, multitasking and parallel processing can be advantageous.

[0149] The above is a data processing method provided in an embodiment of the present application. Based on the same idea, an embodiment of the present application also provides a data processing device.

[0150] Figure 7 is a schematic block diagram of a data processing device according to an embodiment of the present application, such as Figure 7 As shown, the device comprises:

[0151] A response module 71 is used to respond to a request instruction of the first thread for the first business data, wherein the request instruction includes identification information of a third-party service, and a preset request set does not include the identification information of the third-party service;

[0152] The calling module 72 is used to call the third-party service through the first thread to obtain the first business data.

[0153] In one embodiment, the apparatus further comprises:

[0154] The acquisition module is configured to, in response to the preset request set including the identification information of the third-party service and the cache pool storing the first business data, acquire the first business data from the cache pool through the first thread.

[0155] In one embodiment, the apparatus further comprises:

[0156] The second calling module is used to call the third-party service through the first thread to obtain the first business data in response to the preset request set including the identification information of the third-party service and the cache pool not storing the first business data.

[0157] In one embodiment, the apparatus further comprises:

[0158] The first storage module is configured to store the first business data in the cache pool after the first thread calls the third-party service to obtain the first business data.

[0159] In one embodiment, when the first acquisition module acquires the first service data from the cache pool, the first acquisition module executes the following steps:

[0160] In response to querying the first service data in the cache pool according to a preset frequency, acquiring the first service data from the cache pool;

[0161] or,

[0162] The first thread is controlled to be in a waiting state; in response to a first notification of stopping waiting sent by the second thread, the first business data is obtained from the cache pool through the first thread; the second thread is a thread that requests the third-party service and is different from the first thread.

[0163] In one embodiment, the apparatus further comprises:

[0164] The control module is used for controlling the third thread to stop waiting in response to the third thread currently being in a waiting state after the first thread calls the third-party service to obtain the first business data.

[0165] In one embodiment, the apparatus further comprises:

[0166] The second storage module is used to respond to the request instruction of the first thread for the first business data, the request instruction includes the identification information of the third-party service, and after the preset request set does not include the identification information of the third-party service, store the identification information of the third-party service in the preset request set.

[0167] The device using the embodiment of the present application, in response to the first thread's request instruction for the first business data, the request instruction includes the identification information of the third-party service, and the preset request set does not include the identification information of the third-party service, the first business data is obtained by calling the third-party service through the first thread. Since the request set does not include the identification information of the third-party service, it means that the third-party service is not currently called by other threads, so it can ensure that only one thread (i.e., the first thread) calls the third-party service, avoiding the situation where the third-party service is overloaded when multiple threads request the third-party service at the same time, effectively reducing the pressure on the third-party service, thereby ensuring that the normal operation of the third-party service is not affected during the execution of the data request.

[0168] Those skilled in the art should understand that Figure 7 The data processing device in can be used to implement the data processing method described above, and the detailed description thereof should be similar to the description of the method part above. To avoid tediousness, it will not be repeated here.

[0169] Based on the same idea, the embodiment of the present application also provides an electronic device, such as Figure 8 As shown. The electronic device may have relatively large differences due to different configurations or performances, and may include one or more processors 801 and memory 802, and the memory 802 may store one or more storage applications or data. Among them, the memory 802 can be a temporary storage or a permanent storage. The application stored in the memory 802 may include one or more modules (not shown in the figure), and each module may include a series of computer executable instructions in the electronic device. Furthermore, the processor 801 can be configured to communicate with the memory 802 to execute a series of computer executable instructions in the memory 802 on the electronic device. The electronic device may also include one or more power supplies 803, one or more wired or wireless network interfaces 804, one or more input and output interfaces 805, and one or more keyboards 806.

[0170] Specifically in this embodiment, the electronic device includes a memory and one or more programs, wherein the one or more programs are stored in the memory, and the one or more programs may include one or more modules, and each module may include a series of computer executable instructions for the electronic device, and the one or more programs are configured to be executed by one or more processors, including the following computer executable instructions:

[0171] In response to a request instruction of the first thread for the first business data, the request instruction includes identification information of a third-party service, and the preset request set does not include the identification information of the third-party service;

[0172] The first business data is obtained by calling the third-party service through the first thread.

[0173] By adopting the technical solution of the embodiment of the present application, in response to the first thread's request instruction for the first business data, the request instruction includes the identification information of the third-party service, and the preset request set does not include the identification information of the third-party service, the first business data is obtained by calling the third-party service through the first thread. Since the request set does not include the identification information of the third-party service, it means that the third-party service is not currently called by other threads, so it can ensure that only one thread (i.e., the first thread) calls the third-party service, avoiding the situation where the third-party service is overloaded when multiple threads request the third-party service at the same time, effectively reducing the pressure on the third-party service, thereby ensuring that the normal operation of the third-party service will not be affected during the execution of the data request.

[0174] The embodiment of the present application further proposes a computer-readable storage medium, which stores one or more computer programs, wherein the one or more computer programs include instructions, which, when executed by an electronic device including multiple application programs, enable the electronic device to perform each process of the above data processing method embodiment, and are specifically used to perform:

[0175] In response to a request instruction of the first thread for the first business data, the request instruction includes identification information of a third-party service, and the preset request set does not include the identification information of the third-party service;

[0176] The first business data is obtained by calling the third-party service through the first thread.

[0177] By adopting the technical solution of the embodiment of the present application, in response to the first thread's request instruction for the first business data, the request instruction includes the identification information of the third-party service, and the preset request set does not include the identification information of the third-party service, the first business data is obtained by calling the third-party service through the first thread. Since the request set does not include the identification information of the third-party service, it means that the third-party service is not currently called by other threads, so it can ensure that only one thread (i.e., the first thread) calls the third-party service, avoiding the situation where the third-party service is overloaded when multiple threads request the third-party service at the same time, effectively reducing the pressure on the third-party service, thereby ensuring that the normal operation of the third-party service will not be affected during the execution of the data request.

[0178] An embodiment of the present application provides a computer program product, including a computer program, which is executed by a processor to implement the various processes of the above-mentioned data processing method embodiment and can achieve the same technical effect. To avoid repetition, it will not be repeated here.

[0179] The systems, devices, modules or units described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.

[0180] For the convenience of description, the above device is described in various units according to their functions. Of course, when implementing the present application, the functions of each unit can be implemented in the same or multiple software and / or hardware.

[0181] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that include computer-usable program code.

[0182] The present application is described 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 application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0183] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0184] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0185] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0186] The memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.

[0187] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.

[0188] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0189] The present application may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. The present application may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules may be located in local and remote computer storage media, including storage devices.

[0190] Each embodiment in this application is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0191] The above is only an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.

Claims

1. A data processing method, characterized in that: include: In response to a request instruction of the first thread for the first business data, the request instruction includes identification information of a third-party service, and the preset request set does not include the identification information of the third-party service; The first business data is obtained by calling the third-party service through the first thread.

2. The method according to claim 1, characterized in that The method further comprises: In response to the preset request set including the identification information of the third-party service, and the cache pool storing the first business data, the first business data is obtained from the cache pool through the first thread.

3. The method according to claim 2, characterized in that The method further comprises: In response to the preset request set including identification information of the third-party service, and the cache pool not storing the first business data, the third-party service is called through the first thread to obtain the first business data.

4. The method according to claim 2 or 3, characterized in that: After the first thread is used to call the third-party service to obtain the first business data, the method further includes: The first service data is stored in the cache pool.

5. The method according to claim 2, characterized in that: The acquiring the first service data from the cache pool includes: In response to querying the first service data in the cache pool according to a preset frequency, acquiring the first service data from the cache pool; or, The first thread is controlled to be in a waiting state; in response to a first notification of stopping waiting sent by a second thread, the first business data is obtained from the cache pool through the first thread; the second thread is a thread that requests the third-party service and is different from the first thread.

6. The method according to claim 1, characterized in that After the first thread is used to call the third-party service to obtain the first business data, the method further includes: In response to the third thread currently being in the waiting state, the third thread is controlled to stop waiting.

7. The method according to claim 1, characterized in that In response to the request instruction of the first thread for the first business data, the request instruction includes identification information of the third-party service, and the preset request set does not include the identification information of the third-party service, the method further includes: The identification information of the third-party service is stored in the preset request set.

8. A data processing device, characterized in that: include: A response module, configured to respond to a request instruction of the first thread for the first business data, wherein the request instruction includes identification information of a third-party service, and a preset request set does not include identification information of the third-party service; A calling module is used to call the third-party service through the first thread to obtain the first business data.

9. An electronic device, characterized in that: The method comprises a processor and a memory electrically connected to the processor, wherein the memory stores a computer program, and the processor is used to call and execute the computer program from the memory to implement the data processing method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that: The storage medium is used to store a computer program, and the computer program can be executed by a processor to implement the data processing method according to any one of claims 1 to 7.

11. A computer program product, characterized in that The method comprises a computer program, wherein the computer program is executed by a processor to implement the data processing method according to any one of claims 1 to 7.