Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND APPARATUS FOR CONTROLLING EDGE COMPUTING DEVICES, AND STORAGE MEDIUM
Document Type and Number:
WIPO Patent Application WO/2021/112765
Kind Code:
A1
Abstract:
Disclosed are a method and an apparatus for controlling edge computing device. The method includes: acquiring running status of respective computing modules in a first edge computing device; computing health information of the first edge computing device based on the running status of the respective computing modules; acquiring health information of a second edge computing device; then determining master and slave status information based on the health information of the first edge computing device and the health information of the second edge computing device; and finally, executing an edge computing task corresponding to an edge computing system based on the master and slave status information. With the solution above, the master and slave status can be determined by comparing the health information of the first and second edge computing devices for executing the edge computing task, thereby solving the problem of data loss caused by inaccurate judgment of the master and slave status, and improving the stability in executing of the edge computing task.

Inventors:
YIN TAO (CN)
CUI CHANGDONG (CN)
Application Number:
PCT/SG2020/050713
Publication Date:
June 10, 2021
Filing Date:
December 03, 2020
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ENVISION DIGITAL INT PTE LTD (SG)
SHANGHAI ENVISION DIGITAL CO LTD (CN)
International Classes:
G06F9/50; G06F11/07
Foreign References:
US20120110373A12012-05-03
CN109782695A2019-05-21
US20190313269A12019-10-10
Attorney, Agent or Firm:
YUSARN AUDREY (SG)
Download PDF:
Claims:
CLAIMS

What is claimed is:

1. A method for controlling edge computing devices, wherein the method is performed by a first edge computing device in an edge computing system, the edge computing system further comprising a second edge computing device, and the method comprises: acquiring running status of respective computing modules in the first edge computing device; computing health information of the first edge computing device based on the running status of the respective computing modules; acquiring health information of the second edge computing device, wherein the health information of the second edge computing device is acquired by computation based on running status of respective computing modules of the second edge computing device; determining master and slave status information based on the health information of the first edge computing device and the health information of the second edge computing device, wherein the master and slave status information is intended to indicate a master device and a slave device between the first edge computing device and the second edge computing device; and executing an edge computing task corresponding to the edge computing system based on the master and slave status information.

2. The method according to claim 1, wherein the health information comprises a health value that is positively correlated to running stability of a corresponding device; and determining the master and slave status information based on the health information of the first edge computing device and the health information of the second edge computing device comprises: acquiring a magnitude relationship by comparing the health value of the first edge computing device with the health value of the second edge computing device; and determining the master and slave status information based on the magnitude relationship.

3. The method according to claim 2, wherein determining the master and slave status information based on the magnitude relationship comprises: determining the master and slave status information as first master and slave status information if the health value of the first edge computing device is greater than the health value of the second edge computing device, wherein the first master and slave status information indicates that the first edge computing device is a master device and the second edge computing device is a slave device; determining the master and slave status information as second master and slave status information if the health value of the first edge computing device is less than the health value of the second edge computing device, wherein the second master and slave status information indicates that the first edge computing device is a slave device and the second edge computing device is a master device; and determining the master and slave status information according to a priority of the first edge computing device and a priority of the second edge computing device if the health value of the first edge computing device is equal to the health value of the second edge computing device.

4. The method according to claim 3, wherein determining the master and slave status information according to the priority of the first edge computing device and the priority of the second edge computing device if the health value of the first edge computing device is equal to the health value of the second edge computing device comprises: determining the master and slave status information as the first master and slave status information when the priority of the first edge computing device is higher than the priority of the second edge computing device; determining the master and slave status information as the second master and slave status information when the priority of the first edge computing device is lower than the priority of the second edge computing device; and maintaining the master and slave status of the first edge computing device and the second edge computing device when the priority of the first edge computing device is equal to the priority of the second edge computing device.

5. The method according to claim 1, wherein acquiring the health information of the second edge computing device comprises: acquiring the health information of the second edge computing device over a Transmission Control Protocol (TCP) connection between the first edge computing device and the second edge computing device.

6. The method according to claim 5, wherein the edge computing system further comprises a mediation device, the mediation device being communicatively connected to the first edge computing device and the second edge computing device respectively; and the method further comprises: sending the health information of the first edge computing device to the mediation device when the TCP connection between the first edge computing device and the second edge computing device fails; and receiving the master and slave status information returned by the mediation device, wherein the master and slave status information is determined by the mediation device based on the health information of the first edge computing device and the health information of the second edge computing device; and the master and slave status information is intended to indicate a master device and a slave device between the first edge computing device and the second edge computing device.

7. The method according to claim 1, further comprising: acquiring a switching time point of a previous master/salve switching of the first edge computing device if the master and slave status of the first edge computing device indicated by the master and slave status information is different from current master and slave status of the first edge computing device; and switching the master and slave status of the first edge computing device based on the master and slave status information when a time interval between the switching time point and a current time point is greater than an interval threshold.

8. An apparatus for controlling edge computing devices, wherein the apparatus is applicable to a first edge computing device in an edge computing system, the edge computing system further comprising a second edge computing device, and the apparatus comprises: a status acquiring module, configured to acquire running status of respective computing modules in the first edge computing device; an information computing module, configured to compute health information of the first edge computing device based on the running status of the respective computing modules; an information acquiring module, configured to acquire health information of the second edge computing device, wherein the health information of the second edge computing device is acquired by computation based on running status of respective computing modules of the second edge computing device; a master and slave determining module, configured to determine master and slave status information based on the health information of the first edge computing device and the health information of the second edge computing device, wherein the master and slave status information is intended to indicate a master device and a slave device between the first edge computing device and the second edge computing device; and a task executing module, configured to execute an edge computing task corresponding to the edge computing system based on the master and slave status information.

