CN116436921A - Dynamic load balancing method, dynamic load balancing device, dynamic load balancing medium and electronic equipment - Google Patents

Dynamic load balancing method, dynamic load balancing device, dynamic load balancing medium and electronic equipment Download PDF

Info

Publication number
CN116436921A
CN116436921A CN202310317103.XA CN202310317103A CN116436921A CN 116436921 A CN116436921 A CN 116436921A CN 202310317103 A CN202310317103 A CN 202310317103A CN 116436921 A CN116436921 A CN 116436921A
Authority
CN
China
Prior art keywords
configuration information
load balancing
upstream configuration
dynamic load
working process
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310317103.XA
Other languages
Chinese (zh)
Inventor
刘洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Cubesili Information Technology Co Ltd
Original Assignee
Guangzhou Cubesili Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Cubesili Information Technology Co Ltd filed Critical Guangzhou Cubesili Information Technology Co Ltd
Priority to CN202310317103.XA priority Critical patent/CN116436921A/en
Publication of CN116436921A publication Critical patent/CN116436921A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1025Dynamic adaptation of the criteria on which the server selection is based
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Abstract

The embodiment of the application relates to the field of load balancing, and provides a dynamic load balancing method, a dynamic load balancing device, a dynamic load balancing medium and electronic equipment, wherein the method comprises the following steps: after the proxy server configuration analysis is completed, acquiring first upstream configuration information of the proxy server, and storing the first upstream configuration information into a dynamic load balancing module; when the dynamic load balancing module starts the working process, configuring an auxiliary plug-in for each working process, storing first upstream configuration information into the auxiliary plug-in, and constructing a working process cluster based on the auxiliary plug-in; the method comprises the steps of receiving an upstream configuration information changing request, updating first upstream configuration information in an auxiliary plug-in of a working process based on a working process cluster, and synchronizing updated second upstream configuration information to a dynamic load balancing module, so that reloading operation is not required when the upstream configuration information is changed, restarting the working process is not required, and the upstream configuration information of the working process and the dynamic load balancing module is dynamically and synchronously adjusted based on the dynamic load balancing module, the auxiliary plug-in and the working process cluster, so that the performance of a proxy server is improved, and the processing load of the proxy server is reduced.

Description

