CDN (Content Delivery Network) scene-oriented process state detection method and device, equipment and medium

By releasing the service traffic to replace part of the releasing request in the CDN scenario, the load problem introduced by process status detection in the prior art is solved, and the effect of reducing system load and improving service performance is achieved.

CN119814611APending Publication Date: 2025-04-11BEIJING BAIDU NETCOM SCI & TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411896398.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-20
Publication Date
2025-04-11

AI Technical Summary

Technical Problem

In the content distribution network (CDN) scenario, the prior art introduces a large load when it is used to detect process status, affecting service performance.

Method used

In the CDN scenario, the service traffic is resilient instead of part of the resilient requests, and the available state of the service traffic is used to detect the process, thereby reducing the number of resilient requests.

Benefits of technology

This method effectively reduces the system load introduced by activation, improves service performance, and improves the reliability of process available state detection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119814611A_ABST
    Figure CN119814611A_ABST
Patent Text Reader

Abstract

The invention provides a CDN scene-oriented process state detection method, device and equipment and a medium, and relates to the field of cloud computing, in particular to the technical fields of video cloud, a CDN and the like. According to the specific implementation scheme, under the condition that the available state of a second process in a historical period is available, whether service flow exists in the second process or not is detected; and under the condition that the service flow exists in the second process, detecting the available state of the second process in the current period according to the state of the existing service flow. According to the embodiment of the invention, the load for detecting process activity can be reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of cloud computing, specifically to technical fields such as video cloud and content distribution network (CDN), and in particular to a process status detection method, device, equipment and medium for CDN scenarios. Background Art

[0002] When a process knows that other processes are available, the process distributes business traffic to other processes.

[0003] Usually a process sends a liveness request to other processes to detect whether the other processes are available. Summary of the invention

[0004] The present disclosure provides a process status detection method, device, equipment and medium for CDN scenarios.

[0005] According to one aspect of the present disclosure, a process status detection method for a CDN scenario is provided, comprising:

[0006] When the available state of the second process in the historical period is available, detecting whether there is business traffic of the second process;

[0007] In the case that the second process has service traffic, the availability status of the second process in the current period is detected according to the status of the existing service traffic.

[0008] According to one aspect of the present disclosure, a process status detection device for a CDN scenario is provided, comprising:

[0009] A service detection module, used for detecting whether there is service traffic in the second process when the available state of the second process in the historical period is available;

[0010] The service activity detection module is used to detect the availability status of the second process in the current period according to the status of the existing service traffic when the second process has service traffic.

[0011] According to another aspect of the present disclosure, there is provided an electronic device, comprising:

[0012] at least one processor; and

[0013] a memory communicatively connected to the at least one processor; wherein,

[0014] The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the process status detection method for the CDN scenario described in any embodiment of the present disclosure.

[0015] According to another aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to enable the computer to execute the process status detection method for CDN scenarios described in any embodiment of the present disclosure.

[0016] According to another aspect of the present disclosure, a computer program product is provided, including a computer program, wherein when the computer program is executed by a processor, the process status detection method for a CDN scenario described in any embodiment of the present disclosure is implemented.

[0017] The disclosed embodiments can reduce the load for detecting process activity.

[0018] 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

[0019] The accompanying drawings are used to better understand the present solution and do not constitute a limitation of the present disclosure.

[0020] Figure 1 It is a flow chart of a process status detection method for CDN scenarios disclosed in an embodiment of the present disclosure;

[0021] Figure 2 is a flow chart of another process status detection method for CDN scenarios disclosed in an embodiment of the present disclosure;

[0022] Figure 3 is a liveness detection scene diagram of a liveness detection request disclosed in an embodiment of the present disclosure;

[0023] Figure 4 It is a scene diagram of the exploration of the service request disclosed in the embodiment of the present disclosure;

[0024] Figure 5 It is a scene diagram of a process state detection method for CDN scenes disclosed in an embodiment of the present disclosure;

[0025] Figure 6 is a scene diagram of a detection process with an unknown state according to an embodiment of the present disclosure;

[0026] Figure 7 It is a scene diagram of the liveness detection process of the liveness detection request disclosed in the embodiment of the present disclosure;

[0027] Figure 8 It is a scenario diagram of the service flow distribution process disclosed in the embodiment of the present disclosure;

[0028] Fig. 9is a scene graph of an unavailable process disclosed according to an embodiment of the present disclosure;

[0029] Fig.10 It is a scene diagram of the process of detecting activation of an unavailable process according to an embodiment of the present disclosure;

[0030] Fig.11 is a schematic diagram of loads of different detection processes disclosed in an embodiment of the present disclosure;

[0031] Fig.12 is a flow chart of another process status detection method for CDN scenarios disclosed in an embodiment of the present disclosure;

[0032] Fig.13 It is a scenario diagram of a process deployment distribution situation disclosed in an embodiment of the present disclosure;

[0033] Fig.14 It is a scene graph of a shared storage space disclosed in an embodiment of the present disclosure;

[0034] Fig.15 It is a structural diagram of a process status detection device for CDN scenarios disclosed in an embodiment of the present disclosure;

[0035] Fig.16 It is a block diagram of an electronic device according to the process status detection method for CDN scenarios disclosed in an embodiment of the present disclosure. DETAILED DESCRIPTION

[0036] The following is a description of exemplary embodiments of the present disclosure 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, it should be recognized by those of ordinary skill in the art that various changes and modifications may 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, descriptions of well-known functions and structures are omitted in the following description.

[0037] Figure 1 This is a flowchart of a process status detection method for CDN scenarios according to an embodiment of the present disclosure. This embodiment can be applied to a situation where a process detects the available status of another process in a content delivery network (CDN). The method of this embodiment can be executed by a process status detection device for CDN scenarios, which can be implemented in software and / or hardware and is specifically configured in an electronic device with certain data computing capabilities, which can be a server device.

[0038] S101. When the availability status of a second process in a historical period is available, detect whether the second process has business traffic.