9. An apparatus for controlling edge computing devices, comprising: a processor; and a memory configured to store at least one computer program comprising at least one instruction executable by the processor; wherein the least one instruction, when executed by the processor, causes the processor to: acquire running status of respective computing modules in the first edge computing device; compute health information of the first edge computing device based on the running status of the respective computing modules; acquire health information of the second edge computing device, wherein the health information of the second edge computing device is acquired by computation based on running status of respective computing modules of the second edge computing device; determine master and slave status information based on the health information of the first edge computing device and the health information of the second edge computing device, wherein the master and slave status information is intended to indicate a master device and a slave device between the first edge computing device and the second edge computing device; and execute an edge computing task corresponding to the edge computing system based on the master and slave status information.

10. A computer-readable storage medium storing at least one computer program comprising at least one instruction, wherein the at least one instruction, when executed by a processor, causes the processor to perform the method for controlling the edge computing devices as defined in any of claims 1 to 7.

Description:
METHOD AND APPARATUS FOR CONTROLLING EDGE

COMPUTING DEVICES, AND STORAGE MEDIUM

TECHNICAL FIELD

[0001] The present disclosure relates to the field of edge computing technologies, and in particular relates to a method and an apparatus for controlling edge computing devices, and a storage medium.

BACKGROUND

[0002] Nowadays, the Internet of things technology is developing rapidly. The edge computing technology enables a device to access data by an edge computing device, and aggregates device data to the cloud end over a network channel for collection of massive device data. In this case, the edge computing device needs to have an extremely high stability and reliability.

[0003] At present, when the edge computing device undergoes power outage, network outage, or middleware failure, an edge computing system is usually disabled directly if one single edge computing device is provided in the edge computing system. If a number of edge computing devices are provided, data loss or inconsistent data may be caused when the judgment of the master and slave device is made inaccurately.

[0004] This may lead to low stability of the edge computing device, thereby affecting the accuracy in the edge computing of data by the edge computing device.

SUMMARY

[0005] The present disclosure provides a method and an apparatus for controlling edge computing devices, and a storage medium.

[0006] According to a first aspect of embodiments of the present disclosure, a method for controlling edge computing devices is provided. The method is performed by a first edge computing device in an edge computing system. The edge computing system further includes a second edge computing device. The method includes: [0007] acquiring running status of respective computing modules in the first edge computing device;

[0008] computing health information of the first edge computing device based on the running status of the respective computing modules;

[0009] acquiring health information of the second edge computing device, wherein the health information of the second edge computing device is acquired by computation based on running status of respective computing modules of the second edge computing device;

[0010] determining master and slave status information based on the health information of the first edge computing device and the health information of the second edge computing device, wherein the master and slave status information is intended to indicate a master device and a slave device between the first edge computing device and the second edge computing device; and

[0011] executing an edge computing task corresponding to the edge computing system based on the master and slave status information.

[0012] In an optional embodiment, the health information includes a health value that is positively correlated to running stability of a corresponding device; and [0013] determining the master and slave status information based on the health information of the first edge computing device and the health information of the second edge computing device includes:

[0014] acquiring a magnitude relationship by comparing the health value of the first edge computing device with the health value of the second edge computing device; and [0015] determining the master and slave status information based on the magnitude relationship.

[0016] In an optional embodiment, determining the master and slave status information based on the magnitude relationship includes:

[0017] determining the master and slave status information as first master and slave status information if the health value of the first edge computing device is greater than the health value of the second edge computing device, wherein the first master and slave status information indicates that the first edge computing device is a master device and the second edge computing device is a slave device; [0018] determining the master and slave status information as second master and slave status information if the health value of the first edge computing device is less than the health value of the second edge computing device, wherein the second master and slave status information indicates that the first edge computing device is a slave device and the second edge computing device is a master device; and

[0019] determining the master and slave status information according to a priority of the first edge computing device and a priority of the second edge computing device if the health value of the first edge computing device is equal to the health value of the second edge computing device.

[0020] In an optional embodiment, determining the master and slave status information according to the priority of the first edge computing device and the priority of the second edge computing device if the health value of the first edge computing device is equal to the health value of the second edge computing device includes:

[0021] determining the master and slave status information as the first master and slave status information when the priority of the first edge computing device is higher than the priority of the second edge computing device;

[0022] determining the master and slave status information as the second master and slave status information when the priority of the first edge computing device is lower than the priority of the second edge computing device; and

[0023] maintaining the master and slave status of the first edge computing device and the second edge computing device when the priority of the first edge computing device is equal to the priority of the second edge computing device.

[0024] In an optional embodiment, acquiring the health information of the second edge computing device includes:

[0025] acquiring the health information of the second edge computing device over a Transmission Control Protocol (TCP) connection between the first edge computing device and the second edge computing device.

[0026] Optionally, the edge computing system further includes a mediation device, the mediation device being communicatively connected to the first edge computing device and the second edge computing device respectively; and [0027] the method further includes: [0028] sending the health information of the first edge computing device to the mediation device when the TCP connection between the first edge computing device and the second edge computing device fails; and

[0029] receiving the master and slave status information returned by the mediation device, wherein the master and slave status information is determined by the mediation device based on the health information of the first edge computing device and the health information of the second edge computing device; and the master and slave status information is intended to indicate a master device and a slave device between the first edge computing device and the second edge computing device.

[0030] In an optional embodiment, the method further includes:

[0031] acquiring a switching time point of a previous master/salve switching of the first edge computing device if the master and slave status of the first edge computing device indicated by the master and slave status information is different from current master and slave status of the first edge computing device; and

[0032] switching the master and slave status of the first edge computing device based on the master and slave status information when a time interval between the switching time point and a current time point is greater than an interval threshold.

[0033] According to a second aspect of embodiments of the present disclosure, an apparatus for controlling edge computing devices is provided. The apparatus is applicable to a first edge computing device in an edge computing system. The edge computing system further includes a second edge computing device. The apparatus includes:

[0034] a status acquiring module, configured to acquire running status of respective computing modules in the first edge computing device;

[0035] an information computing module, configured to compute health information of the first edge computing device based on the running status of the respective computing modules;