Dynamic load balancing method, dynamic load balancing device, dynamic load balancing medium and electronic equipment
Technical Field
The embodiment of the application relates to the technical field of load balancing, in particular to a dynamic load balancing method, a dynamic load balancing device, a dynamic load balancing medium and electronic equipment.
Background
The proxy server is one end for forwarding the access request to the back-end server and is a transfer station of network information, and is mainly used for forwarding the access request of the client and carrying out load balancing processing. Dynamic load balancing refers to distributing tasks according to real-time load state information of a server, and can effectively improve the performance of the server. Nginx (engine x) is widely used as a high-performance HTTP and proxy server for load balancing services.
The dynamic load balancing method in the related art will be described below by taking ng in x as an example. In the related art, when a client running on a user device initiates a request to nginix, a work process receives the request, and forwards the request to a real server at a back end for processing through upstream (upstream) configuration information of the nginix. In the related art, after the upstream configuration information of the nginnx is modified, a reloading operation needs to be performed to reload the upstream configuration information. On the one hand, after the Nginx is used for a period of time, the number of the working processes of the Nginx can be increased, the system resource is reduced due to the uniform restarting, and the QPS (Queries Per Second is the query rate per second, namely the maximum throughput capacity) is rapidly reduced due to the mutually exclusive lock competition among the working processes during restarting; on the other hand, the old working process finishes the task processing of the current request and releases the resources of the working process, so if the old working process and the server at the back end are in dead connection, the number of the old working process is multiplied along with the times of reloading in a period of time, the performance of Nginx is reduced, and the processing burden of the Nginx is increased.
Disclosure of Invention
In order to overcome the problems in the related art, the application provides a dynamic load balancing method, a dynamic load balancing device, a dynamic load balancing medium and electronic equipment, which can improve the performance of a proxy server and reduce the processing burden of the proxy server.
According to a first aspect of embodiments of the present application, there is provided a dynamic load balancing method, including the steps of:
after the configuration analysis of the proxy server is completed, acquiring first upstream configuration information of the proxy server, and storing the first upstream configuration information into a dynamic load balancing module; the first upstream configuration information comprises a plurality of server information of a proxy server reverse proxy;
when the dynamic load balancing module starts the working process, configuring an auxiliary plug-in for each working process, storing the first upstream configuration information to the auxiliary plug-in, and constructing a working process cluster based on the auxiliary plug-in; each working process forwards a data processing request sent by a client to a reverse proxy server based on the first upstream configuration information in the corresponding auxiliary plug-in;
and receiving an upstream configuration information change request, updating first upstream configuration information in an auxiliary plug-in of the working process based on the working process cluster, obtaining second upstream configuration information, and synchronizing the second upstream configuration information to the dynamic load balancing module.
According to a second aspect of embodiments of the present application, there is provided a dynamic load balancing apparatus, including:
the system comprises a configuration information acquisition module, a dynamic load balancing module and a dynamic load balancing module, wherein the configuration information acquisition module is used for acquiring first upstream configuration information of a proxy server after the configuration analysis of the proxy server is completed, and storing the first upstream configuration information into the dynamic load balancing module; the first upstream configuration information comprises a plurality of server information of a proxy server reverse proxy;
the configuration information storage module is used for configuring an auxiliary plug-in for each working process when the dynamic load balancing module starts the working process, storing the first upstream configuration information to the auxiliary plug-in, and constructing a working process cluster based on the auxiliary plug-in; each working process forwards a data processing request sent by a client to a reverse proxy server based on the first upstream configuration information in the corresponding auxiliary plug-in;
and the configuration information updating module is used for receiving an upstream configuration information changing request, updating the first upstream configuration information in the auxiliary plug-in of the working process based on the working process cluster, obtaining second upstream configuration information and synchronizing the second upstream configuration information to the dynamic load balancing module.
According to a third aspect of embodiments of the present application, there is provided an electronic device comprising a processor and a memory; the memory stores a computer program adapted to be loaded by the processor and to perform the dynamic load balancing method as described above.
According to a fourth aspect of embodiments of the present application, there is provided a computer readable storage medium having stored thereon a computer program, characterized in that the computer program, when executed by a processor, implements a dynamic load balancing method as described above.
After the proxy server configuration analysis is completed, acquiring first upstream configuration information of the proxy server, and storing the first upstream configuration information into a dynamic load balancing module; when the dynamic load balancing module starts the working process, configuring an auxiliary plug-in for each working process, storing the first upstream configuration information to the auxiliary plug-in, and constructing a working process cluster based on the auxiliary plug-in; the method comprises the steps of receiving an upstream configuration information change request, updating first upstream configuration information in an auxiliary plug-in of a working process based on the working process cluster, obtaining second upstream configuration information, and synchronizing the second upstream configuration information to the dynamic load balancing module, so that when the upstream configuration information is changed, reloading operation is not needed, restarting of the working process is not needed, and dynamic synchronization adjustment of the working process and the local upstream configuration information of the proxy server is performed based on the dynamic load balancing module, the auxiliary plug-in and the working process cluster, thereby improving the performance of the proxy server and reducing the processing load of the proxy server.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the application.
For a better understanding and implementation, the present invention is described in detail below with reference to the drawings.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described below, it being obvious that the drawings in the following description are only some embodiments of the present application, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a schematic block diagram of an application environment of a dynamic load balancing method provided in an embodiment of the present application;
fig. 2 is a flowchart of a dynamic load balancing method provided in an embodiment of the present application;
fig. 3 is a schematic diagram of a dynamic load balancing principle provided in an embodiment of the present application;
FIG. 4 is a flowchart of a method for synchronizing configuration information local to an auxiliary plug-in and a proxy server according to an embodiment of the present application;
FIG. 5 is a schematic block diagram of a dynamic load balancing apparatus provided herein;
fig. 6 is a schematic block diagram of the structure of the electronic device provided in the present application.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the present application more apparent, the following detailed description of the embodiments of the present application will be given with reference to the accompanying drawings.
It should be understood that the described embodiments are merely some, but not all, of the embodiments of the present application. All other embodiments, which can be made by one of ordinary skill in the art without undue burden from the embodiments of the present application, are within the scope of the embodiments of the present application.
When the following description refers to the accompanying drawings, the same numbers in different drawings refer to the same or similar elements, unless otherwise indicated. In the description of this application, it should be understood that the terms "first," "second," "third," and the like are used merely to distinguish between similar objects and are not necessarily used to describe a particular order or sequence, nor should they be construed to indicate or imply relative importance. The specific meaning of the terms in this application will be understood by those of ordinary skill in the art as the case may be. As used in this application and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. The word "if"/"if" as used herein may be interpreted as "at … …" or "at … …" or "in response to a determination".
Furthermore, in the description of the present application, unless otherwise indicated, "a plurality" means two or more. "and/or", describes an association relationship of an association object, and indicates that there may be three relationships, for example, a and/or B, and may indicate: a exists alone, A and B exist together, and B exists alone. The character "/" generally indicates that the context-dependent object is an "or" relationship.
As will be appreciated by those skilled in the art, the terms "client," "terminal device," and "terminal device" as used herein include both devices that include only wireless signal transmitters capable of transmitting and devices that include only wireless signal receivers capable of receiving, and devices that include both receiving and transmitting hardware capable of two-way communication over a two-way communication link. Such a device may include: a cellular or other communication device such as a personal computer, tablet, or the like, having a single-line display or a multi-line display or a cellular or other communication device without a multi-line display; a PCS (PersonalCommunications Service, personal communication system) that may combine voice, data processing, facsimile and/or data communication capabilities; a PDA (Personal Digital Assistant ) that can include a radio frequency receiver, pager, internet/intranet access, web browser, notepad, calendar and/or GPS (Global PositioningSystem ) receiver; a conventional laptop and/or palmtop computer or other appliance that has and/or includes a radio frequency receiver. As used herein, "client," "terminal device" may be portable, transportable, installed in a vehicle (aeronautical, maritime, and/or land-based), or adapted and/or configured to operate locally and/or in a distributed fashion, at any other location(s) on earth and/or in space. As used herein, a "client," "terminal device," or "terminal device" may also be a communication terminal, an internet terminal, or a music/video playing terminal, for example, a PDA, a MID (Mobile Internet Device ), and/or a mobile phone with music/video playing function, or may also be a device such as a smart tv, a set top box, or the like.
The hardware referred to by the names "server", "client", "service node", etc. in this application is essentially a computer device having the performance of a personal computer, and is a hardware device having necessary components disclosed by von neumann's principle, such as a central processing unit (including an arithmetic unit and a controller), a memory, an input device, and an output device, and a computer program is stored in the memory, and the central processing unit calls a program stored in the external memory to run in the memory, executes instructions in the program, and interacts with the input/output device, thereby completing a specific function.
It should be noted that the concept of "server" as referred to in this application is equally applicable to the case of a server farm. The servers should be logically partitioned, physically separate from each other but interface-callable, or integrated into a physical computer or group of computers, according to network deployment principles understood by those skilled in the art. Those skilled in the art will appreciate this variation and should not be construed as limiting the implementation of the network deployment approach of the present application.
Referring to fig. 1, fig. 1 is a schematic application scenario diagram of a dynamic load balancing method according to an embodiment of the present application, where the application scenario includes a client 10, a proxy server 20 and a backend server 30.
The client 10 interacts with the backend server 30 via the proxy server 20. Specifically, the client 10, the proxy server 20 and the back-end server 30 may all access the internet through a network access manner, so as to establish a data communication link between the client 10 and the proxy server 20 and between the proxy server 20 and the back-end server 30. The network may be a communication medium of various connection types capable of providing a communication link between the client 10 and the proxy server 20, and between the proxy server 20 and the back-end server 30, for example, a wired communication link, a wireless communication link, or a fiber optic cable, etc., which is not limited herein.
The client 10 refers to one end that transmits an access request to the backend server 30. The hardware to which the client 10 is directed is essentially a computer device, which may be, in particular, a smart phone, a smart interactive tablet, a personal computer or the like.
The proxy server 20 refers to one end that forwards access requests to the back-end server 30. The proxy server 20 is a transfer station of network information, and is mainly used for forwarding an access request of the client 10 and performing load balancing processing. The hardware to which the proxy server 20 is directed is essentially a computer device, which may be a computer device of the type, and in the embodiments of the present application, the proxy server 20 may be a Nginx device, or other proxy device.
It should be noted that, for one back-end server 30, there may be one or more proxy servers 20, and an access request sent by the client 10 to the back-end server 30 may be forwarded to the back-end server 30 via one of the proxy servers 20.
The back-end server 30 may be a server cluster system for data processing, which may be formed by a plurality of servers, for example, may be a service server, which may be responsible for further connecting to related audio data servers, video streaming servers, other servers providing related support, etc., to form a logically related server cluster for providing services to related terminal devices, such as the client 10 shown in fig. 1.
In practical applications, the backend server 30 is usually in a cluster, for example, 5 computers are deployed as the backend server 30, and these 5 computers provide the same function, so as to form a backend server 30 cluster. When the client 10 initiates a request to the proxy server 20, the proxy server 20 forwards the request to one of the 5 computers for processing according to the forwarding rule, so that the request of the client 10 is scattered to the 5 computers for processing, and the data processing capability is improved.
In order to better understand the technical solution of the present application, the following describes a technical solution for illustrating load balancing in the related art.
The proxy server needs to acquire upstream (upstream) configuration information when implementing load balancing performance. The upstream configuration information is used to indicate a number of backend server information configuring the proxy reverse proxy and a load balancing algorithm. The backend server information may include, but is not limited to: the IP address of the backend server 30 and the port number on which the service listens, etc. The load balancing algorithm may be any one or more algorithms of the related art, such as a polling method, a weighted random method, a minimum connection method, and the like.
To improve load balancing performance of the proxy server, the proxy server will also typically configure a worker process (worker process) to quickly process requests from the client 10 through the worker process. The number of work processes may be configured as desired, generally corresponding to the number of CPU cores.
Specifically, taking a live broadcast application scenario as an example, when the anchor client 10 or the audience client 10 initiates a live broadcast data processing request to the proxy server, the work process receives the live broadcast data processing request, and forwards the live broadcast data processing request to a real server at the back end for processing according to upstream configuration information of the proxy server.
In the live broadcast peak period, when the live broadcast data processing requests sent by the anchor client 10 or the audience client 10 are more, the pressure of the back-end server 30 is increased, the server end needs to be expanded, or when the operation and maintenance platform connected with the back-end server 30 detects that the back-end server 30 changes, the upstream configuration information of the proxy server needs to be correspondingly modified.
In the related art, after the upstream configuration information of the proxy server is modified, a reloading operation is required to be performed, the upstream configuration information is reloaded, and the reloading operation restarts the working processes, on one hand, after the proxy server is used for a period of time, the number of the working processes of the proxy server is increased, the average restart will lead to the decline of system resources, and mutual exclusion lock competition among all working processes during the restart will lead to the quick decline of QPS (Queries Per Second is the query rate per second, the number of times of query that a server can respond per second is a measure for how much traffic is processed by a specific query server in a specified time, namely the number of response requests per second, namely the maximum throughput capacity); on the other hand, the old working process finishes the task processing of the current request and releases the resources of the working process, so if the old working process and the server at the back end are in dead connection, the number of the old working process is multiplied along with the reloading times in a period of time, the performance of the proxy server is reduced, and the processing burden of the proxy server is increased.
Based on the above problems, the embodiment of the application provides a dynamic load balancing method. Referring to fig. 2, fig. 2 is a flow chart of a dynamic load balancing method according to an embodiment of the present application. The dynamic load balancing method of the embodiment of the application comprises the following steps:
step S101: after the proxy server configuration analysis is completed, acquiring first upstream configuration information of the proxy server, and storing the first upstream configuration information into a dynamic load balancing module; the first upstream configuration information includes a number of server information for proxy server reverse proxies.
The proxy server is configured with a dynamic load balancing module which is a third-party plug-in and is used for receiving a change request of a user for the first upstream configuration information, forwarding the change request to the auxiliary plug-in, detecting the latest first upstream configuration information of the auxiliary plug-in at fixed time and finishing updating of the first upstream configuration information of the auxiliary plug-in.
In the embodiment of the present application, the dynamic load balancing module is a dynups module (nmginx_yy_dynups_module for short), and the dynamic load balancing method of the present application may be executed by the dynamic load balancing module. Specifically, the dynamic load balancing module acquires and stores the upstream configuration information. In an actual scheme, the proxy server stores first upstream configuration information, and after the proxy server configuration is analyzed, the dynamic load balancing module is started to acquire the first upstream configuration information and store the first upstream configuration information into the dynamic load balancing module.
The first upstream configuration information includes one or more upstream configuration files; the upstream configuration file includes several backend server information that configure proxy server reverse proxies and load balancing algorithms. The backend server information may include, but is not limited to: the IP address of the backend server and the port number the service listens to, etc. The load balancing algorithm may be any one or more algorithms of the related art, such as a polling method, a weighted random method, a minimum connection method, and the like.
Step S102: when the dynamic load balancing module starts the working process, configuring an auxiliary plug-in for each working process, storing first upstream configuration information into the auxiliary plug-in, and constructing a working process cluster based on the auxiliary plug-in; wherein each work process forwards the data processing request sent by the client to the server of the reverse proxy based on the first upstream configuration information in the respective auxiliary plug-in.
When the dynamic load balancing module starts the working process, the auxiliary plug-ins are triggered to be started, the auxiliary plug-ins are further configured for each working process, and upstream configuration information is stored in the auxiliary plug-ins corresponding to the working process.
It should be understood that the working process is correspondingly matched with a dynamic load balancing module and an auxiliary plug-in, wherein the first upstream configuration information stored by the dynamic load balancing module is used for indicating the configuration in use, and the first upstream configuration information stored by the auxiliary plug-in is used for indicating the newly changed configuration.
The auxiliary plug-in is an auxiliary tool for data interaction and storage, which is provided in each work process. The auxiliary plug-in is used for providing an interface for the dynamic load balancing module to call so as to realize dynamic synchronization of the upstream configuration information of the auxiliary plug-in and the dynamic load balancing module, and is used for establishing cooperative connection of all working processes so as to construct a working process cluster and realize dynamic synchronization of the upstream configuration information among all working processes.
In this embodiment of the present application, the dynamic load balancing module is further provided with a shared memory, and when the working process starts to call the auxiliary plug-in, the number of the working process is recorded in the shared memory, so as to record the starting count of the process. When the first process of the new batch of processes starts during reloading operation, the starting count of the current process is obtained from the shared memory, and then the starting count is broadcast to other processes based on the working process cluster. However, it should be noted that the shared memory of the present application is not used to store upstream configuration information, but is used to record the start count of the process, and after the work process starts, the data of the shared memory will not be called.
Step S103: and receiving an upstream configuration information change request, updating first upstream configuration information in an auxiliary plug-in of a working process based on the working process cluster, obtaining second upstream configuration information, and synchronizing the second upstream configuration information to a dynamic load balancing module.
The upstream configuration information change request may be sent by a client, or may be sent by a back-end server, or may be sent by an operation and maintenance device connected to the back-end server, specifically, taking a live broadcast application scenario as an example, during a live broadcast peak period, when a live broadcast data processing request sent by a hosting client or a viewer client is more, the pressure of the back-end server increases, and when a condition of expanding the back-end server is met, or when an operation and maintenance platform connected to the back-end server detects that the back-end server changes, the back-end server cluster or the operation and maintenance platform will send the upstream configuration information change request to a proxy server.
The upstream configuration information change request may include, among other things, adding or modifying updated upstream profile identifications and updated upstream profile content.
It can be understood that after receiving the request for changing the upstream configuration information, the first upstream configuration information in the auxiliary plugin of each working process is updated based on the working process cluster to obtain the second upstream configuration information, and meanwhile, each working process synchronizes the updated second upstream configuration information to the dynamic load balancing module based on the dynamic load balancing module matched with each auxiliary plugin, and then the first upstream configuration information initially stored by the proxy server is updated to the second upstream configuration information through the dynamic load balancing module.
After the proxy server configuration analysis is completed, acquiring first upstream configuration information of the proxy server, and storing the first upstream configuration information into a dynamic load balancing module; when the dynamic load balancing module starts the working process, configuring an auxiliary plug-in for each working process, storing first upstream configuration information into the auxiliary plug-in, and constructing a working process cluster based on the auxiliary plug-in; the method comprises the steps of receiving an upstream configuration information changing request, updating first upstream configuration information in an auxiliary plug-in of a working process based on a working process cluster, obtaining second upstream configuration information, and synchronizing the second upstream configuration information to a dynamic load balancing module, so that reloading operation is not required when the upstream configuration information is changed, restarting the working process is not required, and dynamic synchronous adjustment of the upstream configuration information of the working process and the dynamic load balancing module is performed based on the dynamic load balancing module, the auxiliary plug-in and the working process cluster, thereby improving the performance of a proxy server and reducing the processing burden of the proxy server.
In an alternative embodiment, after the step of building the work process cluster based on the auxiliary plugin in step S102, the method includes:
Step S1021: and based on the auxiliary plug-in, determining one working process as a master process and the other working processes as slave processes according to a preset master process determination mode.
The work process is a work process, all business logic is performed in the process, and when the Reactor thread receives data from the client, the data is packaged and sent to a certain work process through a pipeline.
As shown in fig. 3, the master process (master process) is also called a management process, and is a special process in the working process, only one of which is responsible for receiving external information, such as receiving an upstream configuration information change request; the master process also synchronizes state information of the master process to other slave processes in time.
There may be a plurality of slave processes (salve processes), and in general, the rest of the working processes except the master process are slave processes, and the slave processes are responsible for processing external requests.
It will be appreciated that since the various work processes are within the same proxy host, the master process can be quickly and easily determined. In an alternative embodiment, the main process may be determined by a process lock, for example, a file lock, and specifically, when each auxiliary plug-in runs with a working process, an attempt is made to lock a local file, and which auxiliary plug-in locks the file, and then the working process corresponding to the auxiliary plug-in is the main process.
In step S103, a step of receiving an upstream configuration information change request, and updating, based on the work process cluster, first upstream configuration information in the auxiliary plug-in of each work process, includes:
step S1031: receiving an upstream configuration information change request, and updating first upstream configuration information in an auxiliary plug-in corresponding to a main process to obtain second upstream configuration information; the second upstream configuration information is synchronized to all slave processes based on the working process cluster.
The main process updates the upstream configuration information of the auxiliary plug-in unit according to the received upstream configuration information change request, obtains second upstream configuration information, and provides the updated second upstream configuration information for the slave process to inquire.
The slave process compares the own upstream configuration information with the upstream configuration information of the master process or other processes in the working process cluster, and when the upstream configuration information of the existing process is newer than the slave process, the slave process updates the own upstream configuration information.
In the embodiment of the application, when an upstream configuration information change request is received, the upstream configuration information of the auxiliary plug-in of the main process is updated to obtain second upstream configuration information; based on the working process cluster, the second upstream configuration information is synchronized to all auxiliary plug-ins of the slave processes, so that the processes are not interfered with each other when updated, resource competition is avoided, the problem of low update efficiency caused by waiting for queuing to finish updating is avoided, and efficient and rapid updating of the upstream configuration information can be realized.
In an optional embodiment, in step S1021, based on the auxiliary plug-in, according to a preset main process determining manner, one of the working processes is determined to be a main process, and the other working processes are determined to be slave processes, including:
step S10211: and each working process executes file locking operation based on the auxiliary plug-in, the working process corresponding to the auxiliary plug-in which successfully locks the file is determined as a master process, and other working processes are determined as slave processes.
In the method, each working process is located in the same proxy server host and in the same working process cluster, so that the master process and the slave process can be determined rapidly and synchronously by executing a file locking mode.
In an alternative embodiment, each of the working processes in step S10211 performs a file locking operation based on the auxiliary plug-in, determines a working process corresponding to the auxiliary plug-in that successfully locks the file as a master process, and after the other working processes are determined as slave processes, includes:
step S10212: if the main process is detected to be out of the working process cluster or at least one working process state in the working process cluster is detected to change, controlling each working process of the working process cluster to re-execute file locking operation based on the auxiliary plug-in, and re-determining the main process and the slave process.
The master process can regularly broadcast own state information (including addresses, names, roles and the like), so that other slave processes in the working process cluster can timely know who the master process is, the master process changes and the like, and meanwhile, the master process can monitor the state information of each slave process, so that if the master process is detected to exit the working process cluster, for example, the original master process exits the working process cluster after reloading; or at least one working process state in the working process cluster is changed, each working process of the working process cluster is controlled to re-execute file locking operation based on the auxiliary plug-in, and the master process and the slave process are re-determined, so that stability of the master process in the cluster is ensured, accuracy of information updating is further realized, and dynamic load balancing is stable.
In an optional embodiment, step S1031, based on the working process cluster, synchronizes the updated second upstream configuration information of the auxiliary plug-in of the master process to all the slave processes, including:
step S10311: based on the working process cluster, the second upstream configuration information is synchronized to all slave processes according to the epidemic protocol.
The epidemic protocol (Epidemic Protocol, also called gossip protocol) is a p2p distributed protocol, and the core of the epidemic protocol is that under a decentralization structure, the state information of a whole cluster is consistent by transmitting information parts, and the downtime and restarting of any node can not influence the propagation of messages.
It should be understood that when each slave process updates the upstream configuration information of the respective auxiliary plug-in based on the working process cluster, the slave process may update according to the second upstream configuration information acquired from the auxiliary plug-in of the master process or update according to the second upstream configuration information acquired from other slave processes, and if the time node updated by the other processes is newer than that of the slave process itself.
Specifically, in the working process cluster, the first upstream configuration information stored in the auxiliary plug-in of each slave process includes update time corresponding to the first upstream configuration information, at least one upstream configuration file and a file identifier corresponding to the upstream configuration file; the second upstream configuration information updated by the auxiliary plug-in of each slave process comprises update time corresponding to the second upstream configuration information, an updated upstream configuration file and file identifications corresponding to the updated upstream configuration file, when gossip protocol synchronization is carried out, the current slave process compares the update time of the upstream configuration information of other slave processes or the master process, and if the time difference value of the update time is not in a preset time range, hash values corresponding to the upstream configuration file identifications in the auxiliary plug-in with updated update time are compared with hash values corresponding to the upstream configuration file identifications with older update time; and synchronizing the corresponding upstream configuration files in the auxiliary plug-in with newer update time to the older update time aiming at the upstream configuration files with different hash values, wherein the update time of the upstream configuration information with the older update time is the current time.
According to the embodiment of the application, the updated second upstream configuration information of the auxiliary plug-ins of the main process is synchronized to all the auxiliary plug-ins of the auxiliary processes according to the epidemic protocol, so that the upstream configuration information of each process can be ensured to be consistent.
Referring to fig. 3 and fig. 4, in an alternative embodiment, the first upstream configuration information includes an update time corresponding to the first upstream configuration information, at least one upstream configuration file, and a file identifier corresponding to the upstream configuration file; the second upstream configuration information comprises update time corresponding to the second upstream configuration information, an updated upstream configuration file and a file identifier corresponding to the updated upstream configuration file; step S103 of synchronizing the second upstream configuration information to the proxy server includes:
step S10321: and comparing the update time of upstream configuration information of the dynamic load balancing module and the auxiliary plug-in the same working process.
In the embodiment of the application, the upstream configuration information of the dynamic load balancing module and the auxiliary plug-in are configured with an update time field, so as to identify the update time of the respective upstream configuration information, and whether the proxy server local needs to be updated or not is determined by comparing the update time field values of the proxy server local and the auxiliary plug-in.
Step S10322: and if the update time of the upstream configuration information in the dynamic load balancing module is smaller than the update time of the upstream configuration information in the auxiliary plug-in, comparing the hash value corresponding to each upstream configuration file identifier in the auxiliary plug-in with the hash value corresponding to each upstream configuration file identifier in the dynamic load balancing module.
It can be understood that if the update time of the upstream configuration information in the dynamic load balancing module is less than the update time of the upstream configuration information in the auxiliary plugin, it is indicated that the upstream configuration information in the auxiliary plugin is updated, and at this time, which file is further determined to be updated according to the hash value corresponding to the upstream configuration file identifier, so that only the corresponding file needs to be updated, and the entire upstream configuration information does not need to be changed, thereby improving the update efficiency. If the update time of the upstream configuration information of the dynamic load balancing module is smaller than the update time of the upstream configuration information of the auxiliary plug-in, the upstream configuration information of the auxiliary plug-in is not updated, and the upstream configuration information of the dynamic load balancing module is kept unchanged.
Step S10323: and calling an auxiliary plug-in for the upstream configuration files with different hash values, synchronizing the corresponding upstream configuration files in the auxiliary plug-in to the dynamic load balancing module, and updating the update time of the upstream configuration information of the dynamic load balancing module to be the current time.
According to the embodiment of the application, whether the upstream configuration information of the dynamic load balancing module is consistent with the upstream configuration information of the auxiliary plug-in is preliminarily determined by comparing the update time of the upstream configuration information of the dynamic load balancing module and the upstream configuration information of the auxiliary plug-in, and when the upstream configuration information is inconsistent with the upstream configuration information of the dynamic load balancing module, the upstream configuration file is quickly determined by the hash value corresponding to the upstream configuration file identifier, so that the upstream configuration file updated by the auxiliary plug-in is only required to be updated, and the data updating matching efficiency and the data updating efficiency are improved.
In an alternative embodiment, the step of comparing the update time of the upstream configuration information in the dynamic load balancing module and the auxiliary plugin in step S10321 includes: and comparing the update time of upstream configuration information of the dynamic load balancing module and the auxiliary plug-in unit according to a preset time interval. According to the embodiment of the application, the update time of the upstream configuration information of the dynamic load balancing module and the auxiliary plug-in is compared according to the preset time interval to judge whether the auxiliary plug-in is updated, so that dynamic synchronization of the upstream configuration information of the dynamic load balancing module and the auxiliary plug-in is ensured.
In an alternative embodiment, the load balancing method further comprises the steps of: when the auxiliary plug-in is called, the hash value is updated and stored to the auxiliary plug-in and the dynamic load balancing module according to the hash value corresponding to the file identifier of the updated upstream configuration file in the auxiliary plug-in. When the auxiliary plug-in is called, the hash values corresponding to the upstream configuration file identifiers of the auxiliary plug-in and the dynamic load balancing module are updated, so that the upstream configuration files changed in the auxiliary plug-in and the dynamic load balancing module are rapidly determined, and dynamic synchronization of the upstream configuration information of the dynamic load balancing module and the auxiliary plug-in is ensured.
Fig. 5 is a schematic structural diagram of a dynamic load balancing device according to an embodiment of the present application. The apparatus 200 comprises:
the configuration information obtaining module 201 is configured to obtain first upstream configuration information of the proxy server after the proxy server configuration is resolved, and store the first upstream configuration information to the dynamic load balancing module; the first upstream configuration information comprises a plurality of server information of a proxy server reverse proxy;
the configuration information storage module 202 is configured to configure an auxiliary plug-in for each work process when the dynamic load balancing module starts the work process, store the first upstream configuration information to the auxiliary plug-in, and construct a work process cluster based on the auxiliary plug-in; each working process forwards a data processing request sent by a client to a reverse proxy server based on first upstream configuration information in each auxiliary plug-in;
the configuration information updating module 203 is configured to receive an upstream configuration information change request, update, based on the work process cluster, first upstream configuration information in an auxiliary plug-in of the work process, obtain second upstream configuration information, and synchronize the second upstream configuration information to the dynamic load balancing module.
It should be noted that, when the dynamic load balancing apparatus provided in the embodiments of the present application performs the dynamic load balancing method, only the division of the above functional modules is used for illustrating, in practical application, the above functional allocation may be performed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules, so as to complete all or part of the functions described above. In addition, the dynamic load balancing device provided in the embodiment of the present application and the dynamic load balancing method provided in the embodiment of the present application belong to the same concept, which embody detailed implementation procedures in the method embodiment, and are not described herein again.
The embodiment of the dynamic load balancing device provided by the embodiment of the application can be applied to electronic equipment, such as a proxy server, and the embodiment of the device can be realized by software, hardware or a combination of hardware and software. Taking software implementation as an example, the device in a logic sense is formed by reading corresponding computer program instructions in the nonvolatile memory into the memory through a processor of the file processing where the device is located. In a hardware-level, the electronic devices in which they reside may include a processor, a network interface, memory, and non-volatile storage, which are interconnected by a data bus or other well-known means.
Fig. 6 is a schematic structural diagram of an electronic device provided in the present application. As shown in fig. 6, the electronic device 16 may include: a processor 160, a memory 161, and a computer program 162 stored in the memory 161 and executable on the processor 160, such as: an application program based on dynamic load balancing; the processor 160, when executing the computer program 162, implements the steps of the dynamic load balancing method of the above-described embodiments.
Wherein the processor 160 may include one or more processing cores. The processor 160 utilizes various interfaces and wiring to connect various portions of the electronic device 16, performs various functions of the electronic device 16 and processes data by executing or executing instructions, programs, code sets, or instruction sets stored in the memory 161, and invoking data in the memory 161, and optionally the processor 160 may be implemented in at least one hardware form in the form of digital signal processing (Digital Signal Processing, DSP), field-programmable gate array (Field-Programmable Gate Array, FPGA), programmable logic array (Programble Logic Array, PLA). The processor 160 may integrate one or a combination of several of a central processing unit (Central Processing Unit, CPU), an image processor (Graphics Processing Unit, GPU), and a modem, etc. The CPU mainly processes an operating system, a user interface, an application program and the like; the GPU is used for rendering and drawing the content required to be displayed by the touch display screen; the modem is used to handle wireless communications. It will be appreciated that the modem may not be integrated into the processor 160 and may be implemented by a single chip.
The Memory 161 may include a random access Memory (Random Access Memory, RAM) or a Read-Only Memory (Read-Only Memory). Optionally, the memory 161 includes a non-transitory computer readable medium (non-transitory computer-readable storage medium). Memory 161 may be used to store instructions, programs, code, sets of codes, or sets of instructions. The memory 161 may include a stored program area and a stored data area, wherein the stored program area may store instructions for implementing an operating system, instructions for at least one function (such as touch instructions, etc.), instructions for implementing the various method embodiments described above, etc.; the storage data area may store data or the like referred to in the above respective method embodiments. The memory 161 may also optionally be at least one storage device located remotely from the aforementioned processor 160.
The embodiment of the present application further provides a computer storage medium, where a plurality of instructions may be stored, where the instructions are adapted to be loaded and executed by a processor, and the specific implementation procedure may refer to the specific description of the foregoing embodiment, and details are not repeated herein.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-described division of the functional units and modules is illustrated, and in practical application, the above-described functional distribution may be performed by different functional units and modules according to needs, i.e. the internal structure of the apparatus is divided into different functional units or modules to perform all or part of the above-described functions. The functional units and modules in the embodiment may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit, where the integrated units may be implemented in a form of hardware or a form of a software functional unit. In addition, specific names of the functional units and modules are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present application. The specific working process of the units and modules in the above system may refer to the corresponding process in the foregoing method embodiment, which is not described herein again.
In the foregoing embodiments, the descriptions of the embodiments are emphasized, and in part, not described or illustrated in any particular embodiment, reference is made to the related descriptions of other embodiments.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
In the embodiments provided in the present invention, it should be understood that the disclosed apparatus/terminal device and method may be implemented in other manners. For example, the apparatus/terminal device embodiments described above are merely illustrative, e.g., the division of modules or units is merely a logical function division, and there may be additional divisions when actually implemented, e.g., multiple units or components may be combined or integrated into another system, or some features may be omitted or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection via interfaces, devices or units, which may be in electrical, mechanical or other forms.
The units described as separate units may or may not be physically separate, and units shown as units may or may not be physical units, may be located in one place, or may be distributed over a plurality of network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in the embodiments of the present invention may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated modules/units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable storage medium. Based on such understanding, the present invention may implement all or part of the flow of the method of the above embodiment, or may be implemented by a computer program to instruct related hardware, where the computer program may be stored in a computer readable storage medium, and when the computer program is executed by a processor, the steps of each method embodiment described above may be implemented. Wherein the computer program comprises computer program code, which may be in the form of source code, object code, executable files or in some intermediate form, etc.
The present invention is not limited to the above-described embodiments, but, if various modifications or variations of the present invention are not departing from the spirit and scope of the present invention, the present invention is intended to include such modifications and variations as fall within the scope of the claims and the equivalents thereof.