[0039] The first process periodically detects the availability status of the second process. When the availability status of the second process is available, the first process allocates business traffic to the second process. The historical period is a period adjacent to the current period. In the historical period, the availability status of the second process is available, indicating that in the historical period, the first process can allocate business traffic to the second process. In the current period, the first process needs to re-determine the availability status of the second process. Detecting whether the second process has business traffic can refer to detecting whether the first process sends a business request to the second process in the current period, or it can be understood as whether the first process allocates business traffic to the second process in the current period.

[0040] S102: When there is business traffic in the second process, detect the availability status of the second process in the current period according to the status of the existing business traffic.

[0041] Among them, the second process has business traffic, which actually means that the second process has business traffic allocated by the first process, indicating that the first process sends a business request to the second process, and the second process receives at least one business request sent by the first process. The state of business traffic may include at least one business request success or at least one business request failure. In the prior art, a live request is usually used to detect the process. Considering that the structure of the traffic of the live request is consistent with that of the business traffic, the business traffic reuse can be regarded as the live traffic, that is, the business traffic replaces a part of the live traffic, which can reduce the load of this part of the live traffic, thereby reducing the service load. In an example, process A keeps detecting process B, and process A determines that process B is available, so A keeps returning to B; if process B is always available, in fact, process A can stop the live traffic of process B, because the return of process A to process B is sufficient to indicate that process B is available, and the actual business traffic is used as the live traffic. If there is a problem with the actual business traffic, that is, process B is unavailable.

[0042] In some embodiments, it can be determined whether the available state of the second process in the current cycle is available according to the failed service request. In one example, when there is a failed service request, the available state of the second process in the current cycle is determined to be unavailable; when there is no failed service request, the available state of the second process in the current cycle is determined to be available.

[0043] In some embodiments, it is possible to determine whether the availability status of the second process in the current cycle is available based on the number of failed business requests. In one example, when the number of failed business requests is greater than or equal to a failure number threshold, the availability status of the second process in the current cycle is determined to be unavailable; when the number of failed business requests is less than the failure number threshold, the availability status of the second process in the current cycle is determined to be available. For another example, when the ratio between the failed business requests and the total number of requests in the current cycle is greater than or equal to a ratio threshold, the availability status of the second process in the current cycle is determined to be unavailable; when the ratio between the failed business requests and the total number of requests in the current cycle is less than a ratio threshold, the availability status of the second process in the current cycle is determined to be available.

[0044] In the prior art, for example, there are M*N processes, each of which sends a liveness request to another (M*N-1) process every X seconds to confirm the status of other processes. If other processes are available, the process will send the service request to other processes through consistent hashing. The final effect is that each of the M*N processes has a liveness request and a service request. There are M*N*(M*N-1) liveness requests in each cycle. When M and N are large, the load introduced by the liveness operation is relatively large for the entire system, affecting the performance upper limit of the service.

[0045] According to the technical solution disclosed in the present invention, by replacing a part of the liveness detection requests with business traffic liveness detection, the liveness detection requests required for liveness detection can be reduced. While obtaining the available status of the process in real time, the liveness detection requests introduced by the liveness detection can be reduced, thereby reducing the system load introduced by the liveness detection and improving service performance.

[0046] In an optional embodiment, the first process and the second process belong to the same content distribution network node.

[0047] The first process and the second process belong to different devices, wherein the device can be replaced by a server or a machine, etc. The device to which the first process belongs and the device to which the second process belongs belong to the same node. The embodiment of the present disclosure is applied to an application scenario of a content distribution network.

[0048] In some embodiments, the content distribution network is used to transmit live broadcast data, and the service traffic is live broadcast traffic. The same content distribution network node needs to be merged back to the source. For example, a large number of service requests from viewers in the same live broadcast room are processed by the same content distribution network node, and the content distribution network node can only generate one back to the source, which requires all processes in the content distribution network node to participate in jointly selecting a process that truly goes back to the source. Therefore, the processes in the content distribution network node need to constantly perceive the available status of each other process.

[0049] It can be seen that by configuring the first process and the second process in the same content distribution network node, the process detection load in the content distribution scenario can be reduced, the service pressure of the content distribution network can be reduced, and the performance of the content distribution network can be improved.

[0050] Figure 2 It is a flowchart of another process status detection method for CDN scenarios disclosed in accordance with an embodiment of the present disclosure, which is further optimized and expanded based on the above technical solution, and can be combined with the above optional implementation methods. The detection of the available status of the second process in the current cycle based on the status of the existing business traffic is specifically as follows: when the status of the existing business traffic is successful, the available status of the second process in the current cycle is determined to be available; when the status of the existing business traffic is failed, the available status of the second process in the current cycle is determined to be unavailable.

[0051] S201: When the availability status of a second process in a historical period is available, detect whether the second process has business traffic.

[0052] S202: When there is business traffic in the second process and the state of the existing business traffic is success, determine that the available state of the second process in the current period is available.

[0053] The status of the existing service traffic is successful, which may mean that the response results of all service requests in the current cycle are successful, indicating that the second process can run normally and correctly, and it can be determined that the available status of the second process in the current cycle is available. The response result of the service request is successful, which may mean that the second process can process the service request normally, timely and correctly.

[0054] S203: When there is business traffic in the second process and the state of the existing business traffic is failure, determine that the available state of the second process in the current period is unavailable.

[0055] The state of the existing service traffic is failure, which may mean that the response result of at least one service request in the current cycle is failure, indicating that the second process cannot run normally or correctly, and it can be determined that the available state of the second process in the current cycle is unavailable. The response result of the service request is failure, which may mean that the second process cannot process at least one service request normally, cannot process in time, and cannot process correctly.

[0056] In an optional embodiment, when the status of the existing business traffic is failure, after determining that the available status of the second process in the current period is unavailable, the process status detection method for the CDN scenario also includes: sending a liveness detection request to the second process; and detecting the available status of the second process in the current period based on a response result of the liveness detection request.

[0057] Among them, the liveness detection request is dedicated to the liveness detection between processes. The first process sends a liveness detection request to the second process, and the second process responds to the liveness detection request and feeds back to the first process. The first process determines the available status of the second process based on the response result fed back by the second process. When the available status of the second process is unavailable, the first process will no longer allocate business traffic to the second process, that is, the first process will not send a business request to the second process at this time. At this time, the first process cannot detect the available status of the second process through business traffic, and can only detect the available status of the second process by using the liveness detection request.