[0036] an information acquiring module, configured to acquire health information of the second edge computing device, wherein the health information of the second edge computing device is acquired by computation based on running status of respective computing modules of the second edge computing device; [0037] a master and slave determining module, configured to determine master and slave status information based on the health information of the first edge computing device and the health information of the second edge computing device, wherein the master and slave status information is intended to indicate a master device and a slave device between the first edge computing device and the second edge computing device; and [0038] a task executing module, configured to execute an edge computing task corresponding to the edge computing system based on the master and slave status information.

[0039] In an optional embodiment, the health information includes a health value that is positively correlated to running stability of a corresponding device.

[0040] The master and slave determining module includes:

[0041] a health value comparing submodule, configured to acquire a magnitude relationship by comparing the health value of the first edge computing device with the health value of the second edge computing device; and

[0042] a master and slave information determining submodule, configured to determine the master and slave status information based on the magnitude relationship.

[0043] In an optional embodiment, the master and slave information determining submodule includes:

[0044] a first information determining unit, configured to determine the master and slave status information as first master and slave status information if the health value of the first edge computing device is greater than the health value of the second edge computing device, wherein the first master and slave status information indicates that the first edge computing device is a master device and the second edge computing device is a slave device;

[0045] a second information determining unit, configured to determine the master and slave status information as second master and slave status information if the health value of the first edge computing device is less than the health value of the second edge computing device, wherein the second master and slave status information indicates that the first edge computing device is a slave device and the second edge computing device is a master device; and [0046] a third information determining unit, configured to determine the master and slave status information according to a priority of the first edge computing device and a priority of the second edge computing device if the health value of the first edge computing device is equal to the health value of the second edge computing device.

[0047] In an optional embodiment, the third information determining unit is configured to:

[0048] if the health value of the first edge computing device is equal to the health value of the second edge computing device, then

[0049] determine the master and slave status information as the first master and slave status information when the priority of the first edge computing device is higher than the priority of the second edge computing device;

[0050] determine the master and slave status information as the second master and slave status information when the priority of the first edge computing device is lower than the priority of the second edge computing device; and

[0051] maintain the master and slave status of the first edge computing device and the second edge computing device when the priority of the first edge computing device is equal to the priority of the second edge computing device.

[0052] In an optional embodiment, the information acquiring module includes:

[0053] an information acquiring submodule, configured to acquire the health information of the second edge computing device over a Transmission Control Protocol (TCP) connection between the first edge computing device and the second edge computing device.

[0054] In an optional embodiment, the edge computing system further includes a mediation device, the mediation device being communicatively connected to the first edge computing device and the second edge computing device respectively.

[0055] The apparatus further includes:

[0056] an information sending module, configured to send the health information of the first edge computing device to the mediation device when the TCP connection between the first edge computing device and the second edge computing device fails; and [0057] an information receiving module, configured to receive the master and slave status information returned by the mediation device, wherein the master and slave status information is determined by the mediation device the mediation device being communicatively connected to the first edge computing device and the second edge computing device respectively the health information of the first edge computing device and the health information of the second edge computing device; and the master and slave status information is intended to indicate a master device and a slave device between the first edge computing device and the second edge computing device.

[0058] In an optional embodiment, the apparatus further includes:

[0059] a time point acquiring module, configured to acquire a switching time point of a previous master/salve switching of the first edge computing device if the master and slave status of the first edge computing device indicated by the master and slave status information is different from current master and slave status of the first edge computing device; and

[0060] a master/salve switching module, configured to switch the master and slave status of the first edge computing device based on the master and slave status information when a time interval between the switching time point and a current time point is greater than an interval threshold.

[0061] According to a third aspect of embodiments of the present disclosure, an apparatus for controlling edge computing devices is provided. The apparatus includes: [0062] a processor; and

[0063] a memory configured to store at least one computer program including at least one instruction;

[0064] wherein the least one instruction instructions, when executed by the processor, cause the processor to:

[0065] acquire running status of respective computing modules in the first edge computing device;

[0066] compute health information of the first edge computing device based on the running status of the respective computing modules;

[0067] acquire health information of the second edge computing device, wherein the health information of the second edge computing device is acquired by computation based on running status of respective computing modules of the second edge computing device; [0068] determine master and slave status information based on the health information of the first edge computing device and the health information of the second edge computing device, wherein the master and slave status information is intended to indicate a master device and a slave device between the first edge computing device and the second edge computing device; and

[0069] execute an edge computing task corresponding to the edge computing system based on the master and slave status information.

[0070] According to a fourth aspect of embodiments of the present disclosure, a computer-readable storage medium storing at least one computer program including at least one instruction is provided. The at least one instruction, when executed by a processor, enables the processor to perform the method for controlling the edge computing devices according to the first aspect or any of solutions of the first aspect above.

[0071] The technical solutions according to the embodiments of the present disclosure may achieve the following beneficial effects.

[0072] The running status of the respective computing modules in the first edge computing device are acquired; the health information of the first edge computing device is computed based on the running status of the respective computing modules; the health information of the second edge computing device is acquired; then the master and slave status information is determined based on the health information of the first edge computing device and the health information of the second edge computing device; and finally, the edge computing task corresponding to the edge computing system is executed based on the master and slave status information. With the solutions above, the master and slave status can be determined by comparing the health information of the first and second edge computing devices for executing the edge computing task, thereby solving the problem of data loss caused by inaccurate judgment of the master and slave status, and improving the stability in executing of the edge computing task.

[0073] It is to be understood that both the foregoing general description and the following detailed description are exemplar)' and explanatory only and are not intended to limit the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0074] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure. [0075] . FIG. 1 is a schematic diagram of an implementation environment according to an exemplary embodiment;

[0076] FIG. 2 is a flowchart of a method for controlling edge computing devices according to an exemplary embodiment;

[0077] FIG. 3 is a flowchart of a method for controlling edge computing devices according to another exemplary- embodiment;

[0078] FIG. 4 is a schematic diagram of negotiation and judgment of a master and slave statues between edge computing devices according to an exemplary embodiment;

[0079] FIG. 5 is a schematic diagram of a third-party mediation device for judging a master and slave status according to an exemplary embodiment;

[0080] FIG. 6 is a block diagram of an apparatus for controlling edge computing devices according to an exemplary- embodiment; and

[0081] FIG. 7 is a schematic structural diagram of a computer device according to an exemplary embodiment.

DETAILED DESCRIPTION

[0082] Reference will now be made in detail to exemplary embodiments, examples of which are illustrated in the accompanying drawings. The following description refers to the accompanying drawings in which the same numbers in different drawings represent the same or similar elements unless otherwise represented. The implementations set forth in the following description of exemplary embodiments do not represent all implementations consistent with the present disclosure. Instead, they are merely examples of apparatuses and methods consistent with aspects related to the disclosure as recited in the appended claims.

[0083] It is to be understood that the term “several” herein refers to one or more, and the term "a plurality of' herein refers to two or more, and the term "and/or" herein describes the correspondence of the corresponding objects, indicating three types of relationships. For example, A and/or B, can be expressed as: A exists alone, A and B exist concurrently, B exists alone. The character 7" generally indicates that the context object is an "OR" relationship.

[0084] To facilitate understanding, the terms involved in the embodiments of the present disclosure are explained below.

[0085] 1) Internet of things (IoT)

[0086] The Internet of things is a network that enables interconnection among ordinary objects capable of executing independent functions by means of information carriers such as Internet and traditional telecommunications networks. The Internet of Things mainly addresses the interconnection of things to things (T2T), human to thing (H2T), and human to human (H2H).

[0087] 2) Edge computing

[0088] Edge computing refers to the provision of edge intelligent services nearly by an open platform, that integrates core capabilities of networks, computing, storage, and application, at the edge of a network near an object or a data source, in order to meet the critical requirements of industry digitalization in aspects such as agile connection, realtime service, data optimization, application intelligence, security and privacy protection. [0089] 3) High availability (HA) cluster

[0090] A high availability cluster concentrates on the provision of highly reliable services. That is, 7*24 hours of uninterrupted services, such as HA file servers, database services and other critical applications, are provided to the outside world by means of the fault tolerance of a cluster system.

[0091] The HA supports three operating modes, namely, a master-slave mode, a doubleunit duplex mode, and a cluster operating mode.

[0092] The working principle of the master-slave mode is as follows: A master unit operates while a slave unit is in a monitoring readiness condition; the slave units would take over all the jobs of the master unit when the master unit goes down; and after returning to normal, the master unit would be switched back to automatically or manually according to a user setting to allow' services to run on the master unit, with the data consistency addressed by a shared storage system. [0093] The working principle of the double-unit duplex mode is as follows: Two master units run their respective service jobs at the same time and monitor the situation with each other; and when either master unit goes down, the other master unit immediately takes over all of its jobs to ensure real-time operation, with the key data of application service systems stored in the shared storage system.

[0094] The working principle of the cluster operating mode is as follows: A number of master units operate together, with each running one or several services and each defining one or more standby master units for respective services; and when a master unit fails, the services running thereon can be taken over by other master units.

[0095] FIG. 1 is a schematic diagram of an implementation environment according to an exemplary embodiment. The implementation environment includes at least two edge computing devices 110, a cloud end 120, and an edge computing system 130.

[0096] The at least two edge computing devices 110 are connected over a wireless network.

[0097] The edge computing devices 110 may be servers, gateways, terminals or other devices capable of executing edge computing.

[0098] The cloud end 120 is connected to the at least two edge computing devices 110 over the wireless network respectively.

[0099] In an optional embodiment, the wireless network described above uses a standard communication technology and/or protocol. The network is usually Internet, but may also be any network, including but not limited to any combination of local area network (LAN), metropolitan area network (MAN), wide area network (WAN), a mobile wireless network, a private network or a virtual private network. In some embodiments, data exchanged over the network are represented by using technologies and/or formats including Hypertext Markup Language (HTML), Extensible Markup Language (XML), and the like. In addition, all or some links may also be encrypted by using Secure Socket Layer (SSL), transport layer security (TLS), virtual private network (VPN), Internet Protocol Security (IPsec) and other conventional encryption technologies. In other embodiments, customized and/or dedicated data communication technologies may also be used to supplement or replace the data communication technologies above. [00100] FIG. 2 is a flowchart of a method for controlling edge computing devices according to an exemplar)' embodiment. The method may be applicable to an edge computing system. The edge computing system includes a first edge computing device and a second edge computing device. The method is performed by the first edge computing device. For example, the edge computing system may be the edge computing system 130 shown in FIG. 1, the first edge computing device may be either of the edge computing devices 110 shown in FIG. 1, and the second edge computing device may be the other of the edge computing devices 110, rather than the first edge computing device. As shown in FIG. 2, the method may include the following steps.

[00101] In step 201, running status of respective computing modules in the first edge computing device is acquired.

[00102] In step 202, health information of the first edge computing device is computed based on the running status of the respective computing modules.

[00103] In step 203, health information of the second edge computing device is acquired. The health information of the second edge computing device is acquired by computation based on running status of respective computing modules of the second edge computing device.

[00104] In step 204, master and slave status information is determined based on the health information of the first edge computing device and the health information of tire second edge computing device. The master and slave status information is intended to indicate a master device and a slave device between the first edge computing device and tiie second edge computing device.

[00105] In step 205, an edge computing task corresponding to the edge computing system is executed based on the master and slave status information.

[00106] In summary, with the method for controlling the edge computing device according to this embodiment of the present disclosure, the running status of the respective computing modules in the first edge computing device is acquired; the health information of the first edge computing device is computed based on the running status of the respective computing modules; the health information of the second edge computing device is acquired; then the master and slave status information is determined based on the health information of the first edge computing device and the health information of the second edge computing device; and finally, the edge computing task corresponding to the edge computing system is executed based on the master and slave status information. With the solution above, the master and slave status can be determined by comparing the health information of the first and second edge computing devices for executing the edge computing task, thereby solving the problem of data loss caused by inaccurate judgment of the master and slave status, and improving the stability in executing the edge computing task.