Claims (11)

1. The dynamic load balancing method is characterized by comprising the following steps of:
after the configuration analysis of the proxy server is completed, acquiring first upstream configuration information of the proxy server, and storing the first upstream configuration information into a dynamic load balancing module; the first upstream configuration information comprises a plurality of server information of a proxy server reverse proxy;
when the dynamic load balancing module starts the working process, configuring an auxiliary plug-in for each working process, storing the first upstream configuration information to the auxiliary plug-in, and constructing a working process cluster based on the auxiliary plug-in; each working process forwards a data processing request sent by a client to a reverse proxy server based on the first upstream configuration information in the corresponding auxiliary plug-in;
and receiving an upstream configuration information change request, updating first upstream configuration information in an auxiliary plug-in of the working process based on the working process cluster, obtaining second upstream configuration information, and synchronizing the second upstream configuration information to the dynamic load balancing module.
2. The dynamic load balancing method according to claim 1, wherein:
after the step of constructing the work process cluster based on the auxiliary plug-in, the method comprises the following steps:
based on the auxiliary plug-in, determining one working process as a master process and the other working processes as slave processes according to a preset master process determining mode;
the step of receiving an upstream configuration information change request, based on the work process cluster, and updating the first upstream configuration information in the auxiliary plugin corresponding to each work process includes:
receiving an upstream configuration information change request, and updating first upstream configuration information in an auxiliary plug-in of the main process to obtain second upstream configuration information; and synchronizing the second upstream configuration information to all slave processes based on the working process cluster.
3. The dynamic load balancing method according to claim 2, wherein:
the step of determining one of the working processes as a master process and the other working processes as slave processes based on the auxiliary plug-in according to a preset master process determination mode comprises the following steps:
and each working process executes file locking operation based on the auxiliary plug-in, the working process corresponding to the auxiliary plug-in which successfully locks the file is determined as a master process, and other working processes are determined as slave processes.
4. A dynamic load balancing method according to claim 3, characterized in that:
the work processes execute file locking operation based on the auxiliary plug-in, the work process corresponding to the auxiliary plug-in which successfully locks the file is determined as a master process, and after the other work processes are determined as slave processes, the method comprises the following steps:
and if the fact that the main process exits the working process cluster or at least one working process state in the working process cluster is detected to change, controlling each working process of the working process cluster to re-execute file locking operation based on the auxiliary plug-in, and re-determining the main process and the slave process.
5. The dynamic load balancing method according to claim 2, wherein:
the step of synchronizing the second upstream configuration information to all slave processes based on the work process cluster includes:
and based on the working process cluster, synchronizing the second upstream configuration information to all slave processes according to an epidemic protocol.
6. The dynamic load balancing method according to any one of claims 1 to 5, wherein:
the first upstream configuration information comprises update time corresponding to the first upstream configuration information, at least one upstream configuration file and a file identifier corresponding to the upstream configuration file; the second upstream configuration information comprises update time corresponding to the second upstream configuration information, an updated upstream configuration file and a file identifier corresponding to the updated upstream configuration file;
The step of synchronizing the second upstream configuration information to a dynamic load balancing module includes:
comparing the update time of upstream configuration information of the dynamic load balancing module and the auxiliary plugin in the same working process;
if the update time of the upstream configuration information in the dynamic load balancing module is smaller than the update time of the upstream configuration information in the auxiliary plug-in, comparing the hash value corresponding to each upstream configuration file identifier in the auxiliary plug-in with the hash value corresponding to each upstream configuration file identifier in the dynamic load balancing module;
and calling the auxiliary plug-in for upstream configuration files with different hash values, synchronizing the corresponding upstream configuration files in the auxiliary plug-in to the dynamic load balancing module, obtaining second upstream configuration information, and updating the update time of the upstream configuration information of the dynamic load balancing module to be the current time.
7. The dynamic load balancing method according to claim 6, wherein:
the step of comparing the update time of the upstream configuration information of the dynamic load balancing module and the auxiliary plug-in the same working process comprises the following steps:
and comparing the update time of upstream configuration information of the dynamic load balancing module and the auxiliary plug-in the same working process according to a preset time interval.
8. The dynamic load balancing method according to claim 7, wherein: the method further comprises the steps of:
and when the auxiliary plug-in is called, generating a corresponding hash value according to the updated file identification of the upstream configuration file in the auxiliary plug-in, and updating and storing the hash value to the auxiliary plug-in and the dynamic load balancing module.
9. A dynamic load balancing apparatus, comprising:
the system comprises a configuration information acquisition module, a dynamic load balancing module and a dynamic load balancing module, wherein the configuration information acquisition module is used for acquiring first upstream configuration information of a proxy server after the configuration analysis of the proxy server is completed, and storing the first upstream configuration information into the dynamic load balancing module; the first upstream configuration information comprises a plurality of server information of a proxy server reverse proxy;
the configuration information storage module is used for configuring an auxiliary plug-in for each working process when the dynamic load balancing module starts the working process, storing the first upstream configuration information to the auxiliary plug-in, and constructing a working process cluster based on the auxiliary plug-in; each working process forwards a data processing request sent by a client to a reverse proxy server based on the first upstream configuration information in the corresponding auxiliary plug-in;
And the configuration information updating module is used for receiving an upstream configuration information changing request, updating the first upstream configuration information in the auxiliary plug-in of the working process based on the working process cluster, obtaining second upstream configuration information and synchronizing the second upstream configuration information to the dynamic load balancing module.
10. An electronic device includes a processor and a memory; the memory stores a computer program adapted to be loaded by the processor and to perform the dynamic load balancing method according to any one of claims 1 to 8.
11. A computer readable storage medium, on which a computer program is stored, characterized in that the computer program, when executed by a processor, implements a dynamic load balancing method according to any one of claims 1 to 8.
CN202310317103.XA 2023-03-28 2023-03-28 Dynamic load balancing method, dynamic load balancing device, dynamic load balancing medium and electronic equipment Pending CN116436921A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310317103.XA CN116436921A (en) 2023-03-28 2023-03-28 Dynamic load balancing method, dynamic load balancing device, dynamic load balancing medium and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310317103.XA CN116436921A (en) 2023-03-28 2023-03-28 Dynamic load balancing method, dynamic load balancing device, dynamic load balancing medium and electronic equipment