[0058] When it is determined according to the response result of the liveness detection request that the second process timely and correctly processes the liveness detection request, the available state of the second process in the current cycle is determined to be available. When it is determined according to the response result of the liveness detection request that the second process cannot timely and / or cannot correctly process the liveness detection request, the available state of the second process in the current cycle is determined to be unavailable.

[0059] It can be seen that by using the liveness request to detect the availability of the second process after determining that the second process is unavailable, it can be ensured that when the service traffic cannot be used for liveness detection, the liveness request is continued to be used for liveness detection, thereby achieving the sustainability of the available status detection process.

[0060] In an optional embodiment, the process status detection method for the CDN scenario also includes: sending a liveness detection request to the second process when there is no business traffic in the second process; and detecting the available status of the second process in the current cycle based on the response result of the liveness detection request.

[0061] When there is no business traffic in the second process, the business traffic cannot be used to detect the available state of the second process. At this time, the available state of the second process can be detected by a liveness detection request. In some embodiments, when the second process is just started, there is no business traffic in the second process. At this time, a liveness detection request is used for liveness detection. In some embodiments, when the second process recovers from an unavailable state to an available state, there is no business traffic in the second process. At this time, a liveness detection request is used for liveness detection.

[0062] It can be seen that by using the liveness request to detect the available state of the second process when there is no business traffic in the second process, it is ensured that the liveness request is used for liveness detection when business traffic cannot be used for liveness detection, thereby achieving the sustainability of the available state detection process.

[0063] In an optional embodiment, the process status detection method for the CDN scenario also includes: also including: when the available status of the second process in the historical period is unknown, sending a liveness detection request to the second process; based on the response result of the liveness detection request, detecting the available status of the second process in the current period; when the available status of the second process in the current period is available, allocating business traffic to the second process.

[0064] The unknown availability state of the second process may refer to the availability state of the second process when the second process is just started and has not yet been detected. In the unknown availability state stage, usually there is no business traffic in the second process, and at this time, a detection request is used for detection.

[0065] It can be seen that by using the liveness request to detect the available state of the second process when the available state of the second process is unknown, the sustainability of the available state detection process is achieved.

[0066] The embodiments of the present disclosure use a liveness request to detect the available status of the second process for the above-mentioned multiple scenarios. When the available status cannot be detected using business traffic, the available status of the second process can still be continuously obtained, thereby improving the reliability of the available status detection.

[0067] According to the technical solution disclosed in the present invention, by determining that the second process is unavailable when the existing business traffic fails, and determining that the second process is available when the existing business traffic succeeds, the available state of the second process can be judged based on the success or failure result of the second process's response to the business request, and the available state of the second process can be considered from two dimensions of process activity and business response status, thereby improving the reliability and accuracy of the detection result of the available state of the second process; and by multiplexing the available state of the process based on the response result of the business traffic, the load of the central processing unit introduced by the activity detection can be reduced.

[0068] In the prior art, such as Figure 3 As shown in FIG, each of the four processes on the hash ring performs liveness detection between two processes through liveness detection requests (dashed arrows). Figure 4 As shown, when it is determined that all processes on the hash ring are available, the service request is allocated between every two processes (solid arrows). In a scenario of process status detection for CDN scenarios provided by the embodiment of the present disclosure, as shown in FIG. Figure 5As shown, this is true for any two processes: Specifically, for any process 0, the available states of process 1, process 2, and process 3 are divided into several stages:

[0069] Initial stage: Figure 6 As shown, the available status of process 1, process 2, and process 3 is unknown.

[0070] Live detection phase: Business traffic must be later than live detection traffic, such as Figure 7 As shown, process 0 uses a liveness detection request to detect the liveness of process 1, process 2, and process 3. When it is determined that the liveness detection of process 1, process 2, and process 3 is successful, as shown in FIG. Figure 8 As shown, the business traffic starts to be distributed to process 1, process 2 and process 3; Fig. 9 As shown, when it is determined that process 2 fails to detect liveness, service traffic is not allocated to process 2, such as Fig.10 As shown, however, process 0 will periodically use a detection request to detect the activity of process 2.

[0071] Business traffic multiplexing stage: At this time, there is already business traffic from process 0 to process 2. The business traffic is used to update the available status of process 2 to maintain the available status of process 2.

[0072] If the service traffic from process 0 to process 2 is normal, that is, the service requests are all successful, then it is no longer necessary to periodically use the detection request to detect the activity, but only to periodically use the service traffic to detect the activity.

[0073] If there is a failed request in the business traffic from process 0 to process 2, process 2 will be marked as unavailable by process 0, and no new business traffic will be allocated to process 2. Since there is no business traffic from process 0 to process 2, in order to perceive whether process 2 has recovered and is available, it is necessary to rely on the liveness request. In the next detection cycle, when the liveness request from process 0 to process 2 is successfully responded, process 2 is considered to have entered the survival-allocatable traffic state, and business traffic will flow between process 0 and process 2 later.

[0074] When all processes are normal and there is business traffic (most scenarios), using business requests to replace liveness requests for liveness detection can eliminate the load previously introduced by liveness detection. Under the same business load, the overall CPU (Central Processing Unit) occupancy rate is reduced, as shown in the following example: Fig.11As shown, the blue area is the business load, and the red area is the liveness detection load. In the existing method, the red curve is the overall CPU occupancy rate of the system. Using the process status detection method for CDN scenarios in the embodiment of the present disclosure, business requests are used instead of liveness detection requests for liveness detection, and the load of some liveness detection requests is replaced by the load of business requests. Correspondingly, the blue curve is the overall CPU occupancy rate of the system. Fig.11 As shown, the overall CPU occupancy rate of the system in the embodiment of the present disclosure (the height of the blue curve) is less than the overall CPU occupancy rate of the system in the prior art (the height of the red curve).

[0075] Fig.12 It is a flowchart of another process status detection method for CDN scenarios disclosed in an embodiment of the present disclosure, which is further optimized and expanded based on the above technical solution, and can be combined with the above optional implementation methods. The process status detection method for CDN scenarios is optimized as follows: when the available state of the second process in the historical period is available, detecting whether the second process has business traffic, which is specifically: in the shared storage space of the target device to which the first process belongs, querying the available state of the second process in the shared storage space to obtain the query result; wherein the shared storage space is used for process sharing belonging to the target device; at least detecting whether the available state of the second process in the current period exists in the shared storage space according to the query result; when the available state of the second process in the current period does not exist in the shared storage space, detecting the available state of the second process in the historical period according to the query result; when the available state of the second process in the historical period is available, detecting whether the second process has business traffic; and the process status detection method for CDN scenarios is optimized as follows: storing the available state of the second process in the current period in the shared storage space of the target device to which the first process belongs.

[0076] S1201. In a shared storage space of a target device to which the first process belongs, query the available status of a second process in the shared storage space to obtain a query result; wherein the shared storage space is used for sharing by processes belonging to the target device.

[0077] Among them, the first process is configured on the target device. The process of the target device may refer to a process configured on the target device. At least one process is configured on the target device, and the first process is one of the processes. The shared storage space is used to store the available status detected by other processes. The second process belongs to the process that can store the available status in the shared storage space. Each process configured on the target device has the authority to access the shared storage space of the target device, and obtains the available status of the stored process from the shared storage space. It should be noted that the available status stored in the shared storage space is usually the available status of the process configured on the device other than the target device, and the shared storage space may not store the available status of the process configured on the target device. The query result may include the available status of the second process in at least one cycle, or there is no available status of the second process.

[0078] In fact, the available status and structure of each process configured on the target device are usually consistent. Accordingly, one process can reuse the status data of other processes detected by other processes. Through multiplexing, the number of times that the processes of the same device detect the available status of the same process multiple times in the same cycle can be reduced, thereby reducing the consumption of detection resources.

[0079] S1202: Detect, at least according to the query result, whether the second process is in an available state in the current cycle in the shared storage space.

[0080] In fact, the processes other than the first process configured by the target device may have already acquired the available status of the second process in the current cycle in advance. At this time, the first process may not need to detect the available status of the second process again, and can directly reuse the available status of the second process recorded in the shared storage space. In some embodiments, the available status of the second process stored in the shared storage space in the current cycle is available, and the first process determines that the available status of the second process in the current cycle is available; the available status of the second process stored in the shared storage space in the current cycle is unavailable, and the first process determines that the available status of the second process in the current cycle is unavailable.

[0081] S1203: When the available status of the second process in the current period does not exist in the shared storage space, detect the available status of the second process in the historical period according to the query result.

[0082] Among them, there is no available status of the second process in the current cycle in the shared storage space, and the first process cannot reuse the available status of the second process in the current cycle detected by the process belonging to the same target device. At this time, the first process needs to detect the available status of the second process in the current cycle.

[0083] In some embodiments, the query result may include the available status of the second process stored in the shared storage space in at least one cycle. When the current cycle does not exist in each cycle, or the query result does not include the available status of the second process, it is determined that the available status of the second process in the current cycle does not exist in the shared storage space. When the current cycle exists in each cycle, it is determined that the available status of the second process in the current cycle exists in the shared storage space.

[0084] In some embodiments, when the query result includes the available status of the second process stored in the shared storage space in at least one cycle, the available status of the historical cycle adjacent to the current cycle is obtained. When the available status of the historical cycle is available, the available status of the current cycle is detected according to the existing business traffic, or when there is no business traffic, the available status of the current cycle is detected by using a probe request; when the available status of the historical cycle is unavailable, the available status of the current cycle is detected by using a probe request. When the query result does not include the available status of the second process, it is determined that the query result does not include the available status of the historical cycle, and accordingly, it is determined that the available status of the second process in the historical cycle is unknown. For example, in a scenario where the second process has just been started, the available status of the second process in the current cycle is detected by using a probe request.

[0085] S1204: When the available state of the second process in the historical period is available, detect whether there is business traffic in the second process.

[0086] S1205: In the case where the second process has service traffic, detect the availability status of the second process in the current period according to the status of the existing service traffic.

[0087] S1206: Store the available state of the second process in the current period in the shared storage space of the target device to which the first process belongs.

[0088] Among them, after determining the available status of the second process in the current cycle, the first process stores the available status of the second process in the current cycle in a shared storage space, so as to share the available status of the second process in the current cycle with the processes on the target device, so that these processes can reuse the available status of the second process in the current cycle.

[0089] In an optional embodiment, detecting whether the second process is in an available state in the current cycle in the shared storage space at least based on the query result includes: obtaining the type of communication link between the first process and the second process; and detecting whether the second process is in an available state in the current cycle in the shared storage space based on the communication link type and the query result.

[0090] Wherein, the communication link type may include a short link and a long link. The communication link type is used to determine the period to which the available state of the second period belongs. Different communication link types correspond to different ways of determining the period. Accordingly, when the query result includes the available state of the second process, at least one period corresponding to the available state of the second process included in the query result is determined according to the communication link type, and whether there is a current period in each period is detected, and when each period does not include the current period, whether there is a historical period is further detected in each period. When the query result does not include the available state of the second process, it is determined that the available state of the second process in the current period is unknown, and the available state in the historical period is unknown, based only on the query result.

[0091] It can be seen that, based on the query results, the available status detection method corresponding to different communication link types is further determined according to the communication link type between the first process and the second process. According to the detection method of the available status corresponding to the communication link type, combined with the available status included in the query results, it is judged whether the query results include the available status of the second process in the current cycle, so as to judge whether the available status of the second process in the current cycle exists in the shared storage space. The detection method of the available status can be subdivided according to the communication link type to adapt to more process communication scenarios and increase the flexibility of detecting the available status of the process.

[0092] In an optional embodiment, detecting whether the shared storage space has an available status of the second process in the current cycle based on the communication link type and the query result includes: when the communication link type is a long link, detecting whether the query result includes the existing long links of the second process; when the number of existing long links is zero, or the communication link type is a short link, obtaining the latest available status and update time of the second process in the query result; based on the update time and the latest available status, detecting whether the shared storage space has an available status of the second process in the current cycle.

[0093] The existing long link may refer to an already established long link with the second process. The number of existing long links is greater than or equal to zero. When there is at least one process in the target device that has a long link with the second process, correspondingly, the number of existing long links is at least one. In fact, the second process can establish a long link with the process of the target device, indicating that the second process has the ability to provide services normally, that is, the second process is available. When all processes in the target device do not have a long link established with the second process, this does not mean that the second process is unavailable, but only means that there is no demand for business traffic between all processes in the target device and the second process. Accordingly, it is necessary to further judge the availability of the second process based on the query results.

[0094] Short links are different from long links in that they are short-lived. For short links, the availability status of the second process can be determined based on the availability status that is periodically detected and recorded. Similarly, when a long link is not established, the availability status of the second process can be determined based on the availability status that is periodically detected and recorded between processes.

[0095] In fact, each available state stored in the shared storage space has a corresponding update time. The update time may refer to the detection time of the corresponding available state. The latest available state may refer to the available state closest to the current time. The update time of the latest available state is used to determine whether the available state is the available state of the current cycle, thereby determining whether there is an available state of the second process in the current cycle in the shared storage space.

[0096] It can be seen that, by detecting the available status of the second process in the current cycle based on the existing long links for the long link scenario, and when the number of existing long links is zero, detecting the available status of the second process in the current cycle according to the latest available status and update time of the query results, and detecting the available status of the second process in the current cycle according to the latest available status and update time of the query results for the short link scenario, the available status of the second process in the current cycle can be detected for the communication scenarios of long links and short links respectively, thereby improving the flexibility of available status detection in different communication scenarios, covering more communication scenarios, and improving the reliability of available status detection.

[0097] In an optional embodiment, detecting whether the second process in the current cycle is in the shared storage space based on the update time and the latest available status includes: calculating the time difference between the update time and the current time; comparing the time difference with a sensitivity time difference threshold to obtain a comparison result; and detecting whether the second process in the current cycle is in the shared storage space based on the comparison result and the latest available status.

[0098] Among them, the time difference value is used to determine whether the latest available state is the available state of the current cycle. The sensitivity time difference threshold may refer to the duration of the cycle, which is used as a standard for determining the cycle to which the available state belongs. The sensitivity time difference threshold may be set according to the scenario, for example, determined according to the type of business traffic. In some embodiments, the business traffic is a dynamic resource and the sensitivity time difference threshold is relatively small; for another example, the business traffic is a static resource and the sensitivity time difference threshold is relatively large. In one example, the business traffic is live broadcast traffic and the sensitivity time difference threshold is relatively small.

[0099] When the time difference is less than or equal to the sensitivity time difference threshold, the latest available state is determined as the available state of the current cycle, and the shared storage space contains the available state of the second process in the current cycle. When the time difference is greater than the sensitivity time difference threshold, the latest available state is determined as the available state of the historical cycle, that is, the available state of the current cycle does not exist in the query result, and the shared storage space does not contain the available state of the second process in the current cycle.

[0100] It can be seen that by configuring the sensitivity time difference threshold and comparing the time difference between the update time and the current time with the sensitivity time difference threshold, the comparison result is used to judge the available status of the current period. According to business needs, the period adapted to business needs can be flexibly set, and then the available status of the current period can be judged according to the available status detection period adapted to the business. The detection scenarios of the available status can be increased, and the available status can be detected in more detection scenarios, thereby improving the detection reliability and accuracy of the available status.

[0101] In an optional embodiment, in the shared storage space of the target device to which the first process belongs, querying the available status of the second process in the shared storage space to obtain a query result, including: in the shared storage space, querying the shared column corresponding to the second process; the shared storage space includes at least one shared row and at least one shared column, wherein the shared row corresponds to status data of other processes detected by the same target process; the shared column corresponds to status data of the same other process detected by different target processes, the target process belongs to the target device, and the other processes belong to processes of other devices, and the other devices are different from the target device; obtaining the status data of the second process stored in the shared column corresponding to the second process and using it as the query result; the status data includes at least one of the following: status update data and existing long links, and the status update data includes: available status and update time.

[0102] The first process is one of the target processes. The second process is one of the other processes. There may be at least one other device, and each other device is different from the target device. The different other processes may be processes of different other devices or processes of the same other device.

[0103] The shared storage space can be divided to obtain at least one shared block, and the elements of each shared block storage generate a matrix, where one row of the matrix is ​​a shared row, and one column of the matrix is ​​a shared column. The elements in the same shared row are the status data detected by the same target process of the target device. The elements in the same shared column are the status data of the same other process detected. The elements in the same shared column correspond to the same other process. The elements in the shared column corresponding to the second process are all the status data of the second process.

[0104] Wherein, when the communication link type is a long link, the state data may include the stock long link and / or the state update data, or the state data is empty. When the communication link type is a short link, the state data includes the state update data, or the state data is empty.

[0105] In some embodiments, a long link is established between the first process and the second process. After the long link is established, the first process stores the number of established long links in the shared storage space. Specifically, the first process adds the stock long link to the location corresponding to the second process in the shared storage space.

[0106] It can be seen that by mapping the shared storage space into a matrix, and independently storing the status data of each target process for each other process in the element position corresponding to each shared row and shared column in the matrix, a one-to-one correspondence between the status data and each matrix element can be achieved, so that the status data of the second process can be quickly located based on the shared column, thereby improving the query speed and accuracy of the available status.

[0107] According to the technical solution disclosed in the present invention, by configuring a shared storage space on the target device to which the first process belongs, and at the same time each process on the target device stores and reuses the available status of the process in the shared storage space, it is possible to reduce the number of times that processes on the same device detect the available status of the same process multiple times in the same cycle, reduce the consumption of detection resources, and improve the detection efficiency.