[00107] FIG. 3 is a flowchart of a method for controlling edge computing devices according to another exemplary embodiment. The method may be applicable to an edge computing system, in which there are a first edge computing device and a second edge computing device. The method is performed by the first edge computing device. For example, the edge computing system may be the edge computing system 130 shown in FIG. 1, the first edge computing device may be either of the edge computing devices 110 shown in FIG. 1, and the second edge computing device may be the other of the edge computing devices 110, rather than the first edge computing device. As shown in FIG. 3, the method may include the following steps:

[00108] In step 301, running status of respective computing modules in the first edge computing device is acquired.

[00109] In this embodiment of the present disclosure, the respective computing modules may be respective programs in the first edge computing device, and a management program and several other programs may be provided in the first edge computing device.

[00110] In an optional embodiment, the running status of each program may be represented by a health value.

[00111] A judgment rule of the health value is predetermined, and may be created by representational state transfer (REST).

[00112] In an optional embodiment, the health value is positively correlated to the operating stability of the corresponding device, and is positively correlated to the operating stability of the corresponding program.

[00113] In an optional embodiment, the health value is defined as any value from 0 to 100. When the health value of a program is determined to be 0, it indicates that the program is running normally. The larger the health value data of the program, the more abnormal the running status of the program.

[00114] In step 302, health information of the first edge computing device is computed based on the running status of the respective computing modules.

[00115] In this embodiment of the present disclosure, the health information includes a health value; each computing module in the first edge computing device sends its health value to a management program in the first edge computing device; and the management program aggregates the health values of the respective computing modules to acquire the overall health value information of the first edge computing device.

[00116] In an optional embodiment, the overall health value information of the first edge computing device may be an average health value of the respective computing modules.

[00117] In an optional embodiment, if the first edge computing device includes three computing modules A, B, and C, then the health values of the computing modules A, B and C may be acquired as 4, 11 and 6 respectively. The three computing modules A, B, and C send the respective health values to the management program of the first edge computing device respectively; and in the management program, the overall health value of the first edge computing device may be determined to be 7 by averaging the health values.

[00118] In an optional embodiment, the overall health value information of the first edge computing device may be computed based on different weights of the respective computing modules.

[00119] In an optional embodiment, if the first edge computing device includes three computing modules A, B, and C, with the health values of the computing modules A, B and C being 4, 11 and 6 respectively, then the weight percentage of the computing module A is 30%, the weight percentage of the computing module B is 50%, and the weight percentage of the computing module C is 20%. The three computing modules respectively send the respective health values to the management program of the first edge computing device, and in the management program, the overall health value of the first edge computing device is acquired as 7.9 according to a corresponding weight ratio. [00120] When the computed overall health value of the first edge computing device is greater than 10, it indicates that the first edge computing device has low operating stability, and master and slave switching is required.

[00121] In step 303, the first edge computing device acquires health information of the second edge computing device.

[00122] In this embodiment of the present disclosure, the second edge computing device and the first edge computing device are same both in an internal configuration and in a health value computing method.

[00123] In an optional embodiment, the health information of tire second edge computing device is acquired over a Transmission Control Protocol (TCP) connection between the first edge computing device and the second edge computing device.

[00124] The first edge computing device and the second edge computing device are connected by a switch or router in a local area network. The management program of the first edge computing device establishes a TCP connection with the management program of the second edge computing device to exchange the health information.

[00125] In an optional embodiment, the edge computing system further includes a mediation device, which establishes communication connections with the first edge computing device and the second edge computing device respectively.

[00126] This communication connection may be a wireless communication connection or a wired communication connection.

[00127] In an optional embodiment, the health information of the first edge computing device is sent to the mediation device when the TCP connection between the first edge computing device and the second edge computing device fails. The first edge computing device and the second edge computing device receive master and slave status information returned by a mediation device respectively. The master and slave status information is determined based on the health information of the first edge computing device and the health information of the second edge computing device. The master and slave status information is intended to indicate a master device and a slave device between the first edge computing device and the second edge computing device.

[00128] In an optional embodiment, when there are two edge computing devices A and B in the edge computing system, the edge computing devices A and B establish a data transmission channel by a TCP connection in the local area network. The edge computing devices A and B aggregate and compute their own health information. When the local area network functions normally, the health information is transmitted and exchanged over the data transmission channel established in the local area network by the edge computing devices A and B. When the data cannot be transmitted normally over the data transmission channel due to the failure of the local area network, the edge computing devices A and B cannot detect the presence of each other. In the edge computing system, there is a device C located outside the local area network. The edge computing devices A and B are connected to the device C of the external network by network cards respectively, and the edge computing devices A and B aggregate and compute their own health information and transmit their respective health information to the device C respectively.

[00129] In step 304, a magnitude relationship is acquired by comparing the health value of the first edge computing device with the health value of the second edge computing device.

[00130] In an optional embodiment, a larger health value indicates lower stability of the device.

[00131] In an optional embodiment, when there are two edge computing devices A and B in the edge computing system, the edge computing devices A and B exchange and transmit the health information over a data transmission channel when the local area network functions normally. The edge computing devices A and B may acquire the health information of the two devices, and compare the health values of the two devices in their respective management programs respectively. If the health value of the edge computing device A is 5 and the health value of the edge computing device B is 3, then the two devices may identify that the health value of the edge computing device A is greater than the health value of the edge computing device B.

[00132] In step 305, the master and slave status information is determined based on this magnitude relationship.

[00133] In this embodiment of the present disclosure, the master and slave status information is determined based on the health information of the first edge computing device and the health information of the second edge computing device. The master and slave status information is intended to indicate a master device and a slave device between the first edge computing device and the second edge computing device; and [00134] In an optional embodiment, the first edge computing device and the second edge computing device may acquire three types of different master and slave status information based on the magnitude relationship between the health values. The three types of master and slave status information are as follows.

[00135] 1) If the health value of the first edge computing device is greater than the health value of the second edge computing device, the master and slave status information is determined as first master and slave status information, which indicates the first edge computing device is a master device, and the second edge computing device is a slave device.

[00136] 2) If the health value of the first edge computing device is less than the health value of the second edge computing device, the master and slave status information is determined as second master and slave status information, which indicates the first edge computing device is a slave device, and the second edge computing device is a master device; and

[00137] 3) If the health value of the first edge computing device is equal to the health value of the second edge computing device, the master and slave status information is acquired according to the priority of the first edge computing device and tire priority of the second edge computing device.

[00138] If tire health value of the first edge computing device is equal to the health value of the second edge computing device, the method for acquiring the master and slave status information specifically includes the following steps.

[00139] 1. The master and slave status information is determined as the first master and slave status information when the priority of the first edge computing device is higher than the priority of the second edge computing device.

[00140] 2. The master and slave status information is determined as the second master and slave status information when the priority of the first edge computing device is lower than the priority of the second edge computing device. [00141] 3. The master and slave status of the first edge computing device and the second edge computing device are maintained when the priority of the first edge computing device is equal to the priority of the second edge computing device.

[00142] The priority may be a value preset when the corresponding edge computing device is initialized, and the magnitude of the value determines the priority. The higher the value, the higher the priority.

[00143] In some embodiments, if the master and slave status of the first edge computing device indicated by the master and slave status information is different from current master and slave status of the first edge computing device, a switching time point when last master/salve switching occurs to the first edge computing device is acquired. When a time interval between the switching time point and a current time point is greater than an interval threshold, the master and slave status of the first edge computing device is switched based on the master and slave status information.

[00144] In some embodiments, in this case, the edge computing device A is a master device, and the edge computing device B is a slave device. By acquiring the master and slave status information, it is learned that the edge computing device A should be switched to the slave device, and the edge computing device B should be switched to the master device. A time point when the master and slave status information is acquired currently and a time point when last master/salve switching is performed are acquired. If a time interval between the two time points is less than a set interval threshold, the master/salve switching will not be performed. If the time interval between the two time points is greater than or equal to the set interval threshold, the master and slave switching is performed based on the master and slave status information.

[00145] In step 306, an edge computing task corresponding to the edge computing system is executed based on the master and slave status information.

[00146] In this embodiment of the present disclosure, an edge computing task includes collecting data and processing the collected data.

[00147] The master device is in charge of collecting data information, and transmitting the data collected to the slave device in real time over the data transmission channel, ensuring consistent data information between the master device and the slave device. The master device is in charge of computing the data, and synchronizing computed results to the slave device.

[00148] In summary, with the method for controlling the edge computing device according to this embodiment of the present disclosure, the running status of the respective computing modules in the first edge computing device are acquired; the health information of the first edge computing device is computed based on the running status of the respective computing modules; the health information of the second edge computing device is acquired; then the master and slave status information is determined based on the health information of the first edge computing device and the health information of the second edge computing device; and finally, the edge computing task corresponding to the edge computing system is executed based on the master and slave status information. With the solution above, the master and slave status can be determined by comparing the health information of the first and second edge computing devices for executing the edge computing task, thereby solving the problem of data loss caused by inaccurate judgment of the master and slave status, and improving the stability in executing of the edge computing task.

[00149] FIG. 4 is a schematic diagram of negotiation and judgment of a master and slave statues between edge computing devices according to an exemplary embodiment. As shown in FIG. 4, the technical framework of this solution is as follows.

[00150] In the edge computing system, there are a device A and a device B; the device A acquires the overall health value of the device A by health examination; and the device B acquires the overall health value of the device B by health examination. A data transmission channel is established between a background logical processing system of the device A and a background logical processing system of the device B. The devices A and B exchange the overall health value of each other over the data transmission channel. The devices A and B compare the health values in their respective background logical processing systems to acquire a magnitude relationship. The devices A and B may simultaneously acquire the master/salve status information determined by the magnitude relationship between the health values, and may negotiate and select one of the device A and B as the master device and the other as the slave device based on the master and slave status information. The master device performs data transmission with a terminal to collect data information by a data acquisition system. The collected data information is subject to computing by the background logic processing system. The master device transmits the collected data and the computed data information to the salve device over the data transmission channel, for data information synchronization.

[00151] FIG. 5 is a schematic diagram of a third-party mediation device for judging a master and slave status according to an exemplary embodiment. As shown in FIG. 5, the technical framework of this solution is as follows.

[00152] In tire edge computing system, there are a device A and a device B; the device A acquires the overall health value of the device A by health examination; and the device B acquires the overall health value of the device B by health examination. A data transmission channel is established between a background logical processing system of the device A and a third-party device of the cloud; a data transmission channel is established between a background logical processing system of the device B and the third-party device of the cloud. The devices A and B transmit the overall health values of their own to the third-party device over the data transmission channels. The third-party device acquires a magnitude relationship by comparing the health values in its background logical processing system. The master and slave status information is determined. The third-party device transmits the master/salve status information to the devices A and B over the data transmission channels, and the device A or the device B is selected as a master device or a slave device based on the master and salve status information. The master device may collect data information by calling a virtual IP address; the collected data information is subject to computing by the background logic processing system; and the master device transmits the collected data and the computed data information to the salve device over the data transmission channel for data information synchronization.

[00153] FIG. 6 is a block diagram of an apparatus for controlling edge computing devices according to an exemplary embodiment. As shown in FIG. 6, the apparatus for controlling the edge computing devices may be implemented as all or some of the edge computing devices by hardware or in a fashion of combining software and hardware, to execute the steps shown in any of the embodiments shown in FIG. 2 or FIG. 3. For example, the edge computing system may be the edge computing system 130 shown in FIG. 1, the first edge computing device may be either of the edge computing devices 110 shown in FIG. 1, and the second edge computing device may be the other of the edge computing devices 110, rather than the first edge computing device. The apparatus for controlling the edge computing devices may include:

[00154] a status acquiring module 601, configured to acquire running status of respective computing modules in the first edge computing device;

[00155] an information computing module 602, configured to compute health information of the first edge computing device based on the running status of the respective computing modules;

