Communication connection method and device, electronic equipment, storage medium and program product
Through the resource scheduler, the communication nodes are grouped and resource scheduled, which solves the problem of RDMA queue exhaustion, realizes efficient communication delay and throughput optimization in large-scale business applications, and improves communication quality.
Patent Information
- Application Number
- CN202411419503.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-11
- Publication Date
- 2025-02-25
AI Technical Summary
In large-scale business applications, the number of remote direct data access (RDMA) queue pairs (QP) connections is easily exhausted, resulting in limited communication delay and throughput optimization effects.
The resource scheduler groups based on the integrity of data storage between each communication node, and forms a communication group, and sends node information to the corresponding communication group, so that each communication node only communicates with nodes of the same communication group, thereby reducing the number of communication connections between different communication groups.
It effectively avoids the exhaustion of connections by queues that access remote direct data, reduces connection-related resource usage, improves the communication quality of service applications, and allows the use of RDMA technology to optimize communication latency and throughput in large-scale service applications.
Smart Images

Figure CN119520582A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of communication technology, and in particular to a communication connection method, device, electronic device, storage medium and program product. Background Art
[0002] As one of the core business scenarios of business applications, recommendation services need to provide real-time recommendation services to hundreds of millions of users every day. In related technologies, Remote Direct Memory Access (RDMA) is mainly used to optimize communication latency and throughput to achieve better recommendation service effects. However, for large business scales, there is a risk of exhausting the number of queue pairs (QP) connections for remote direct memory access. Summary of the invention
[0003] In view of this, the present disclosure provides a communication connection method, apparatus, device, storage medium and program product to solve the problem of insufficient number of connections for remote direct data access queues.
[0004] In a first aspect, the present disclosure provides a communication connection method, applicable to a communication node, the method comprising:
[0005] Acquire node information of a communication group to which the local node belongs, the node information including information of a first communication node belonging to the communication group, the communication group being obtained by grouping the communication nodes by a resource scheduler based on the integrity of data storage between the communication nodes;
[0006] Determine a first communication node belonging to the communication group based on the node information;
[0007] In response to a connection request for a target communication node in the first communication node, a communication connection is established with the target communication node.
[0008] In a second aspect, the present disclosure provides a communication connection method applicable to a resource scheduler, the method comprising:
[0009] Obtain the data storage status of each communication node;
[0010] Analyze the integrity of the data storage between the communication nodes based on the data storage situation to obtain an integrity analysis result;
[0011] Grouping the communication nodes based on the integrity analysis result to obtain a communication group and node information of the communication group, wherein the node information includes information of the communication nodes belonging to the communication group;
[0012] The node information is sent to the corresponding communication group, so that each communication node can only establish communication connection with the communication nodes belonging to the same communication group.
[0013] In a third aspect, the present disclosure provides a communication connection device, applicable to a communication node, the device comprising:
[0014] A data receiving module, used to obtain node information of a local communication group, wherein the node information includes information of a first communication node belonging to the communication group, and the communication group is obtained by grouping the communication nodes by a resource scheduler based on the integrity of data storage between the communication nodes;
[0015] A data processing module, configured to determine a first communication node belonging to the communication group based on the node information;
[0016] The communication connection module is used to establish a communication connection with the target communication node in response to a connection request for the target communication node in the first communication node.
[0017] In a fourth aspect, the present disclosure provides a communication connection device, applicable to a resource scheduler, the device comprising:
[0018] A data acquisition module is used to obtain the data storage status of each communication node;
[0019] A data analysis module, used to analyze the integrity of the data storage between the communication nodes based on the data storage situation, and obtain an integrity analysis result;
[0020] A node grouping module, configured to group the communication nodes based on the integrity analysis result to obtain a communication group and node information of the communication group, wherein the node information includes information of the communication nodes belonging to the communication group;
[0021] The data sending module is used to send the node information to the corresponding communication group, so that each communication node can only communicate with the communication nodes belonging to the same communication group.
[0022] In a fifth aspect, the present disclosure provides an electronic device, comprising: a memory and a processor, the memory and the processor are communicatively connected to each other, computer instructions are stored in the memory, and the processor executes the communication connection method of any of the above-mentioned embodiments by executing the computer instructions.
[0023] In a sixth aspect, the present disclosure provides a computer-readable storage medium having computer instructions stored thereon, the computer instructions being used to enable a computer to execute the communication connection method of any of the above-mentioned embodiments.
[0024] In a seventh aspect, the present disclosure provides a computer program product, including computer instructions, and the computer instructions are used to enable a computer to execute the communication connection method of any of the above-mentioned embodiments.
[0025] In the communication connection method provided by the embodiment of the present disclosure, the resource scheduler analyzes the integrity of the data storage between the communication nodes based on the data storage of each communication node, and groups each communication node based on the integrity analysis result to obtain the communication group and the node information of the communication group. Then, the node information is sent to the corresponding communication group. Therefore, it is possible to perform resource group scheduling in combination with the business application characteristics, and effectively reduce the number of communication connections between different communication groups while ensuring data integrity. The current communication node obtains the node information of the local communication group to which it belongs to determine the first communication node of the communication group to which it belongs, and only establishes a communication connection with the target communication node in the first communication node. Since no communication connection is established between different communication groups, the overall number of connections can be reduced exponentially, the resource occupation related to the connection is reduced, and the exhaustion of the number of connections by the queue of remote direct data access can be effectively avoided, thereby reducing the impact of the business scale of the business application on the remote direct data access, so that remote direct data access can also be used in large-scale business applications to optimize the communication delay and throughput of business applications and improve the communication quality of business applications. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] In order to more clearly illustrate the specific embodiments of the present disclosure or the technical solutions in the prior art, the drawings required for use in the specific embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present disclosure. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0027] Figure 1 is a flowchart of a first communication connection method according to an embodiment of the present disclosure;
[0028] Figure 2 It is an interactive schematic diagram of a communication connection method in the related art;
[0029] Figure 3 is an interactive schematic diagram of a communication connection method according to an embodiment of the present disclosure;
[0030] Figure 4 is a flow chart of a second communication connection method according to an embodiment of the present disclosure;
[0031] Figure 5 is an interactive schematic diagram of another communication connection method according to an embodiment of the present disclosure;
[0032] Figure 6is a flowchart of a third communication connection method according to an embodiment of the present disclosure;
[0033] Figure 7 is a flowchart of a fourth communication connection method according to an embodiment of the present disclosure;
[0034] Figure 8 is a structural block diagram of a communication connection system according to an embodiment of the present disclosure;
[0035] Fig. 9 is a structural block diagram of a communication connection device according to an embodiment of the present disclosure;
[0036] Fig.10 is a structural block diagram of another communication connection device according to an embodiment of the present disclosure;
[0037] Fig.11 is a structural block diagram of an electronic device according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0038] In order to make the purpose, technical solution and advantages of the embodiments of the present disclosure clearer, the technical solution in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in the embodiments of the present disclosure. Obviously, the described embodiments are part of the embodiments of the present disclosure, rather than all the embodiments. Based on the embodiments in the present disclosure, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present disclosure.
[0039] It is understandable that before using the technical solutions disclosed in the embodiments of the present disclosure, the types, scope of use, usage scenarios, etc. of the personal information involved in the present disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.
[0040] For example, in response to receiving an active request from a user, a prompt message is sent to the user to clearly prompt the user that the operation requested to be performed will require obtaining and using the user's personal information. Thus, the user can autonomously choose whether to provide personal information to software or hardware such as an electronic device, application, server, or storage medium that performs the operation of the technical solution of the present disclosure according to the prompt message.
[0041] As an optional but non-limiting implementation, in response to receiving an active request from the user, the prompt information may be sent to the user in the form of a pop-up window, in which the prompt information may be presented in text form. In addition, the pop-up window may also carry a selection control for the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0042] It is understandable that the above notification and the process of obtaining user authorization are merely illustrative and do not constitute a limitation on the implementation of the present disclosure. Other methods that meet the relevant laws and regulations may also be applied to the implementation of the present disclosure.
[0043] It is understandable that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) shall comply with the requirements of relevant laws, regulations and relevant provisions.
[0044] As one of the core business scenarios of business applications, recommendation service needs to provide real-time recommendation services to hundreds of millions of users every day. In related technologies, Remote Direct Memory Access (RDMA) is mainly used to optimize communication delay and throughput to achieve better recommendation service effects. However, for a large business scale, there is a risk of exhausting the number of queue pairs (QP) connections for remote direct data access. Unlike Transmission Control Protocol (TCP) connections, RDMA connections consume physical resources on the network card hardware. If they exceed a certain limit, no more connections can be established, which will limit the horizontal expansion of business applications.
[0045] In order to solve the problem that the number of RDMA queue pairs (QP) connections is easily exhausted, the following two solutions are proposed in related technologies: First, develop a larger network card and increase the number of RDMA queue pair connections by expanding the hardware specifications. However, this method relies on specific hardware, has a long cycle, and is costly. Second, limit the scale of business applications, conduct preliminary evaluation and restrict business applications using RDMA, and only allow deployment of business scales within the connection number constraints. If the limit is exceeded, business application deployment is not allowed. However, this method limits the scope of use of RDMA technology.
[0046] In view of this, according to an embodiment of the present disclosure, a communication connection method embodiment is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although the logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0047] In this embodiment, a communication connection method is provided, which can be used for a communication node of a business application, where the communication node is a client or a server in a remote procedure call. Figure 1 is a flow chart of a first communication connection method according to an embodiment of the present disclosure, such as Figure 1 As shown, the process includes the following steps:
[0048] Step S101, obtaining node information of a local communication group, the node information including information of a first communication node belonging to the communication group, the communication group being obtained by grouping each communication node by a resource scheduler based on the integrity of data storage between each communication node.
[0049] Specifically, the resource scheduler responds to the scheduling request of the business application and applies for computing resources of the target number of nodes according to the target number of communication nodes of the client and server of the remote procedure call (RPC) to be scheduled by the business application. The resource scheduler divides the communication nodes corresponding to the client and the server into at least one communication group according to the data integrity principle to obtain the node information of each communication group. Alternatively, the resource scheduler divides the communication nodes corresponding to the client and the server into at least one communication group according to the data integrity principle and the load balancing principle to obtain the node information of each communication group. Then, the resource scheduler evenly distributes the requested computing resources according to the number of communication groups, and sends the node information of the communication group to the members of the corresponding communication group.
[0050] It should be noted that the local in the above step S101 refers to the current communication node.
[0051] Step S102: Determine a first communication node belonging to the communication group based on the node information.
[0052] Specifically, the node information includes information of the first communication node of the communication group to which the current communication node belongs, such as node name, node website, etc. The current communication node determines other communication nodes of the communication group to which it belongs, namely, the first communication node, according to the node information.
[0053] It should be noted that the first communication node is a communication node other than the current communication node in the communication group.
[0054] Step S103: In response to a connection request for a target communication node in the first communication node, establish a communication connection with the target communication node.
[0055] Specifically, after determining the first communication node of the communication group to which it belongs, the current communication node may establish a communication connection with any first communication node in the same communication group.
[0056] It should be noted that the current communication node does not communicate with the communication nodes of other communication groups.
[0057] In the communication connection method provided in this embodiment, after the resource scheduler groups each communication node based on the integrity of the data storage between each communication node to obtain the communication group and its corresponding node information, the current communication node obtains the node information of the local communication group to which it belongs, so as to determine the first communication node of the communication group to which it belongs, and only establishes a communication connection with the target communication node in the first communication node. Therefore, resource group scheduling can be performed in combination with the business application characteristics. At the same time, since no communication connection is established between different communication groups, the overall number of connections can be reduced exponentially, the resource occupation related to the connection can be reduced, and the exhaustion of the number of connections by the queue of remote direct data access can be effectively avoided, thereby reducing the impact of the business scale of the business application on the remote direct data access, so that remote direct data access can also be used in large-scale business applications to optimize the communication delay and throughput of business applications and improve the communication quality of business applications.
[0058] For example, Figure 2 As shown, taking the communication nodes including the clients A1-A8 as remote procedure calls and the servers B1-B6 as remote procedure calls as an example, before the communication nodes are grouped, the clients A1-A8 and the servers B1-B6 establish connections in pairs, and the total number of connections is 8*6. Figure 3 As shown, if the communication connection method disclosed in the present invention is adopted, the clients A1-A8 and the servers B1-B6 are divided into communication group 1 and communication group 2, and communication group 1 includes clients A1-A4 and servers B1-B3, and communication group 2 includes clients A5-A8 and servers B4-B6. After establishing connections between the clients and servers of the same communication group, the total number of connections is reduced to 8*6 / 2, and the number of connections is reduced by half. It can be seen that if the communication nodes are divided into the target group number, after adopting the communication connection method disclosed in the present invention, the number of connections for remote direct data access is the ratio of the original number of connections to the target group number, which can effectively reduce the number of connections.
[0059] This embodiment provides a communication connection method that can be used for a communication node of a business application, where the communication node is a client or server for remote direct data access. Figure 4 is a flow chart of a second communication connection method according to an embodiment of the present invention. Figure 4 As shown, the process includes the following steps:
[0060] Step S401, obtaining node information of the local communication group, the node information includes information of the first communication node belonging to the communication group, the communication group is obtained by the resource scheduler by grouping each communication node based on the integrity of the data storage between each communication node. Please refer to the above step S101, which will not be repeated here.
[0061] Step S402, determining the first communication node belonging to the communication group based on the node information. Please refer to the above step S102, which will not be described again.
[0062] Step S403: In response to a connection request for a target communication node in the first communication node, establish a communication connection with the target communication node.
[0063] In some optional implementations, the above step S403 includes:
[0064] Step S4031, in response to a connection request for a target communication node in the first communication node, query the software connection status with the target communication node.
[0065] Specifically, the machine where each communication node is located is deployed with application communication middleware, hardware connection control module and software connection control module. Among them, the application communication middleware is used to complete the communication request of the upper-layer business, and the application communication middleware interacts with the software connection control module to obtain the software connection status in order to make a communication connection. The software connection control module cooperates with the hardware connection control module to present a large number of software connections to the upper-layer business. When the application communication middleware needs to communicate with a target communication node, the communication thread in the business process will ask the software connection control module for the software connection status between the target communication node.
[0066] Step S4032: If there is a first software connection with the target communication node, establish a connection with the target communication node based on the first software connection.
[0067] Specifically, if there is a first software connection between the local (i.e., current communication node) and the target communication node, the corresponding software connection control module directly returns the existing first software connection to the current communication node, and the current communication node uses the existing first software connection to establish a connection with the target communication node. Therefore, it is possible to avoid repeatedly establishing a software connection between the current communication node and the target communication node.
[0068] Step S4033: If there is no software connection with the target communication node, a second software connection with the target communication node is established based on the hardware connection with the target communication node.
[0069] Specifically, if there is no software connection between the local and target communication nodes, the software connection control module of the machine where the current communication node is located determines whether to create a new hardware connection or reuse the existing hardware connection to establish a second software connection with the target communication node according to a certain strategy.
[0070] It should be noted that in the hardware connection regulation strategy, a preset number of hardware connections are established between each pair of communicating nodes at most, and the software connections of the same pair of communicating nodes reuse the preset number of hardware connections.
[0071] Step S4034: Establish a communication connection with the target communication node based on the second software connection.
[0072] The communication connection method provided in this embodiment, if there is a first software connection with the target communication node, then a connection is established with the target communication node based on the first software connection. If there is no software connection with the target communication node, then a second software connection is established with the target communication node based on the hardware connection with the target communication node, and a communication connection is established with the target communication node based on the second software connection. Therefore, the hardware connection of the network card can be reused through the software connection, effectively reducing the number of hardware connections established between two machines, so that the number of connections in the business system can be effectively controlled without relying on new hardware, reducing the resource occupation related to the connection, so as to further avoid the situation where the number of hardware connections is exhausted.
[0073] In some optional implementations, the above step S4033 includes:
[0074] Step a1: If there is no software connection with the target communication node, query the hardware connection status with the target communication node.
[0075] Specifically, if there is no software connection with the target communication node, the application communication middleware of the machine where the current communication node is located queries the corresponding hardware connection control module for the hardware connection status with the target communication node. Among them, the hardware connection control module is used to control the actual queue pair connection of remote direct data access. The hardware connection control module cooperates with the software connection control module to present a large number of software connections to the upper-layer business.
[0076] Step a2: if there is a first hardware connection with the target communication node, a second software connection is established based on the first hardware connection.
[0077] Specifically, the hardware connection control module includes a hardware connection cache unit, which is used to cache the hardware queue pair connection (i.e., hardware connection). The cached hardware connections include two types. The first type is a connection for normal connection establishment, i.e., a connection in the Ready to Send (RTS) state of remote direct data access. This hardware connection can provide a directly available hardware connection for the software connection control module. The second type is a connection that has not completed initialization, i.e., a connection in the reset (RESET) state of remote direct data access. This hardware connection needs to be modified to become a normal connection through a certain state. This hardware connection can accelerate the actual connection establishment process.
[0078] Specifically, if the hardware connection control module finds that there is a first hardware connection between the current communication node and the target communication node, the first hardware connection is taken out from the connection cache module, and a second software connection including the first hardware connection is created, and the second software connection is returned to the current communication node.
[0079] Step a3: if there is no hardware connection with the target communication node, a second hardware connection with the target communication node is established, and a second software connection is established based on the second hardware connection.
[0080] Specifically, if the hardware connection control module does not find out that there is a hardware connection between the current communication node and the target communication node, a second hardware connection is established with the target communication node, and a second software connection including the second hardware connection is created, and the second software connection is returned to the current communication node.
[0081] The communication connection method provided in the present embodiment queries the hardware connection status of the target communication node if there is no software connection with the target communication node. If there is a first hardware connection with the target communication node, a second software connection is established based on the first hardware connection. Therefore, the number of hardware connections can be reduced by multiplexing the hardware connection through software connection. If there is no hardware connection with the target communication node, a second hardware connection with the target communication node is established, and a second software connection is established based on the second hardware connection. Therefore, the normal connection between the current communication node and the target communication node can be ensured, and reusable hardware connection resources can be provided for subsequent connections with the target communication node.
[0082] For example, Figure 5As shown, assuming that the communication nodes include client A and server B, and client A and server B belong to the same communication group, when client A and server B need to establish a communication connection, the communication thread in the business process of client A asks the software connection control module of machine 1 whether there is a software connection pointing to server B. The software connection control module inquires whether a software connection has been established for the communication thread between client A and server B. If a software connection exists, the software connection is returned to client A. Client A establishes a communication connection with server B based on the software connection returned by the software connection control module. If there is no software connection, the hardware connection control module of machine 1 is asked whether there is a hardware connection pointing to server B. The hardware connection control module inquires whether a hardware connection has been established for client A and server B. If a hardware connection exists, the hardware connection is taken out, and a software connection containing the hardware connection is created, and the created software connection is returned to client A, so that client A and server B establish a communication connection. If there is no hardware connection, a hardware connection is established through the hardware connection control module, and the newly established hardware connection is packaged into a software connection, and the software connection is returned to the client A, so that the client A establishes a communication connection with the server B. Conversely, the server B can also establish a communication connection with the client A through the software connection control module and the hardware connection control module of the machine 2, and the specific reference can be made to the method of establishing a communication connection between the client A and the server B.
[0083] This embodiment provides a communication connection method that can be used for a communication node of a business application, where the communication node is a client or server for remote direct data access. Figure 6 is a flow chart of a third communication connection method according to an embodiment of the present invention. Figure 6 As shown, the process includes the following steps:
[0084] Step S601, obtaining node information of the local communication group, the node information includes information of the first communication node belonging to the communication group, the communication group is obtained by the resource scheduler by grouping each communication node based on the integrity of the data storage between each communication node. Please refer to the above step S101, which will not be repeated here.
[0085] Step S602: Determine the first communication node belonging to the communication group based on the node information. Please refer to the above step S102, which will not be described in detail here.
[0086] Step S603: In response to the connection request for the target communication node in the first communication node, establish a communication connection with the target communication node. Please refer to the above step S403, which will not be described again.
[0087] Step S604: determine each third hardware connection corresponding to the first communication node.
[0088] Specifically, the current communication node determines the third hardware connection with each first communication node in the communication group to which it belongs based on the hardware connection control module of the machine where it is located.
[0089] Step S605: determine a target hardware connection in an inactive state in the third hardware connection.
[0090] Specifically, the last use time of each third hardware connection is periodically counted. If the last use time indicates that the third hardware connection has not been used for a long time, the third hardware connection is used as the target hardware connection. Alternatively, whenever a request to establish a hardware connection is received, the connection closing cost of each third hardware connection is calculated, and the third hardware connection with the smallest connection closing cost is used as the target hardware connection. Alternatively, the third hardware connection with a connection closing cost less than a preset cost threshold is used as the target hardware connection.
[0091] Step S606, closing the target hardware connection and the software connection corresponding to the target hardware connection.
[0092] Specifically, the current communication node periodically closes the target hardware connection and the corresponding software connection in an inactive state. Alternatively, the current communication node responds to the request to establish a hardware connection and batch closes the target hardware connection and the corresponding software connection with the lowest connection closing cost. Alternatively, the current communication node responds to the request to establish a hardware connection and batch closes the target hardware connection and the corresponding software connection with a connection closing cost less than a preset cost threshold.
[0093] The communication connection method provided in this embodiment determines each third hardware connection corresponding to the first communication node of the communication group to which it belongs. A target hardware connection in an inactive state is determined in the third hardware connection, and the target hardware connection and the corresponding software connection are closed. Therefore, the hardware connection and software connection in an inactive state can be released to further reduce the number of connections for remote direct data access.
[0094] In some optional implementations, the above step S605 includes:
[0095] Step b1, obtaining the last usage time of each third hardware connection.
[0096] Specifically, the last usage time of each third hardware connection is periodically obtained.
[0097] Step b2: If the first time interval between the current usage time and the last usage time is greater than a preset time threshold, the third hardware connection is determined as the target hardware connection.
[0098] Specifically, the preset time threshold can be determined according to actual conditions.
[0099] In the communication connection method provided in this embodiment, if the first time interval between the current and last use time is greater than the preset time threshold, the third hardware connection is determined as the target hardware connection. Therefore, the long-term inactive hardware connection and the corresponding software connection can be closed and cleaned up to further reduce the number of remote direct data access connections.
[0100] In some other optional implementations, the above step S605 includes:
[0101] Step c1: in response to a request to establish a hardware connection, obtaining a hardware connection quantity of a third hardware connection.
[0102] Specifically, the current communication node obtains the hardware connection quantity of the third hardware connection through the hardware connection control module of the machine where the node is located.
[0103] Step c2: if the number of hardware connections reaches a preset number threshold, the usage frequency, last usage time and importance of each third hardware connection are obtained.
[0104] Specifically, the preset number threshold is determined based on the maximum number of hardware connections, so that when the number of hardware connections is close to being exhausted, if a request to establish a hardware connection is received, a portion of the least active hardware connections are forcibly closed to release resources for new hardware connections.
[0105] Step c3, based on the usage frequency, the last usage time and the importance, determine the connection closing cost of each third hardware connection, the usage frequency and the importance are positively correlated with the connection closing cost, and the last usage time is negatively correlated with the connection closing cost.
[0106] It can be understood that if the third hardware connection is used more frequently and more important, it means that the cost of closing the connection of the third hardware connection is greater. If the time interval between the current time and the last time the third hardware connection was used is longer, it means that the third hardware connection is less active and the cost of closing the connection is smaller.
[0107] Step c4: determining a target hardware connection in the third hardware connection based on the size of the connection closing cost.
[0108] Specifically, the third hardware connection with the smallest connection closing cost is selected as the target hardware connection. Alternatively, the third hardware connection with a connection closing cost less than a preset cost threshold is selected as the target hardware connection. Alternatively, the third hardware connections are sorted according to the size of the connection closing cost, starting from the third hardware connection with the smallest connection closing cost, and a preset number or a preset proportion of the third hardware connections are selected as the target hardware connections.
[0109] The communication connection method provided in this embodiment, when receiving a request to establish a hardware connection, if the number of hardware connections of the third hardware connection reaches a preset number threshold, then the usage frequency, last usage time and importance of each third hardware connection are obtained. Based on the usage frequency, last usage time and importance, the connection closing cost of each third hardware connection is determined, and according to the size of the connection closing cost, the target hardware connection in an inactive state is determined in the third hardware connection. Therefore, when the number of hardware connections is close to exhaustion, a part of the hardware connections with low activity can be forcibly eliminated to release resources for new hardware connections, thereby reducing the number of hardware connections while ensuring the normal communication of communication nodes.
[0110] In some optional implementations, the above step c3 includes:
[0111] Step c31, determining a second time interval between the current time and the last time each third hardware connection was used.
[0112] Specifically, based on the difference between the current time and the last use time of each third hardware connection, the second time interval corresponding to each third hardware connection is obtained.
[0113] Step c32, obtaining the time parameters of each third hardware connection based on the inverse of the second time interval.
[0114] It can be understood that the longer the second time interval is, the lower the activity of the third hardware connection is.
[0115] Step c33, determining the connection closing cost of each third hardware connection based on the first weighted result of the usage frequency, the second weighted result of the time parameter and the third weighted result of the importance.
[0116] Specifically, the connection closing cost of the third hardware connection in the above step c33 is calculated by the following formula:
[0117]
[0118] Among them, cost is the connection closing cost of the third hardware connection, α is the first weight, β is the second weight, γ is the third weight, time_window (call_count) is the usage frequency of the third hardware connection, last_use_time_from_now is the second time interval of the third hardware connection, and data_weight is the importance of the third hardware connection.
[0119] It should be noted that the values of the first weight, the second weight and the third weight can be determined according to actual conditions. The product of the frequency of use and the first weight is determined as the first weighted result, the product of the time parameter and the second weight is determined as the second weighted result, and the product of the importance and the third weight is determined as the third weighted result.
[0120] The communication connection method provided in this embodiment obtains the time parameter of each third hardware connection based on the inverse of the second time interval of the last use time of each third hardware connection. And based on the first weighted result of the use frequency, the second weighted result of the time parameter and the third weighted result of the importance, the connection closing cost of each third hardware connection is determined. Therefore, the connection closing cost of the third hardware connection can be weighed by comprehensively considering the use frequency, the last use time and the importance, so as to avoid closing the third hardware connection that is more active or more important, thereby ensuring the normal communication of the communication node.
[0121] In some optional implementations, the above-mentioned importance is obtained by: obtaining data features of data transmitted by each third hardware connection; and analyzing the data features to obtain the importance of each third hardware connection.
[0122] It is worth noting that in addition to determining the importance of each third hardware connection by the data characteristics of the data transmitted by each third hardware connection, the importance of each third hardware connection can also be determined by the priority corresponding to the third hardware connection or the pre-marked importance label.
[0123] It can be understood that the data transmitted by each third hardware connection is very important, and the cost of closing the third hardware connection is relatively high, which means that the third hardware connection should not be closed.
[0124] The communication connection method provided in this embodiment uses the data characteristics of the data transmitted by the third hardware connection to determine the importance of each third hardware connection. Therefore, the reliability of data transmission can be further guaranteed while reducing the number of hardware connections.
[0125] In this embodiment, another communication connection method is also provided, which can be used for a resource scheduler of a business application. Figure 7 is a flow chart of a fourth communication connection method according to an embodiment of the present disclosure, such as Figure 7 As shown, the process includes the following steps:
[0126] Step S701, obtaining the data storage status of each communication node.
[0127] Specifically, the resource scheduler responds to the scheduling request initiated by the business application, determines a first number M of remote procedure call clients and a second number N of remote procedure call servers, and applies for M+N computing resources according to the sum of the first number and the second number.
[0128] Specifically, the data storage situation of each communication node is obtained by searching for the distribution of data blocks of the same data on each communication node.
[0129] Step S702: analyzing the integrity of data storage between each communication node based on the data storage situation to obtain an integrity analysis result.
[0130] Specifically, by analyzing the distribution of data blocks of the same data on each communication node, the communication node storing the data block of the same data is determined to obtain the integrity analysis result.
[0131] For example, the target data is divided into data block 1, data block 2, and data block 3. Data block 1, data block 2, and data block 3 are stored on server 1, server 2, and server 3 respectively, and the integrity analysis result can be obtained that data block 1, data block 2, and data block 3 store the same data.
[0132] Step S703, grouping each communication node based on the integrity analysis result to obtain a communication group and node information of the communication group, where the node information includes information of the communication nodes belonging to the communication group.
[0133] Specifically, based on the integrity analysis result, the communication nodes storing the data blocks of the same data are regarded as a communication group to obtain the communication group and the node information of the communication group.
[0134] For example, data block 1, data block 2, and data block 3 of the target data are stored on server 1, server 2, and server 3 respectively. In order to ensure the integrity of the target data after grouping, server 1, server 2, and server 3 are regarded as a communication group.
[0135] It should be noted that the number of divided communication groups can be determined according to actual conditions and is not limited here.
[0136] Step S704: Send the node information to the corresponding communication group so that each communication node can only communicate with the communication nodes belonging to the same communication group.
[0137] Specifically, the resource scheduler sends the node information to the communication nodes of the corresponding communication group, so that each communication node determines the communication nodes belonging to the same communication group according to the node information, and only communicates with the communication nodes in the communication group. Communication nodes in different communication groups do not communicate with each other.
[0138] Specifically, the communication nodes include communication nodes that serve as clients of remote procedure calls and / or communication nodes that serve as servers of remote procedure calls, and communication connections are established between clients and servers that belong to the same communication group.
[0139] In the communication connection method provided in this embodiment, the resource scheduler analyzes the integrity of the data storage between each communication node based on the data storage situation of each communication node, and groups each communication node based on the integrity analysis result to obtain the communication group and the node information of the communication group. Then, the node information is sent to the corresponding communication group so that each communication node can only communicate with the communication node belonging to the same communication group. Therefore, while ensuring data integrity, the number of communication connections between different communication groups can be effectively reduced, so that the remote direct data access queue can be effectively avoided from exhausting the number of connections while using remote direct data access to reduce communication delays, so that remote direct data access can be used for business systems of different sizes.
[0140] In some optional implementations, the above step S703 includes: obtaining the load status of each communication node; grouping each communication node based on the integrity analysis result, and performing load balancing based on the load status during the grouping process to obtain the communication group and the node information of the communication group.
[0141] Specifically, in order to ensure load balancing among various communication groups, while grouping various communication nodes based on the integrity analysis result, it is necessary to further group various communication nodes in combination with the load conditions of various communication nodes to obtain communication groups.
[0142] Specifically, each communication node may be grouped based on the integrity analysis result to obtain a preliminary grouping result. Then, the load difference between each group in the preliminary grouping result is determined based on the load condition of each communication node. If the load difference meets a preset difference range, the group obtained by the preliminary grouping result is used as a communication group to obtain the node information of the communication group. If the load difference does not meet the preset difference range, each communication node is regrouped.
[0143] The communication connection method provided in this embodiment groups each communication node based on the data integrity principle and the load balancing principle, so that each communication node can be grouped and scheduled in combination with the business application characteristics. While ensuring data integrity, the amount of business requests processed by each communication node is dynamically adjusted according to the performance and load of the communication node, ensuring that the computing resources of each communication node can be fully utilized, avoiding overloading of the communication node and affecting the performance of the overall business system.
[0144] It is worth noting that the resource scheduler deploys the remote procedure call client and server in groups, which can effectively reduce the scope of full connection establishment and reduce the overall number of connections exponentially. At the same time, the application communication middleware reuses the hardware connection of the network card through software connection, which can effectively reduce the number of hardware connections established between two machines. In addition, the application communication middleware adopts a certain elimination strategy to eliminate inactive hardware connections and software connections, releasing related software and hardware resources.
[0145] It is worth noting that the communication connection method disclosed in the present invention makes full use of the application layer communication characteristics of business applications, and can effectively control the number of remote direct data access connections in the business system without relying on new hardware, reduce the resource occupation related to communication connections, and avoid the business system risks caused by the exhaustion of the number of network card connections. Therefore, it can allow the remote direct data access technology to be deployed in business systems of any scale, avoiding the situation where the number of remote direct data access connections is exhausted, that is, avoiding the exhaustion of the number of remote direct data access queue pairs.
[0146] As a specific application example, Figure 8 As shown, the communication connection system using the communication connection method disclosed in the present invention includes an application feature statistics module, a resource scheduler, a machine configured with a client of a business application, and a machine configured with a server of a business application. Among them, the machine configured with a client or a server is deployed with application communication middleware, a software connection control module, a hardware connection control module, a connection behavior statistics module, and a connection activity statistics module.
[0147] Specifically, the application communication middleware is used to complete the communication request of the upper-layer business. After the application communication middleware interacts with the software connection regulation module to obtain the software connection, it communicates with the communication party. The software connection regulation module is used to cooperate with the hardware connection regulation module to provide a large number of software connections for the upper-layer business. The software connection regulation module decides whether to create a new hardware connection according to a certain strategy, or whether the software connection of the same communication party reuses the existing hardware connection. The hardware connection regulation module is used to regulate the actual hardware connection of remote direct data access. The hardware connection regulation module cooperates with the software connection regulation module to present a large number of software connections to the upper-layer business. Among them, the hardware connection regulation module includes a hardware connection generation unit, a hardware connection cache unit and a hardware connection elimination unit. The hardware connection generation unit interacts with hardware such as a machine network card to generate an original queue pair connection (i.e., a hardware connection). The hardware connection cache unit is used to cache hardware connections, and the cached hardware connections include: hardware connections that have been normally connected and hardware connections that have not completed initialization. Among them, the hardware connection that has been normally connected is a hardware connection that is in a ready-to-send state, so as to provide the software connection regulation module with a directly available hardware connection. A hardware connection that has not completed initialization is a hardware connection in a reset state. This hardware connection needs to be changed to a normally established hardware connection through certain state modifications to speed up the actual establishment process. The hardware connection elimination unit is used to cooperate with the connection activity calculation module to periodically eliminate inactive hardware connections and software connections. Alternatively, when the number of hardware connections is close to exhaustion, when a request to establish a hardware connection arrives, a portion of the least active hardware connections and software connections are forcibly eliminated, thereby releasing resources for new hardware connections. The connection behavior statistics module is used to count the communication conditions of software connections and hardware connections, including communication volume, usage frequency, last usage time, importance of the transmitted data at the business layer, etc., as a basis for calculating the connection closing cost. The connection activity statistics module is used to calculate the connection closing cost of each hardware connection based on the data of the connection behavior statistics module, so that the hardware connection regulation module determines which hardware connections to retain or eliminate according to the connection closing cost.
[0148] As a specific application example, taking the communication nodes as the client and server of the business application as an example, when the business application uses remote direct data access to provide real-time recommendation services for users, the resource scheduler of the business application applies for the first number and the second number of computing resources based on the first number of clients and the second number of servers that the business application needs to deploy. The resource scheduler groups the applied clients and servers based on the communication connection method disclosed in the present invention to obtain at least one communication group and corresponding node information, and sends the node information to the client and server of the corresponding communication group. The client establishes a communication connection with the server to be communicated based on the communication connection method disclosed in the present invention. Alternatively, the server establishes a communication connection with the client to be communicated based on the communication connection method disclosed in the present invention. In addition, the client or the server closes the hardware connection and the corresponding software connection in an inactive state based on the communication connection method disclosed in the present invention. Therefore, when the business application uses remote direct data access to provide real-time recommendation services for users, it can effectively avoid the problem of exhaustion of the number of connections of the remote direct data access queue, thereby improving the quality of recommendation services.
[0149] In this embodiment, a communication connection device is also provided, which is used to implement the above-mentioned embodiments and preferred implementation modes, and the descriptions that have been made will not be repeated. As used below, the term "module" can implement a combination of software and / or hardware of a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceivable.
[0150] This embodiment provides a communication connection device, which is applicable to a communication node, such as Fig. 9 As shown, the device comprises:
[0151] The data receiving module 901 is used to obtain node information of a local communication group, where the node information includes information of a first communication node belonging to the communication group. The communication group is obtained by grouping the communication nodes by the resource scheduler based on the integrity of data storage between the communication nodes.
[0152] A data processing module 902 is used to determine a first communication node belonging to a communication group based on the node information;
[0153] The communication connection module 903 is used to establish a communication connection with the target communication node in response to a connection request for the target communication node in the first communication node.
[0154] In some optional implementations, the communication connection module 903 includes:
[0155] A connection query unit, configured to query the software connection status with the target communication node in response to a connection request for the target communication node in the first communication node;
[0156] a software connection unit, configured to establish a connection with the target communication node based on the first software connection if there is a first software connection with the target communication node;
[0157] A first connection establishing unit, configured to establish a second software connection with the target communication node based on a hardware connection with the target communication node if no software connection exists with the target communication node;
[0158] The second connection establishing unit is used to establish a communication connection with the target communication node based on the second software connection.
[0159] In some optional implementations, the first connection unit includes:
[0160] A connection query subunit, used to query the hardware connection status with the target communication node if there is no software connection with the target communication node;
[0161] A first connection establishing subunit, configured to establish a second software connection based on the first hardware connection if a first hardware connection exists with the target communication node;
[0162] The second connection establishing subunit is used to establish a second hardware connection with the target communication node if there is no hardware connection with the target communication node, and to establish a second software connection based on the second hardware connection.
[0163] In some optional embodiments, the communication connection device of the present disclosure further includes:
[0164] A connection query module, configured to determine each third hardware connection corresponding to the first communication node;
[0165] A state calculation module, used for determining a target hardware connection in an inactive state in the third hardware connection;
[0166] The connection elimination module is used to close the target hardware connection and the software connection corresponding to the target hardware connection.
[0167] In some optional implementations, the state operation module includes:
[0168] A first data acquisition unit, used to acquire the last usage time of each third hardware connection;
[0169] The first data operation unit is used to determine the third hardware connection as the target hardware connection if a first time interval between the current use time and the last use time is greater than a preset time threshold.
[0170] In some optional implementations, the state calculation module further includes:
[0171] a second data acquisition unit, configured to acquire a hardware connection quantity of a third hardware connection in response to a request to establish a hardware connection;
[0172] A third data acquisition unit, configured to acquire the usage frequency, last usage time, and importance of each third hardware connection if the number of hardware connections reaches a preset number threshold;
[0173] A second data operation unit is used to determine a connection closing cost of each third hardware connection based on the usage frequency, the last usage time and the importance, wherein the usage frequency and the importance are positively correlated with the connection closing cost, and the last usage time is negatively correlated with the connection closing cost;
[0174] The third data operation unit is used to determine the target hardware connection in the third hardware connection based on the size of the connection closing cost.
[0175] In some optional implementations, the second data operation unit includes:
[0176] The first operation subunit is used to determine a second time interval between the current time and the last time each third hardware connection was used;
[0177] A second operator unit, configured to obtain a time parameter of each third hardware connection based on the inverse of the second time interval;
[0178] The third operator unit is used to determine the connection closing cost of each third hardware connection based on the first weighted result of the usage frequency, the second weighted result of the time parameter and the third weighted result of the importance.
[0179] In some optional embodiments, the third data acquisition unit further includes an importance analysis subunit for acquiring the importance of each third hardware connection. The importance analysis subunit is specifically used to acquire data features of data transmitted by each third hardware connection; and analyze the data features to obtain the importance of each third hardware connection.
[0180] The further functional description of each of the above modules and units is the same as that of the above corresponding embodiments and will not be repeated here.
[0181] The communication connection device in this embodiment is presented in the form of a functional unit, where the unit refers to an ASIC (Application Specific Integrated Circuit) circuit, a processor and memory that executes one or more software or fixed programs, and / or other devices that can provide the above functions.
[0182] This embodiment provides another communication connection device, which is applicable to a resource scheduler, such as Fig.10As shown, the device comprises:
[0183] A data acquisition module 1001 is used to acquire data storage conditions of each communication node;
[0184] The data analysis module 1002 is used to analyze the integrity of data storage between each communication node based on the data storage situation to obtain an integrity analysis result;
[0185] The node grouping module 1003 is used to group each communication node based on the integrity analysis result to obtain a communication group and node information of the communication group, wherein the node information includes information of the communication nodes belonging to the communication group;
[0186] The data sending module 1004 is used to send the node information to the corresponding communication group, so that each communication node can only communicate with the communication nodes belonging to the same communication group.
[0187] In some optional implementations, the node grouping module 1003 includes:
[0188] A load acquisition unit, used to acquire the load status of each communication node;
[0189] The node grouping unit is used to group each communication node based on the integrity analysis result, and perform load balancing based on the load situation during the grouping process to obtain the communication group and the node information of the communication group.
[0190] The further functional description of each of the above modules and units is the same as that of the above corresponding embodiments and will not be repeated here.
[0191] The communication connection device in this embodiment is presented in the form of a functional unit, where the unit refers to an ASIC (Application Specific Integrated Circuit) circuit, a processor and memory that executes one or more software or fixed programs, and / or other devices that can provide the above functions.
[0192] The present disclosure also provides an electronic device having the above Fig. 9 or Fig.10 The communication connection device shown.
[0193] See also Fig.11 , Fig.11 is a structural block diagram of an electronic device provided by an optional embodiment of the present disclosure, such as Fig.11As shown, the electronic device includes: one or more processors 1101, memory 1102, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. Various components are connected to each other using different buses for communication, and can be installed on a common mainboard or installed in other ways as needed. The processor can process instructions executed in the electronic device, including instructions stored in or on the memory to display the graphical information of the GUI on an external input / output device (such as a display device coupled to the interface). In some optional embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories and multiple memories. Similarly, multiple electronic devices can be connected, and each device provides some necessary operations (for example, as a server array, a group of blade servers, or a multi-processor system). Fig.11 A processor 1101 is taken as an example.
[0194] The processor 1101 may be a central processing unit, a network processor or a combination thereof. The processor 1101 may further include a hardware chip. The hardware chip may be a dedicated integrated circuit, a programmable logic device or a combination thereof. The programmable logic device may be a complex programmable logic device, a field programmable logic gate array, a general purpose array logic or any combination thereof.
[0195] The memory 1102 stores instructions executable by at least one processor 1101, so as to enable at least one processor 1101 to implement the method shown in the above embodiment.
[0196] The memory 1102 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function; the data storage area may store data created according to the use of the electronic device, etc. In addition, the memory 1102 may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some optional embodiments, the memory 1102 may optionally include a memory remotely arranged relative to the processor 1101, and these remote memories may be connected to the electronic device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0197] The memory 1102 may include a volatile memory, such as a random access memory; the memory may also include a non-volatile memory, such as a flash memory, a hard disk or a solid state drive; the memory 1102 may also include a combination of the above types of memory.
[0198] The electronic device also includes a communication interface 1103, which is used for the electronic device to communicate with other devices or a communication network.
[0199] The embodiments of the present disclosure also provide a computer-readable storage medium. The above-mentioned method according to the embodiments of the present disclosure can be implemented in hardware, firmware, or can be implemented as a computer code that can be recorded in a storage medium, or can be implemented as a computer code that is originally stored in a remote storage medium or a non-temporary machine-readable storage medium and will be stored in a local storage medium and downloaded through a network, so that the method described herein can be stored in such software processing on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only storage memory, a random access memory, a flash memory, a hard disk or a solid-state drive, etc.; further, the storage medium can also include a combination of the above-mentioned types of memory. It can be understood that a computer, a processor, a microprocessor controller, or programmable hardware includes a storage component that can store or receive software or computer code. When the software or computer code is accessed and executed by a computer, a processor, or hardware, the method shown in the above embodiment is implemented.
[0200] A part of the present disclosure may be applied as a computer program product, such as a computer program instruction, which, when executed by a computer, can call or provide the method and / or technical solution according to the present disclosure through the operation of the computer. Those skilled in the art should understand that the existence of computer program instructions in computer-readable media includes, but is not limited to, source files, executable files, installation package files, etc., and accordingly, the way in which computer program instructions are executed by a computer includes, but is not limited to: the computer directly executes the instruction, or the computer compiles the instruction and then executes the corresponding compiled program, or the computer reads and executes the instruction, or the computer reads and installs the instruction and then executes the corresponding installed program. Here, the computer-readable medium can be any available computer-readable storage medium or communication medium accessible to the computer.
[0201] Although the embodiments of the present disclosure have been described in conjunction with the accompanying drawings, those skilled in the art may make various modifications and variations without departing from the spirit and scope of the present disclosure, and such modifications and variations are all within the scope defined by the appended claims.
Claims
1. A communication connection method, characterized in that: Applicable to a communication node, the method comprises: Acquire node information of a communication group to which the local node belongs, the node information including information of a first communication node belonging to the communication group, the communication group being obtained by grouping the communication nodes by a resource scheduler based on the integrity of data storage between the communication nodes; Determine a first communication node belonging to the communication group based on the node information; In response to a connection request for a target communication node in the first communication node, a communication connection is established with the target communication node.
2. The communication connection method according to claim 1, characterized in that: The step of establishing a communication connection with a target communication node in response to a connection request for the target communication node in the first communication node comprises: In response to a connection request for a target communication node in the first communication node, querying a software connection status with the target communication node; If a first software connection exists with the target communication node, establishing a connection with the target communication node based on the first software connection; If there is no software connection with the target communication node, establishing a second software connection with the target communication node based on the hardware connection with the target communication node; A communication connection is established with the target communication node based on the second software connection.
3. The communication connection method according to claim 2, characterized in that: If there is no software connection with the target communication node, establishing a second software connection with the target communication node based on the hardware connection with the target communication node includes: If there is no software connection with the target communication node, query the hardware connection with the target communication node; If there is a first hardware connection with the target communication node, establishing the second software connection based on the first hardware connection; If there is no hardware connection with the target communication node, a second hardware connection with the target communication node is established, and the second software connection is established based on the second hardware connection.
4. The communication connection method according to claim 1, characterized in that: The method further comprises: determining respective third hardware connections corresponding to the first communication node; Determining a target hardware connection in an inactive state in the third hardware connection; The target hardware connection and the software connection corresponding to the target hardware connection are closed.
5. The communication connection method according to claim 4, characterized in that: The step of determining a target hardware connection in an inactive state in the third hardware connection includes: Obtaining the last usage time of each of the third hardware connections; If the first time interval between the current usage time and the last usage time is greater than a preset time threshold, the third hardware connection is determined as the target hardware connection.
6. The communication connection method according to claim 4, characterized in that: The step of determining a target hardware connection in an inactive state in the third hardware connection includes: In response to the request to establish a hardware connection, obtaining a hardware connection quantity of the third hardware connection; If the number of the hardware connections reaches a preset number threshold, obtaining the usage frequency, last usage time and importance of each of the third hardware connections; Determine a connection closing cost of each of the third hardware connections based on the usage frequency, the last usage time, and the importance, wherein the usage frequency and the importance are positively correlated with the connection closing cost, and the last usage time is negatively correlated with the connection closing cost; Based on the size of the connection closing cost, a target hardware connection is determined in the third hardware connection.
7. The communication connection method according to claim 6, characterized in that: The determining, based on the usage frequency, the last usage time, and the importance, of the connection closing cost of each of the third hardware connections includes: Determine a second time interval between the current time and the last time each of the third hardware connections was used; Based on the inverse of the second time interval, obtaining a time parameter of each of the third hardware connections; Based on the first weighted result of the usage frequency, the second weighted result of the time parameter, and the third weighted result of the importance, a connection closing cost of each of the third hardware connections is determined.
8. The communication connection method according to claim 6, characterized in that: The importance is obtained in the following way: Acquire data characteristics of data transmitted by each of the third hardware connections; The data features are analyzed to obtain the importance of each of the third hardware connections.
9. A communication connection method, characterized in that: Applicable to a resource scheduler, the method comprises: Obtain the data storage status of each communication node; Analyze the integrity of the data storage between the communication nodes based on the data storage situation to obtain an integrity analysis result; Grouping the communication nodes based on the integrity analysis result to obtain a communication group and node information of the communication group, wherein the node information includes information of the communication nodes belonging to the communication group; The node information is sent to the corresponding communication group, so that each communication node can only establish communication connection with the communication nodes belonging to the same communication group.
10. The communication connection method according to claim 9, characterized in that: The grouping of the communication nodes based on the integrity analysis result to obtain the communication group and the node information of the communication nodes in the communication group includes: Obtaining the load status of each communication node; The communication nodes are grouped based on the integrity analysis result, and load balancing is performed based on the load conditions during the grouping process to obtain the communication group and the node information of the communication group.
11. A communication connection device, characterized in that: Applicable to a communication node, the device comprises: A data receiving module, used to obtain node information of a local communication group, wherein the node information includes information of a first communication node belonging to the communication group, and the communication group is obtained by grouping the communication nodes by a resource scheduler based on the integrity of data storage between the communication nodes; A data processing module, configured to determine a first communication node belonging to the communication group based on the node information; The communication connection module is used to establish a communication connection with the target communication node in response to a connection request for the target communication node in the first communication node.
12. A communication connection device, characterized in that: Applicable to a resource scheduler, the device comprises: A data acquisition module is used to obtain the data storage status of each communication node; A data analysis module, used to analyze the integrity of the data storage between the communication nodes based on the data storage situation, and obtain an integrity analysis result; A node grouping module, configured to group the communication nodes based on the integrity analysis result to obtain a communication group and node information of the communication group, wherein the node information includes information of the communication nodes belonging to the communication group; The data sending module is used to send the node information to the corresponding communication group, so that each communication node can only communicate with the communication nodes belonging to the same communication group.
13. An electronic device, characterized in that: include: A memory and a processor, wherein the memory and the processor are communicatively connected to each other, the memory stores computer instructions, and the processor executes the communication connection method described in any one of claims 1 to 8, or the communication connection method described in any one of claims 9 to 10, by executing the computer instructions.
14. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a computer to execute the communication connection method according to any one of claims 1 to 8, or the communication connection method according to any one of claims 9 to 10.
15. A computer program product, characterized in that The method comprises computer instructions, wherein the computer instructions are used to cause a computer to execute the communication connection method according to any one of claims 1 to 8, or the communication connection method according to any one of claims 9 to 10.