[0108] If the traffic from A to B is normal, there is no need for periodic detection. Only periodic detection within the target device is required. If no detection is found within the target device, periodic detection is required. There are different detection logics depending on the type of traffic.

[0109] In a specific example, each of the M devices is configured with N processes. For the N processes on device 1, each process must sense each other and the status of the other (M-1)*N processes. Therefore, the N processes on the same device can share their perceived results at the device granularity.

[0110] like Fig.13 As shown, for a single device ( Fig.13For the machine shown in , multiple processes jointly open up a shared storage space, which is divided into N*(M*N) parts, that is, an N*(M*N) matrix. The i-th process only needs to update its own observation results of other (M*N-1) processes, that is, the state data, where the (i,j)-th block of memory stores the observation results of the i-th process of the local machine on the j-th process of the whole node (all processes), where the observation results are state data based on the liveness request or the observation results based on the business request, and the (i,j)-th block of memory can be the matrix element of the i-th row and j-th column.

[0111] The maintenance of process status can be divided into two cases: long link and short link. At the same time, the actual deployment process should be considered.

[0112] For short links, the (i, j)th block of memory stores a combination of (bool, int), which represents the state (true or false) observed by the i-th process on the j-th process, as well as the timestamp of this observed state, that is, the latest available state and the corresponding update time, where true means available and false means unavailable. For any target process on the target device, the status update data of each column in the shared memory space will be checked in each detection cycle to find the most recently updated available state. If the update time of the latest available state of the k-th column and the current time meet the detection sensitivity requirements, for example, the time difference between the update time and the current time is less than or equal to the sensitivity time difference threshold, the target process directly reuses the latest available state of the k-th process.

[0113] For long links, the (i, j)th memory block stores a combination of (bool, int), which represents the state (true or false) observed by the i-th process on the j-th process, and the current number of long links from the i-th process to the j-th process. For any target process on the target device, the long links in each column of the shared memory space will be checked in each detection cycle. If the sum of the number of long links in the k-th column is greater than 0, the target process determines that there is currently a long link in stock, and the k-th process can be directly considered available.

[0114] According to an embodiment of the present disclosure, Fig.15 This is a structural diagram of a process status detection device for CDN scenarios in an embodiment of the present disclosure. The embodiment of the present disclosure is applicable to a situation where one process detects the available status of another process. The device is implemented using software and / or hardware and is specifically configured in an electronic device with certain data computing capabilities.

[0115] like Fig.15The process status detection device 1500 for CDN scenarios shown in the figure includes: a service detection module and a service activity detection module.

[0116] The service detection module 1501 is used to detect whether there is service traffic in the second process when the available state of the second process in the historical period is available;

[0117] The service activity detection module 1502 is used to detect the availability status of the second process in the current period according to the status of the existing service traffic when the second process has service traffic.

[0118] According to the technical solution disclosed in the present invention, by replacing a part of the liveness detection requests with business traffic liveness detection, the liveness detection requests required for liveness detection can be reduced. While obtaining the available status of the process in real time, the liveness detection requests introduced by the liveness detection can be reduced, thereby reducing the system load introduced by the liveness detection and improving service performance.

[0119] Optionally, the service activity detection module 1502 includes:

[0120] an available detection unit, configured to determine, when the state of the existing service flow is successful, that the available state of the second process in the current cycle is available;

[0121] The unavailable detection unit is used to determine that the available state of the second process in the current cycle is unavailable when the state of the existing service traffic is failed.

[0122] Optionally, the process status detection device for CDN scenarios further includes:

[0123] A first liveness detection request sending module is used to send a liveness detection request to the second process after determining that the available state of the second process in the current cycle is unavailable when the state of the existing service traffic is failed;

[0124] The first liveness detection request response module is used to detect the availability status of the second process in the current cycle according to the response result of the liveness detection request.

[0125] Optionally, the process status detection device for CDN scenarios further includes:

[0126] A second liveness detection request sending module, configured to send a liveness detection request to the second process when there is no service traffic in the second process;

[0127] The second liveness detection request response module is used to detect the availability status of the second process in the current cycle according to the response result of the liveness detection request.

[0128] Optionally, the process status detection device for CDN scenarios further includes:

[0129] A third liveness detection request sending module is used to send a liveness detection request to the second process when the available state of the second process in the historical period is unknown;

[0130] a third liveness detection request response module, configured to detect the availability status of the second process in a current period according to a response result of the liveness detection request;

[0131] The service flow distribution module is used to distribute service flow to the second process when the available state of the second process in the current cycle is available.

[0132] Optionally, the service detection module 1501 includes:

[0133] a status query unit, configured to query the available status of the second process in the shared storage space of the target device to which the first process belongs, and obtain a query result; wherein the shared storage space is used for sharing by the processes belonging to the target device;

[0134] a current state determination unit, configured to detect whether the second process is in an available state in a current cycle in the shared storage space at least according to the query result;

[0135] a historical status judgment unit, configured to detect the available status of the second process in a historical period according to the query result when the available status of the second process in the current period does not exist in the shared storage space;

[0136] A service flow detection unit, configured to detect whether the second process has service flow when the available state of the second process in the historical period is available;

[0137] The device also includes:

[0138] The state storage module is used to store the available state of the second process in the current cycle in the shared storage space of the target device to which the first process belongs.

[0139] Optionally, the current state determination unit includes:

[0140] A link type acquisition subunit, used to acquire a communication link type between the first process and the second process;

[0141] The current state detection subunit is used to detect whether there is an available state of the second process in the current cycle in the shared storage space according to the communication link type and the query result.

[0142] Optionally, the current state detection subunit is used to:

[0143] When the communication link type is a long link, detecting whether the query result includes the stock long link of the second process;

[0144] When the number of the existing long links is zero, or the communication link type is a short link, obtaining the latest available status and update time of the second process in the query result;

[0145] According to the update time and the latest available status, it is detected whether there is an available status of the second process in the current cycle in the shared storage space.

[0146] Optionally, the current state detection subunit is used to:

[0147] Calculate the time difference between the update time and the current time;

[0148] Comparing the time difference value with the sensitivity time difference threshold to obtain a comparison result;

[0149] According to the comparison result and the latest available status, it is detected whether there is an available status of the second process in the current cycle in the shared storage space.

[0150] Optionally, the status query unit includes:

[0151] a shared column query subunit, configured to query the shared column corresponding to the second process in the shared storage space; the shared storage space includes at least one shared row and at least one shared column, wherein the shared row corresponds to the status data of other processes detected by the same target process; the shared column corresponds to the status data of the same other process detected by different target processes, the target process belongs to the target device, the other process belongs to the process of other devices, and the other devices are different from the target device;

[0152] The query result acquisition subunit is used to obtain the status data of the second process stored in the shared column corresponding to the second process and use it as the query result; the status data includes at least one of the following: status update data and existing long links, and the status update data includes: available status and update time.

[0153] Optionally, the first process and the second process belong to the same content distribution network node.

[0154] The above-mentioned process status detection device for CDN scenarios can execute the process status detection method for CDN scenarios provided by any embodiment of the present disclosure, and has the corresponding functional modules and beneficial effects for executing the process status detection method for CDN scenarios.

[0155] In the technical solution of the present 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.

[0156] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium and a computer program product.

[0157] Fig.16 A schematic area diagram of an example electronic device 1600 that can be used to implement an embodiment of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or required herein.

[0158] like Fig.16 As shown, the device 1600 includes a computing unit 1601, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 1602 or a computer program loaded from a storage unit 1608 into a random access memory (RAM) 1603. In the RAM 1603, various programs and data required for the device 1600 instructions can also be stored. The computing unit 1601, the ROM 1602, and the RAM 1603 are connected to each other via a bus 1604. An input / output (I / O) interface 1605 is also connected to the bus 1604.

[0159] A number of components in the device 1600 are connected to the I / O interface 1605, including: an input unit 1606, such as a keyboard, a mouse, etc.; an output unit 1607, such as various types of displays, speakers, etc.; a storage unit 1608, such as a disk, an optical disk, etc.; and a communication unit 1609, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 1609 allows the device 1600 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.

[0160] The computing unit 1601 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 1601 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 1601 performs the various methods and processes described above, such as a process state detection method for a CDN scenario. For example, in some embodiments, the process state detection method for a CDN scenario may be implemented as a computer software program, which is tangibly included in a machine-readable medium, such as a storage unit 1608. In some embodiments, part or all of the computer program may be loaded and / or installed on the device 1600 via the ROM 1602 and / or the communication unit 1609. When the computer program is loaded into the RAM 1603 and executed by the computing unit 1601, one or more steps of the process state detection method for the CDN scenario described above may be performed. Alternatively, in other embodiments, the computing unit 1601 may be configured to execute the process status detection method for the CDN scenario in any other appropriate manner (for example, by means of firmware).

[0161] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard objects (ASSPs), systems on chips (SOCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0162] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, implements the functions / instructions specified in the flow chart and / or the area diagram. The program code may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0163] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0164] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0165] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.

[0166] A computer system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The relationship between the client and the server is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or a cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services. The server may also be a server of a distributed system, or a server combined with a blockchain.

[0167] Artificial intelligence is a discipline that studies how to use computers to simulate certain human thought processes and intelligent behaviors (such as learning, reasoning, thinking, planning, etc.). It includes both hardware-level and software-level technologies. Artificial intelligence hardware technologies generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, and big data processing; artificial intelligence software technologies mainly include computer vision technology, speech recognition technology, natural language processing technology, machine learning / deep learning technology, big data processing technology, knowledge graph technology, and other major directions.

[0168] Cloud computing refers to a technology system that uses network access to elastically scalable shared physical or virtual resource pools. Resources can include servers, instruction systems, networks, software, applications, and storage devices, and can be deployed and managed on demand and in a self-service manner. Cloud computing technology can provide efficient and powerful data processing capabilities for the application of technologies such as artificial intelligence and blockchain, as well as model training.

[0169] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps recorded in this disclosure can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution provided by this disclosure can be achieved, and this document does not limit this.

[0170] The above specific implementations do not constitute a limitation on the protection scope of the present disclosure. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present disclosure shall be included in the protection scope of the present disclosure.

Claims

1. A process status detection method for a CDN scenario, applied to a first process, comprising: When the available state of the second process in the historical period is available, detecting whether there is business traffic of the second process; In the case that the second process has service traffic, the availability status of the second process in the current period is detected according to the status of the existing service traffic.

2. The method according to claim 1, wherein: The detecting the available state of the second process in the current cycle according to the state of the existing service traffic includes: When the state of the existing service flow is success, determining that the available state of the second process in the current cycle is available; When the state of the existing service traffic is failure, it is determined that the available state of the second process in the current period is unavailable.

3. The method according to claim 2, in the case where the state of the existing service traffic is failure, after determining that the available state of the second process in the current cycle is unavailable, further comprises: Sending a liveness request to the second process; According to the response result of the detection request, the availability status of the second process in the current cycle is detected.

4. The method according to claim 1, further comprising: When there is no service traffic in the second process, sending a liveness detection request to the second process; According to the response result of the detection request, the availability status of the second process in the current cycle is detected.

5. The method according to claim 1, further comprising: When the availability status of the second process in the historical period is unknown, sending an activity detection request to the second process; Detecting the availability status of the second process in the current cycle according to the response result of the liveness detection request; When the available state of the second process in the current period is available, the service traffic is allocated to the second process.

6. The method according to claim 1, wherein: When the availability status of the second process in the historical period is available, detecting whether there is service traffic in the second process includes: In a shared storage space of a target device to which the first process belongs, querying the available state of a second process in the shared storage space to obtain a query result; wherein the shared storage space is used for sharing by processes belonging to the target device; At least detecting whether the second process is in an available state in a current cycle in the shared storage space according to the query result; When the available state of the second process in the current period does not exist in the shared storage space, detecting the available state of the second process in the historical period according to the query result; When the available state of the second process in the historical period is available, detecting whether there is business traffic of the second process; The method further comprises: The available state of the second process in the current period is stored in the shared storage space of the target device to which the first process belongs.

7. The method according to claim 6, wherein: The detecting whether the second process is in an available state in the current cycle in the shared storage space at least according to the query result includes: Obtaining a communication link type between the first process and the second process; According to the communication link type and the query result, it is detected whether there is an available state of the second process in the current cycle in the shared storage space.

8. The method according to claim 7, wherein: The detecting, according to the communication link type and the query result, whether there is an available state of the second process in the current cycle in the shared storage space includes: When the communication link type is a long link, detecting whether the query result includes the stock long link of the second process; When the number of the existing long links is zero, or the communication link type is a short link, obtaining the latest available status and update time of the second process in the query result; According to the update time and the latest available status, it is detected whether there is an available status of the second process in the current cycle in the shared storage space.

9. The method according to claim 8, wherein: The detecting, according to the update time and the latest available status, whether there is an available status of the second process in the current cycle in the shared storage space includes: Calculate the time difference between the update time and the current time; Comparing the time difference value with the sensitivity time difference threshold to obtain a comparison result; According to the comparison result and the latest available status, it is detected whether there is an available status of the second process in the current cycle in the shared storage space.

10. The method according to claim 6, wherein: The step of querying, in a shared storage space of a target device to which the first process belongs, an available state of a second process in the shared storage space to obtain a query result includes: In the shared storage space, query the shared column corresponding to the second process; the shared storage space includes at least one shared row and at least one shared column, wherein the shared row corresponds to the status data of other processes detected by the same target process; the shared column corresponds to the status data of the same other process detected by different target processes, the target process belongs to the target device, the other process belongs to the process of other devices, and the other devices are different from the target device; The state data of the second process stored in the shared column corresponding to the second process is obtained as a query result; the state data includes at least one of the following: state update data and existing long links, and the state update data includes: available status and update time.

11. The method according to claim 1, wherein: The first process and the second process belong to the same content distribution network node.

12. A process status detection device for CDN scenarios, comprising: A service detection module, used for detecting whether there is service traffic in the second process when the available state of the second process in the historical period is available; The service activity detection module is used to detect the availability status of the second process in the current period according to the status of the existing service traffic when the second process has service traffic.

13. The device according to claim 12, wherein: The business activity detection module includes: an available detection unit, configured to determine, when the state of the existing service flow is successful, that the available state of the second process in the current cycle is available; The unavailable detection unit is used to determine that the available state of the second process in the current cycle is unavailable when the state of the existing service traffic is failed.

14. The apparatus according to claim 13, further comprising: A first liveness detection request sending module is used to send a liveness detection request to the second process after determining that the available state of the second process in the current cycle is unavailable when the state of the existing service traffic is failed; The first liveness detection request response module is used to detect the availability status of the second process in the current cycle according to the response result of the liveness detection request.

15. The apparatus according to claim 12, further comprising: A second liveness detection request sending module, configured to send a liveness detection request to the second process when there is no service traffic in the second process; The second liveness detection request response module is used to detect the availability status of the second process in the current cycle according to the response result of the liveness detection request.

16. The apparatus according to claim 12, further comprising: A third liveness detection request sending module is used to send a liveness detection request to the second process when the available state of the second process in the historical period is unknown; a third liveness detection request response module, configured to detect the availability status of the second process in a current period according to a response result of the liveness detection request; The service flow distribution module is used to distribute service flow to the second process when the available state of the second process in the current cycle is available.

17. The device according to claim 12, wherein: The service detection module comprises: a status query unit, configured to query the available status of the second process in the shared storage space of the target device to which the first process belongs, and obtain a query result; wherein the shared storage space is used for sharing by processes belonging to the target device; a current state determination unit, configured to detect whether the second process is in an available state in a current cycle in the shared storage space at least according to the query result; a historical status judgment unit, configured to detect the available status of the second process in a historical period according to the query result when the available status of the second process in the current period does not exist in the shared storage space; A service flow detection unit, configured to detect whether the second process has service flow when the available state of the second process in the historical period is available; The device also includes: The state storage module is used to store the available state of the second process in the current cycle in the shared storage space of the target device to which the first process belongs.

18. The device according to claim 17, wherein: The current state determination unit comprises: A link type acquisition subunit, used to acquire a communication link type between the first process and the second process; The current state detection subunit is used to detect whether there is an available state of the second process in the current cycle in the shared storage space according to the communication link type and the query result.

19. The device according to claim 18, wherein: The current state detection subunit is used to: When the communication link type is a long link, detecting whether the query result includes the stock long link of the second process; When the number of the existing long links is zero, or the communication link type is a short link, obtaining the latest available status and update time of the second process in the query result; According to the update time and the latest available status, it is detected whether there is an available status of the second process in the current cycle in the shared storage space.

20. The device according to claim 19, wherein The current state detection subunit is used to: Calculate the time difference between the update time and the current time; Comparing the time difference value with the sensitivity time difference threshold to obtain a comparison result; According to the comparison result and the latest available status, it is detected whether there is an available status of the second process in the current cycle in the shared storage space.

21. The device according to claim 17, wherein: The status query unit comprises: a shared column query subunit, configured to query the shared column corresponding to the second process in the shared storage space; the shared storage space includes at least one shared row and at least one shared column, wherein the shared row corresponds to the status data of other processes detected by the same target process; the shared column corresponds to the status data of the same other process detected by different target processes, the target process belongs to the target device, the other process belongs to the process of other devices, and the other devices are different from the target device; The query result acquisition subunit is used to obtain the status data of the second process stored in the shared column corresponding to the second process and use it as the query result; the status data includes at least one of the following: status update data and existing long links, and the status update data includes: available status and update time.

22. The device according to claim 12, wherein: The first process and the second process belong to the same content distribution network node.

23. An electronic device, comprising: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the process status detection method for CDN scenarios according to any one of claims 1-11.

24. A non-transitory computer-readable storage medium storing computer instructions, wherein: The computer instructions are used to enable the computer to execute the process status detection method for CDN scenarios according to any one of claims 1-11.

25. A computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the process status detection method for CDN scenarios according to any one of claims 1 to 11 is implemented.