[00156] an information acquiring module 603, configured to acquire health information of the second edge computing device.

[00157] a master and slave determining module 604, configured to determine master and slave status information based on the health information of the first edge computing device and the health information of the second edge computing device, wherein the master and slave status information is intended to indicate a master device and a slave device between the first edge computing device and the second edge computing device; and

[00158] a task executing module 605, configured to execute an edge computing task corresponding to the edge computing system based on the master and slave status information.

[00159] In an optional embodiment, the health information includes a health value that is positively correlated to running stability of a corresponding device.

[00160] The master and slave determining module includes:

[00161] a health value comparing submodule, configured to acquire a magnitude relationship by comparing the health value of the first edge computing device with the health value of the second edge computing device; and

[00162] a master and slave information determining submodule, configured to determine the master and slave status information based on the magnitude relationship. [00163] In an optional embodiment, the master and slave information determining submodule includes: [00164] a first information determining unit, configured to determine the master and slave status information as first master and slave status information if the health value of the first edge computing device is greater than the health value of the second edge computing device, wherein the first master and slave status information indicates that the first edge computing device is a master device and the second edge computing device is a slave device;

[00165] a first information determining unit, configured to determine the master and slave status information as second master and slave status information if the health value of the first edge computing device is less than the health value of the second edge computing device, wherein the second master and slave status information indicates that the first edge computing device is a slave device and the second edge computing device is a master device; and

[00166] a first information determining unit, configured to determine the master and slave status information according to a priority of the first edge computing device and a priority of the second edge computing device if the health value of the first edge computing device is equal to the health value of the second edge computing device. [00167] In an optional embodiment, the third information determination unit is configured to:

[00168] if the health value of the first edge computing device is equal to the health value of the second edge computing device, then

[00169] determine the master and slave status information as the first master and slave status information when the priority of the first edge computing device is higher than the priority of the second edge computing device;

[00170] determine the master and slave status information as the second master and slave status information when the priority of the first edge computing device is lower than the priority of the second edge computing device; and

[00171] maintain the master and slave status of the first edge computing device and the second edge computing device when the priority of the first edge computing device is equal to the priority of the second edge computing device.

[00172] In an optional embodiment, the information acquiring module includes: [00173] an information acquiring submodule, configured to acquire health information of the second edge computing device over a Transmission Control Protocol (TCP) connection between the first edge computing device and the second edge computing device.

[00174] In an optional embodiment, the edge computing system further includes a mediation device, wherein the mediation device is communicatively connected to the first edge computing device and the second edge computing device respectively.

[00175] The apparatus further includes:

[00176] an information sending module, configured to send the health information of the first edge computing device to the mediation device when the TCP connection between the first edge computing device and the second edge computing device fails; and [00177] An information receiving module, configured to receive the master and slave status information returned by the mediation device, wherein the master and slave status information is determined by the mediation device based on the health information of the first edge computing device and the health information of the second edge computing device; and the master and slave status information is intended to indicate a master device and a slave device between the first edge computing device and the second edge computing device.

[00178] In an optional embodiment, the apparatus further includes:

[00179] a time point acquiring module, configured to acquire a switching time point of a previous master/salve switching of the first edge computing device if the master and slave status of the first edge computing device indicated by the master and slave status information is different from current master and slave status of the first edge computing device; and

[00180] a master and salve switching module, configured to switch the master and slave status of the first edge computing device according to the master and slave status information when a time interval between the switching time point and a current time point is greater than an interval threshold.

[00181] It should be noted that the apparatus according to the embodiments above only takes division of all the functional modules as an example for explanation during implementing of its function. In practice, the above functions can be finished by the different functional modules as required. That is, the internal structure of the apparatus is divided into different functional modules to finish all or part of the functions described above.

[00182] With respect to the apparatus in the embodiments above, the specific manner of respective modules to execute the operation has been described in detail in the embodiments related to this method, and a detailed description thereof will not be repeated here.

[00183] An exemplary embodiment of the present disclosure provides an apparatus for controlling edge computing devices. The apparatus for controlling the edge computing devices may be implemented as all or some of the edge computing devices by hardware or in a manner of combining software and hardware, to execute the steps shown in any of the embodiments shown in FIG. 2 or FIG. 3. For example, the edge computing system may be the edge computing system 130 shown in FIG. 1, the first edge computing device may be either of the edge computing devices 110 shown in FIG. 1, and the second edge computing device may be the other of the edge computing devices 110, rather than the first edge computing device. The device further includes a processor, and a memory configured to store at least one computer program including at least one instruction executable by the processor.

[00184] The at least one computer program, when loaded and ran by the processor, causes the processor to execute instructions for:

[00185] acquiring running status of respective computing modules in the first edge computing device;

[00186] computing health information of the first edge computing device based on the running status of the respective computing modules;

[00187] acquiring health information of the second edge computing device, wherein the health information of the second edge computing device is acquired by computation based on running status of respective computing modules of the second edge computing device;

[00188] determining master and slave status information based on the health information of the first edge computing device and the health information of the second edge computing device, wherein the master and slave status information is intended to indicate a master device and a slave device between the first edge computing device and the second edge computing device; and

[00189] executing an edge computing task corresponding to the edge computing system based on the master and slave status information.

[00190] In an optional embodiment, the health information includes a health value that is positively correlated to running stability of a corresponding device.

[00191] Determining the master and slave status information based on the health information of the first edge computing device and the health information of the second edge computing device includes:

[00192] acquiring a magnitude relationship by comparing the health value of the first edge computing device with the health value of the second edge computing device; and

[00193] determining the master and slave status information based on the magnitude relationship.

[00194] In an optional embodiment, determining the master and slave status information based on the magnitude relationship includes:

[00195] determining the master and slave status information as first master and slave status information if the health value of the first edge computing device is greater than the health value of the second edge computing device, wherein the first master and slave status information indicates that the first edge computing device is a master device and the second edge computing device is a slave device;

[00196] determining the master and slave status information as second master and slave status information if the health value of the first edge computing device is less than the health value of the second edge computing device, wherein the second master and slave status information indicates that the first edge computing device is a slave device and the second edge computing device is a master device; and

[00197] determining the master and slave status information according to a priority of the first edge computing device and a priority of the second edge computing device if the health value of the first edge computing device is equal to the health value of the second edge computing device. [00198] In an optional embodiment, determining the master and slave status information according to the priority of the first edge computing device and the priority of the second edge computing device includes:

[00199] if the health value of the first edge computing device is equal to the health value of the second edge computing device, then

[00200] determining the master and slave status information as the first master and slave status information when the priority of the first edge computing device is higher than the priority of the second edge computing device;

[00201] determining the master and slave status information as the second master and slave status information when the priority of the first edge computing device is lower than the priority of the second edge computing device; and

[00202] maintaining the master and slave status of the first edge computing device and the second edge computing device when the priority of the first edge computing device is equal to the priority of the second edge computing device.

[00203] In an optional embodiment, acquiring the health information of the second edge computing device includes:

[00204] acquiring the health information of the second edge computing device over a Transmission Control Protocol (TCP) connection between the first edge computing device and the second edge computing device.

[00205] Optionally, the edge computing system further includes a mediation device, wherein the mediation device being communicatively connected to the first edge computing device and the second edge computing device respectively; and [00206] the at least one computer program, when loaded and run by the processor, causes the processor to execute instructions for:

[00207] sending the health information of the first edge computing device to the mediation device when the TCP connection between the first edge computing device and the second edge computing device foils; and

[00208] receiving the master and slave status information returned by the mediation device, wherein the master and slave status information is determined by the mediation device based on the health information of the first edge computing device and the health information of the second edge computing device; and the master and slave status information is intended to indicate a master device and a slave device between the first edge computing device and the second edge computing device.

[00209] In an optional embodiment, the at least one computer program, when loaded and run by the processor, causes the processor to execute instructions for:

[00210] acquiring a switching time point of a previous master/salve switching of the first edge computing device if the master and slave status of the first edge computing device indicated by the master and slave status information is different from current master and slave status of the first edge computing device; and

[00211] switching the master and slave status of the first edge computing device according to the master and slave status information when a time interval between the switching time point and a current time point is greater than an interval threshold.

[00212] FIG. 7 is a schematic structural diagram of a computer apparatus in accordance with one exemplary embodiment. The computer apparatus 700 includes a central processing unit (CPU) 701, a system memory 704 including a random access memory (RAM) 702 and a read-only memory (ROM) 703, and a system bus 705 connecting the system memory 704 and the CPU 701. The computer apparatus 700 further includes a basic input/output system (I/O system) 706 which helps transmit information between various components within a computer, and a large-capacity storage device 707 for storing an operating system 713, an application 714 and other program modules 715.

[00213] The basic I/O system 606 includes a display 608 for displaying information and an input device 709, such as a mouse and a keyboard, for a user to input the information. The display 708 and the input device 709 are both connected to the CPU 701 by an I/O controller 710 connected to the system bus 705. The basic I/O system 606 may also include the I/O controller 710 for receiving and processing input from a plurality of other devices, such as a keyboard, a mouse and an electronic stylus. Similarly, the I/O controller 710 further provides output to a display screen, a printer or other types of output devices.

[00214] The large-capacity storage device 707 is connected to the CPU 701 by a high-capacity storage controller (not shown) connected to the system bus 705. The large- capacity storage device 707 and its associated computer-readable medium provide non- volatile storage for the computer apparatus 700. That is, the large-capacity storage device 707 may include a computer-readable medium (not shown), such as a hard disk or a CD- ROM drive.

[00215] Without loss of generality, the computer-readable medium may include a computer storage medium and a communication medium. The computer storage medium includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as a computer-readable instruction, a data structure, a program module or other data. The computer storage medium includes a RAM, a ROM, an EPROM, an EEPROM, a flash memory' or other solid-state storage technologies; a CD-ROM, DVD or other optical storage; and a tape cartridge, a magnetic tape, a disk storage or other magnetic storage devices. It will be known by a person skilled in the art that the computer storage medium is not limited to above. The above system memory 704 and the large-capacity storage device 707 may be collectively referred to as the memory.

[00216] According to various embodiments of the present disclosure, the computer apparatus may also be connected to a remote computer on a network over the network, such as the Internet, for operation. That is, the computer apparatus 700 may be connected to the network 712 by a network interface unit 711 connected to the system bus 705, or may be connected to other types of networks or remote computer systems (not shown) with the network interface unit 711.

[00217] The memory further includes one or more programs stored in the memory. The CPU 701 implements all or part of the steps of the method shown in FIG. 2 or FIG. 3 by executing the one or more programs.

[00218] Those skilled in the art will appreciate that in one or more examples described above, the functions described in the embodiments of the present disclosure can be implemented in hardware, software, firmware, or any combination thereof. When implemented by software, the functions may be stored in a computer-readable medium or transmitted as one or more instructions or codes on the computer-readable medium. The computer-readable medium includes both a computer storage medium and a communication medium including any medium that facilitates transfer of a computer program from one location to another. The storage medium may be any available medium that can be accessed by a general-purpose or special-purpose computer.

[00219] In one exemplary embodiment of the present disclosure, there is also provided a computer apparatus storage medium for storing computer apparatus software instructions to be used by the above testing apparatus, the storage medium including a program designed for executing the above edge computer apparatus control method. [00220] Other embodiments of the present disclosure are apparent to those skilled in tire art from consideration of the specification and practice of the present disclosure. This application is intended to cover any variations, uses, or adaptations of the present disclosure following tire general principles thereof and including common knowledge or commonly used technical measures which are not disclosed herein. The specification and embodiments are to be considered as exemplary only, with a true scope and spirit of the present disclosure is indicated by the following claims.

[00221] It will be appreciated that the present disclosure is not limited to the exact construction that has been described above and illustrated in the accompanying drawings, and that various modifications and changes can be made without departing from the scope thereof. The scope of the present disclosure is only subject to the appended claims.