Publications (1)

Publication Number Publication Date
CN116436921A true CN116436921A (en) 2023-07-14

Family

ID=87088348

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310317103.XA Pending CN116436921A (en) 2023-03-28 2023-03-28 Dynamic load balancing method, dynamic load balancing device, dynamic load balancing medium and electronic equipment

Country Status (1)

Country Link
CN (1) CN116436921A (en)

Similar Documents

Publication Publication Date Title
CN107943594B (en) Data acquisition method and device
CN107465767B (en) Data synchronization method and system
US8972500B2 (en) Data share system, data process apparatus, and computer-readable recording medium
CN110377431B (en) Service calling method and device under multi-registry scene
CN116016556A (en) Control method of screen projection system, display device and readable storage medium
CN110933160A (en) Data access method, server, terminal and storage medium
AU2020305669A1 (en) Special effect synchronization method, device, and storage medium
CN110764688A (en) Method and device for processing data
CN112131014B (en) Decision engine system and business processing method thereof
CN109471713B (en) Method and device for inquiring information
CN113452770A (en) Data synchronization method and device, computer equipment and storage medium
CN111314416B (en) Data synchronization method, device, system, equipment and storage medium
CN116436921A (en) Dynamic load balancing method, dynamic load balancing device, dynamic load balancing medium and electronic equipment
CN115023929A (en) Data synchronization method, device, system, electronic equipment and storage medium
CN110661857B (en) Data synchronization method and device
CN113596119B (en) Edge capability distribution method, system, device and computer readable storage medium
CN115208905A (en) Device information synchronization method, device, system, electronic device and storage medium
CN115629909A (en) Service data processing method and device, electronic equipment and storage medium
CN110071949B (en) System, method and device for managing computing application across geographic areas
CN111294661B (en) Bullet screen display method and device, bullet screen server equipment and storage medium
CN110324377B (en) Push interaction method and device, electronic equipment and medium
CN113783826A (en) Micro-service exception handling method and device
CN112114856A (en) Hot updating method and device
CN111427950A (en) Data transmitting and receiving method, corresponding device, equipment and storage medium
CN112153093A (en) Task scheduling method, device and equipment based on cluster and readable storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination