Edge gateway control method and system, device, electronic device, and storage medium

By introducing schedulers and multiple executors into the edge gateway control system, the problem of slow processing speed and low throughput caused by performance limitations of edge gateway controllers is solved, and higher processing speed and throughput is achieved.

CN113556387BActive Publication Date: 2025-03-14TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202110758546.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-07-05
Publication Date
2025-03-14
Estimated Expiration
2041-07-05

AI Technical Summary

Technical Problem

The performance limitations of the edge gateway controller itself result in slow processing speed and low throughput of edge gateway control instructions.

Method used

By introducing a scheduler and at least two executors into the edge gateway control system, the scheduler acquires a set of instructions from the edge gateway controller and distributes the edge gateway control instructions to multiple executors, each executing and processing instructions, and the result is forwarded to the corresponding edge gateway through the edge gateway controller.

Benefits of technology

It achieves the improvement of processing speed and throughput of edge gateway control instructions, so that the system has the ability to horizontally expand the executor and improves the system's instruction throughput performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113556387B_ABST
    Figure CN113556387B_ABST
Patent Text Reader

Abstract

The embodiment of the present application discloses an edge gateway control method and system, device, electronic device, and storage medium, which are applied to an edge gateway control system, and the system includes an edge gateway controller, a scheduler, and at least two actuators; the method includes: the edge gateway controller parses the business instruction to obtain an instruction set containing at least one edge gateway control instruction; the scheduler obtains the instruction set, and distributes the edge gateway control instruction contained in the instruction set to at least two actuators; at least two actuators obtain the edge gateway control instruction and execute it to obtain the execution result instruction, and forward the obtained execution result instruction to the corresponding edge gateway through the edge gateway controller to control the edge gateway based on the execution result instruction, wherein one edge gateway control instruction is distributed to one actuator. The technical solution of the embodiment of the present application can improve the processing speed and throughput of edge gateway control instructions.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technology, and in particular to an edge gateway control method and system, device, electronic device, and storage medium. Background Art

[0002] The edge gateway is a gateway deployed at the edge of the network. It connects the physical and digital worlds through network connection, protocol conversion and other functions, and provides lightweight connection management, real-time data analysis and application management functions. In related technologies, the edge gateway is usually controlled by the edge gateway controller based on the edge gateway control instructions. However, due to the performance limitations of the edge gateway controller itself, the processing speed of the edge gateway control instructions is slow and the throughput is low. Summary of the invention

[0003] To solve the above technical problems, the embodiments of the present application provide an edge gateway control method and system, device, electronic device, and storage medium.

[0004] According to one aspect of an embodiment of the present application, an edge gateway control method is provided, which is applied to an edge gateway control system, the system comprising an edge gateway controller, a scheduler and at least two actuators; the method is executed by the scheduler, and the method comprises:

[0005] Acquire an instruction set from the edge gateway controller; the instruction set includes at least one edge gateway control instruction, and the at least one edge gateway control instruction is obtained by parsing the edge gateway controller based on a service instruction from a service control server;

[0006] The edge gateway control instructions contained in the instruction set are distributed to the at least two executors, so that each of the executors executes the acquired edge gateway control instructions, and the obtained execution result instructions are forwarded to the corresponding edge gateway through the edge gateway controller, and the edge gateway is controlled based on the execution result instructions; wherein, one edge gateway control instruction is distributed to one executor.

[0007] According to one aspect of an embodiment of the present application, an edge gateway control method is provided, which is applied to an edge gateway control system, wherein the system includes an edge gateway controller, a scheduler, and at least two actuators; the method is respectively executed by the at least two actuators, and the method includes:

[0008] Obtaining an edge gateway control instruction contained in an instruction set distributed by the scheduler; the instruction set includes at least one edge gateway control instruction, and the at least one edge gateway control instruction is obtained by parsing the edge gateway controller based on a business instruction from a business control server; wherein one edge gateway control instruction is distributed to one executor;

[0009] Execute the acquired edge gateway control instruction and obtain the execution result instruction;

[0010] The execution result instruction is sent to the edge gateway controller, so that the edge gateway controller forwards the execution result instruction to the corresponding edge gateway and controls the edge gateway based on the execution result instruction.

[0011] According to one aspect of an embodiment of the present application, an edge gateway control system is provided, including an edge gateway controller, a scheduler, and at least two actuators, wherein:

[0012] The edge gateway controller obtains a service instruction from the service control server, and parses the obtained service instruction to obtain an instruction set including at least one edge gateway control instruction;

[0013] The scheduler obtains an instruction set from the edge gateway controller, and distributes the edge gateway control instructions contained in the instruction set to the at least two executors; wherein one edge gateway control instruction is distributed to one executor;

[0014] The at least two executors respectively obtain the edge gateway control instructions distributed by the scheduler, execute the obtained edge gateway control instructions, obtain execution result instructions, and send the execution result instructions to the edge gateway controller, so that the edge gateway controller forwards the execution result instructions to the corresponding edge gateway and controls the edge gateway based on the execution result instructions.

[0015] According to one aspect of an embodiment of the present application, an edge gateway control device is provided, which is applied to an edge gateway control system, the system comprising an edge gateway controller, a scheduler and at least two actuators; the device is configured in the scheduler, and the device comprises:

[0016] A set acquisition module, configured to acquire an instruction set from the edge gateway controller; the instruction set includes at least one edge gateway control instruction, and the at least one edge gateway control instruction is obtained by parsing the edge gateway controller based on a service instruction from a service control server;

[0017] The scheduling module is configured to distribute the edge gateway control instructions contained in the instruction set to the at least two executors, so that each of the executors executes the acquired edge gateway control instructions to obtain an execution result instruction, and forwards the execution result instruction to the corresponding edge gateway through the edge gateway controller, and controls the edge gateway based on the execution result instruction; wherein, one edge gateway control instruction is distributed to one executor.

[0018] According to one aspect of an embodiment of the present application, an edge gateway control device is provided, which is applied to an edge gateway control system, the system comprising an edge gateway controller, a scheduler and at least two actuators; the device is respectively configured in the at least two actuators, and the device comprises:

[0019] An instruction acquisition module is configured to acquire an edge gateway control instruction from an instruction set distributed by the scheduler; the instruction set includes at least one edge gateway control instruction, and the at least one edge gateway control instruction is obtained by the edge gateway controller parsing a business instruction from a business control server; wherein one edge gateway control instruction is distributed to one executor;

[0020] An execution module is configured to execute the acquired edge gateway control instruction and obtain an execution result instruction;

[0021] The control module is configured to send the execution result instruction to the edge gateway controller, so that the edge gateway controller forwards the execution result instruction to the corresponding edge gateway and controls the edge gateway based on the execution result instruction.

[0022] According to one aspect of an embodiment of the present application, there is provided an electronic device, including:

[0023] a memory storing computer-readable instructions;

[0024] The processor reads the computer-readable instructions stored in the memory to execute the method on the scheduler side or the method on the executor side.

[0025] According to one aspect of an embodiment of the present application, a computer-readable storage medium is provided, on which computer-readable instructions are stored. When the computer-readable instructions are executed by a processor of a computer, the computer executes the method on the scheduler side or the method on the executor side.

[0026] In the technical solution provided in the embodiments of the present application, on the one hand, in the edge gateway control system, the edge gateway controller parses the edge gateway control instructions from the business instructions, and the actuator executes the edge gateway control instructions to control the edge gateway, thereby realizing the decoupling of the edge gateway controller and the execution of the edge gateway control instructions, which not only improves the processing speed and throughput of the edge gateway control instructions, but also enables the system to have the ability to horizontally expand the actuators, thereby improving the instruction throughput performance of the system; on the other hand, by deploying at least two actuators in the system, each actuator can execute the edge gateway control instructions, thereby further improving the processing speed and throughput of the edge gateway control instructions, as well as the instruction throughput performance of the system.

[0027] It should be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present application. BRIEF DESCRIPTION OF THE DRAWINGS

[0028] The drawings herein are incorporated into the specification and constitute a part of the specification, showing embodiments consistent with the present application, and together with the specification, are used to explain the principles of the present application. Obviously, the drawings described below are only some embodiments of the present application, and for those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative work. In the drawings:

[0029] Figure 1 is a schematic diagram of an implementation environment shown in an exemplary embodiment of the present application;

[0030] Figure 2 It is a schematic diagram of an implementation environment combining message queue technology shown in an exemplary embodiment of the present application;

[0031] Figure 3 is a flow chart of an edge gateway control method shown in an exemplary embodiment of the present application;

[0032] Figure 4 yes Figure 3 A flowchart of step S120 in the illustrated embodiment in an exemplary embodiment;

[0033] Figure 5 is a flow chart of an edge gateway control method shown in an exemplary embodiment of the present application;

[0034] Figure 6 is based on Figure 2 The interactive flow chart of the application scenario shown in an exemplary embodiment;

[0035] Figure 7 is a block diagram of an edge gateway control device shown in an exemplary embodiment of the present application;

[0036] Figure 8 is a block diagram of an edge gateway control device shown in an exemplary embodiment of the present application;

[0037] Fig. 9 is a schematic structural diagram of an electronic device shown in an exemplary embodiment of the present application;

[0038] Fig.10 A schematic diagram of the structure of a computer system suitable for implementing an electronic device of an embodiment of the present application is shown. DETAILED DESCRIPTION

[0039] Here, exemplary embodiments will be described in detail, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The implementations described in the following exemplary embodiments do not represent all implementations consistent with the present application. Instead, they are only examples of devices and methods consistent with some aspects of the present application as detailed in the attached claims.

[0040] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities may be implemented in software form, or in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.

[0041] The flowcharts shown in the accompanying drawings are only exemplary and do not necessarily include all the contents and operations / steps, nor must they be executed in the order described. For example, some operations / steps can be decomposed, and some operations / steps can be combined or partially combined, so the actual execution order may change according to actual conditions.

[0042] It should also be noted that the "multiple" mentioned in this application refers to two or more than two. "And / or" describes the association relationship of the associated objects, indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship.

[0043] Before introducing the technical solutions of the embodiments of the present application, the nouns and terms involved in the embodiments of the present application are explained first. The nouns and terms involved in the embodiments of the present application are subject to the following interpretations.

[0044] Cloud Technology: refers to a hosting technology that unifies hardware, software, network and other resources within a wide area network or local area network to achieve data computing, storage, processing and sharing.

[0045] Cloud computing: is a computing model that distributes computing tasks on a resource pool consisting of a large number of computers, so that various application systems can obtain computing power, storage space and information services as needed. The network that provides resources is called "cloud". The resources in the "cloud" are infinitely expandable in the eyes of users, and can be obtained at any time, used on demand, expanded at any time, and paid for by use.

[0046] As a provider of basic cloud computing capabilities, a cloud computing resource pool (referred to as a cloud platform, generally referred to as an IaaS (Infrastructure as a Service) platform) will be established, and various types of virtual resources will be deployed in the resource pool for external customers to choose to use. The cloud computing resource pool mainly includes: computing devices (virtualized machines, including operating systems), storage devices, and network devices.

[0047] According to the logical function division, the PaaS (Platform as a Service) layer can be deployed on the IaaS (Infrastructure as a Service) layer, and the SaaS (Software as a Service) layer can be deployed on the PaaS layer. SaaS can also be deployed directly on IaaS. PaaS is a platform for software operation, such as databases, web containers, etc. SaaS is a variety of business software, such as web portals, SMS mass senders, etc. Generally speaking, SaaS and PaaS are upper layers relative to IaaS.

[0048] In the related art, an edge gateway controller usually executes an edge gateway control instruction to control an edge gateway. Due to the performance limitation of the edge gateway controller itself, the processing speed of the edge gateway control instruction is slow and the throughput is low. Based on this, the embodiment of the present application proposes an edge gateway control method and device, which can improve the processing speed and throughput of the edge gateway control instruction.

[0049] See also Figure 1 , Figure 1 1 is a schematic diagram of an implementation environment of an exemplary embodiment of the present application. The implementation environment includes a service control server 10 , an edge gateway 20 and an edge gateway control system, which includes an edge gateway controller 30 , a scheduler 40 and at least two actuators 50 .

[0050] It should be noted that the business control server 10 is a user-oriented server, which is used to provide users with a platform for participating in the control of the edge gateway 20. Users can perform business operations based on the platform provided by the business control server 10, and the business control server 10 generates business instructions for controlling the edge gateway 20 based on the user's business operations. Among them, the platform can be a Web (World Wide Web, Global Wide Area Network) web page, etc. The business control server 10 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network, content distribution network), and big data and artificial intelligence platforms.

[0051] The edge gateway controller 30 is used to control the edge gateway 20, such as maintaining the long link of the edge gateway and managing the access rights of the edge gateway, etc. Among them, the edge gateway controller 30 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms.

[0052] The scheduler 40 is deployed on a network node, which may be a physical machine or a virtual machine.

[0053] The executor 50 is deployed on a network node, which may be a physical machine or a virtual machine. At least two executors 50 may be deployed on the same network node or on different network nodes.

[0054] The scheduler 40 and the executor 50 may be deployed on the same network node or on different network nodes.

[0055] In one embodiment of the present application, a user can perform a business operation on a platform provided by a business control server 10. The business control server 10 generates a business instruction based on the user's business operation and sends the generated business instruction to an edge gateway controller 30. The edge gateway controller 30 parses the business instruction to obtain an instruction set including at least one edge gateway control instruction. The scheduler 40 obtains the instruction set from the edge gateway controller 30 and distributes the edge gateway control instruction contained in the instruction set to at least two executors 50. At least two executors 50 obtain the edge gateway control instruction sent by the scheduler 40, execute the obtained edge gateway control instruction to obtain an execution result instruction, and forward the execution result instruction to the corresponding edge gateway 20 through the edge gateway controller 30 to control the edge gateway 20 based on the execution result instruction. Among them, one edge gateway control instruction is distributed to one executor.

[0056] On the one hand, in the edge gateway control system, the edge gateway controller parses the edge gateway control instructions from the business instructions, and the actuator executes the edge gateway control instructions to control the edge gateway, thereby realizing the decoupling of the edge gateway controller and the execution of the edge gateway control instructions. This not only improves the processing speed and throughput of the edge gateway control instructions, but also allows the edge gateway controller for parsing business instructions and the actuator for executing the edge gateway control instructions to be developed separately, thereby improving the R&D componentization and R&D engineering performance, and enabling the system to have the ability to horizontally expand actuators, thereby improving the system's instruction throughput performance. On the other hand, by deploying at least two actuators in the system, each actuator can execute the edge gateway control instructions, thereby further improving the processing speed and throughput of the edge gateway control instructions, as well as the system's instruction throughput performance.

[0057] In another exemplary embodiment, the edge gateway controller 30 may include a first access module 31 , a service instruction parsing module 32 , and a second access module 33 .

[0058] The first access module 31 is used to provide an interface for business interaction with the business control server 10 and manage the link with the business control server 10. The interface can be built based on Http (HyperText Transfer Protocol), TRPC (Transaction Remote Procedure Call), etc. Through the interface provided by the first access module 31, the business instructions sent by the business control server 10 can be received.

[0059] The service instruction parsing module 32 is used to obtain service instructions from the first access module 31 , parse the obtained service instructions, obtain an instruction set including at least one edge gateway control instruction, and send the instruction set to the scheduler 40 .

[0060] The second access module 33 is used to provide an interface for interacting with the edge gateway 20, maintain a long link with the edge gateway 20, and manage the access rights of the edge gateway 20. The link protocols between the second access module 33 and the edge gateway 20 include but are not limited to GRPC (google Remote Procedure Call), MQTT (Message Queuing Telemetry Transport), WebSocket, etc. It should be noted that GRPC is a high-performance open source software framework released by Google based on the HTTP 2.0 transport layer protocol, which provides a method for configuring and managing network devices that supports multiple programming languages; WebSocket is a protocol for full-duplex communication on a single TCP (Transmission Control Protocol) connection.

[0061] See also Figure 2 , Figure 2 It is a schematic diagram of an implementation environment combined with a message queue technology shown in an exemplary embodiment of the present application. In one embodiment of the present application, the scheduler 40 obtains an instruction set from the edge gateway controller 30, and stores the obtained instruction set in the database 60. The scheduler 40 obtains the edge gateway control instruction contained in the instruction set from the database 60, and sends the obtained edge gateway control instruction to the message queue 70. At least two executors 50 obtain the edge gateway control instruction from the message queue 70. Thereby, the scheduler 40 and the executor 50 are decoupled, and the processing speed of the edge gateway control instruction is improved.

[0062] The network node corresponding to the database 60 may be the same as or different from the network node corresponding to the executor 50 or the scheduler 40 ; the network node corresponding to the message queue 70 may be the same as or different from the network node corresponding to the executor 50 or the scheduler 40 .

[0063] In another exemplary embodiment, the database 60 also stores metadata of each edge gateway control instruction in the instruction set. The scheduler 40 can obtain the edge gateway control instructions and the metadata of the edge gateway control instructions contained in the instruction set from the database 60, and send the obtained edge gateway control instructions and their metadata to the message queue 70. The executor 50 obtains the edge gateway control instructions and their metadata from the message queue 70, and executes the edge gateway control instructions based on the metadata of the edge gateway control instructions.

[0064] Figure 1 and Figure 2 In the embodiment, the number of the service control server 10, the edge gateway 20, the edge gateway controller 30 and the scheduler 40 is only exemplary. According to actual needs, there may be any number of service control servers 10, the edge gateway 20, the edge gateway controller 30 and the scheduler 40.

[0065] Figure 3 is a flow chart of an edge gateway control method according to an exemplary embodiment. The method can be applied to Figure 1 The implementation environment shown is specifically executed by the scheduler 40 in the edge gateway control system, and the edge gateway control system includes Figure 1 The edge gateway controller 30, the scheduler 40 and at least two executors 50 in the environment of the embodiment shown. Among them, the at least two executors 50 can correspond to different network nodes (that is, only one executor can be deployed on a network node), or some of the at least two executors correspond to the same network node, and some executors correspond to different network nodes (that is, one network node can be deployed with one or more executors), or the at least two executors 50 correspond to the same network node. The network node where the executor is deployed can be a virtual machine or a physical machine.

[0066] like Figure 3 As shown, in an exemplary embodiment, the edge gateway control method may include steps S110 to S120, which are described in detail as follows:

[0067] Step S110, obtaining a set of instructions from the edge gateway controller.

[0068] The instruction set includes at least one edge gateway control instruction, and the at least one edge gateway control instruction is parsed by the edge gateway controller based on the service instruction from the service control server.

[0069] It should be noted that the database is used to store instruction sets, and business instructions are used to control edge gateways. The business control server is a user-oriented server that provides users with a platform for participating in edge gateway control. If users need to control edge gateways, they can perform business operations on the platform. The business control server generates business instructions for controlling edge gateways based on user business operations, and sends the generated business instructions to the edge gateway controller. The edge gateway control server obtains business instructions from the business control server, parses the obtained business instructions to obtain at least one edge gateway control instruction, and uses the obtained at least one edge gateway control instruction as an instruction set. The scheduler obtains an instruction set from the edge gateway controller.

[0070] The specific method in which the scheduler obtains the instruction set from the edge gateway controller can be determined according to the actual situation. For example, in an exemplary embodiment, after obtaining the instruction set, the edge gateway controller can send the instruction set to the scheduler, and the scheduler receives the instruction set sent by the edge gateway controller to obtain the instruction set from the edge gateway controller. In another exemplary embodiment, the scheduler can access the edge gateway controller periodically or in real time to obtain the instruction set from the edge gateway controller.

[0071] Step S120, distribute the edge gateway control instructions contained in the instruction set to at least two executors, so that each executor executes the acquired edge gateway control instructions, and forwards the obtained execution result instructions to the corresponding edge gateway through the edge gateway controller, and controls the edge gateway based on the execution result instructions.

[0072] After the scheduler obtains the instruction set from the edge gateway controller, it distributes the edge gateway control instructions contained in the instruction set to at least two actuators in the edge gateway control system. Each actuator executes the obtained edge gateway control instructions, and forwards the obtained execution result instructions to the corresponding edge gateway through the edge gateway controller, and controls the edge gateway based on the execution result instructions.

[0073] It should be noted that, in order to avoid repeated execution, an edge gateway control instruction can be distributed to one executor.

[0074] In the technical solution provided in the embodiments of the present application, on the one hand, in the edge gateway control system, the edge gateway controller parses the edge gateway control instructions from the business instructions, and the actuator executes the edge gateway control instructions to control the edge gateway, thereby realizing the decoupling of the edge gateway controller and the execution of the edge gateway control instructions, which not only improves the processing speed and throughput of the edge gateway control instructions, but also enables the system to have the ability to horizontally expand the actuators, thereby improving the instruction throughput performance of the system; on the other hand, by deploying at least two actuators in the system, each actuator can execute the edge gateway control instructions, thereby further improving the processing speed and throughput of the edge gateway control instructions, as well as the instruction throughput performance of the system.

[0075] See also Figure 4 , Figure 4 yes Figure 3 The step S120 in the embodiment shown is a flow chart in an exemplary embodiment. Figure 4 As shown, the process of distributing the edge gateway control instructions contained in the instruction set to at least two actuators may include steps S121 to S122, which are described in detail as follows:

[0076] Step S121, storing the instruction set in a database.

[0077] The database is used to store the instruction set.

[0078] In order to achieve decoupling of the scheduler and the executor, the scheduler obtains the instruction set from the edge gateway controller and stores the obtained instruction set in the database.

[0079] Step S122, obtaining the edge gateway control instruction contained in the instruction set from the database, and sending the obtained edge gateway control instruction to the message queue, so that at least two executors obtain the edge gateway control instruction from the message queue.

[0080] After the scheduler stores the instruction set in the database, it can obtain the edge gateway control instructions contained in the instruction set from the database, and send the obtained edge gateway control instructions to the message queue, so that at least two executors can obtain the edge gateway control instructions from the message queue, thereby decoupling the scheduler and the executor, which not only improves the processing speed of the edge gateway control instructions, but also facilitates the parallel expansion of the executors.

[0081] In an exemplary embodiment, the instruction set also includes an execution order between edge gateway control instructions, and the execution order between edge gateway control instructions is obtained by the edge gateway controller based on the business instruction parsing.

[0082] It should be noted that there is usually an association relationship between the edge gateway control instructions contained in a business instruction. Therefore, the edge gateway controller can parse the business instruction, parse out at least one edge gateway control instruction and the association relationship between the edge gateway control instructions from the business instruction, determine the execution order between the edge gateway control instructions based on the association relationship, and use the parsed at least one edge gateway control instruction and the execution order as an instruction set, that is, the instruction set contains not only at least one edge gateway control instruction, but also the execution order between the edge gateway control instructions. For example, if three edge gateway control instructions are parsed from the business instruction, namely A1-A3, and the execution order of A1-A3 is, after A1 is executed, A2 is executed, after A2 is executed, A3 is executed, then the instruction set includes A1-A3, and the execution order of A1-A3.

[0083] Under the condition that the instruction set also contains the execution order of the edge gateway control instruction, the process of obtaining the edge gateway control instruction contained in the instruction set from the database and sending the obtained edge gateway control instruction to the message queue may include steps S210 to S220, which are described in detail as follows:

[0084] Step S210: access a database to obtain a set of instructions stored in the database.

[0085] The scheduler may access the database periodically to obtain the instruction set stored in the database, or the scheduler may access the database in real time to obtain the instruction set stored in the database.

[0086] Step S220, according to the execution order of the edge gateway control instructions contained in the instruction set, the edge gateway control instructions are sequentially obtained from the instruction set, and the obtained edge gateway control instructions are sent to the message queue.

[0087] After the scheduler obtains the instruction set from the database, it first obtains the edge gateway control instruction with the highest execution order from the instruction set according to the execution order between the edge gateway control instructions contained in the instruction set, and sends the obtained edge gateway control instruction to the message queue, and then obtains the edge gateway control instruction with the second highest execution order from the instruction set, and sends the obtained edge gateway control instruction to the message queue, until all edge gateway control instructions in the instruction set are sent, thereby ensuring that the edge gateway control instructions are executed in sequence.

[0088] In an exemplary embodiment, the database contains the execution status information of the edge gateway control instruction in the instruction set. It should be noted that from the edge gateway control instruction being stored in the database to the edge gateway control instruction being executed by the executor, it includes the following execution status: not sent to the message queue, sent to the message queue but not acquired by the executor, acquired by the executor but not executed, executing, and completed. The execution status information is used to characterize the execution status of the edge gateway control instruction, such as whether it is sent to the message queue, whether it is executed, and whether it is completed.

[0089] Under the condition that the database contains the execution status information of the edge gateway control instruction in the instruction set, the process of sequentially obtaining the edge gateway control instruction from the instruction set according to the execution order between the edge gateway control instructions contained in the instruction set, and sending the obtained edge gateway control instruction to the message queue may include steps S221 to S222, which are described in detail as follows:

[0090] Step S221, determining a target edge gateway control instruction from an instruction set according to the execution status information, wherein the execution status of the target edge gateway control instruction includes the earliest execution order, not yet executed, and not sent to a message queue.

[0091] In order to ensure that the edge gateway control instruction with the earlier execution order is executed first and the edge gateway control instruction with the later execution order is executed later, the scheduler determines the target edge gateway control instruction from the instruction set stored in the database according to the execution status information contained in the database. Among them, the execution status of the target edge gateway control instruction includes the earliest execution order, not yet executed, and not sent to the message queue. In other words, the target edge gateway control instruction is the edge gateway control instruction with the earliest execution order among the edge gateway control instructions in the instruction set that have not been executed and have not been sent to the message queue.

[0092] For example, as shown in Table 1, the database stores instruction set B, instruction set B represents edge gateway control instructions B1-B5, and the database also stores the execution order and execution status of edge gateway control instructions B1-B5. According to Table 1, among the edge gateway control instructions B1-B5, the edge gateway control instructions that have not been sent to the message queue and have not been executed include edge gateway control instructions B4 and edge gateway control instructions B5, wherein the execution order of B4 is earlier than that of B5, therefore, B4 is the target edge gateway control instruction.

[0093]

[0094] Table 1

[0095] Step S222: If it is determined that the edge gateway control instruction whose execution order is before the target edge gateway control instruction is in the execution completed state, the target edge gateway control instruction is sent to the message queue.

[0096] In order to ensure that the edge gateway control instructions with an earlier execution order are executed first, and the edge gateway control instructions with a later execution order are executed later, after determining the target edge gateway control instruction, the scheduler further determines whether the edge gateway control instruction with an execution order before the target edge gateway control instruction is in the execution completed state. If the edge gateway control instruction with an execution order before the target edge gateway control instruction is in the execution completed state, the target edge gateway control instruction is sent to the message queue, thereby ensuring that each edge gateway control instruction is executed in the execution order to avoid execution errors. Continuing with the previous example, the edge gateway control instructions B1-B3 with an execution order before the target edge gateway control instruction B4 are in the execution completed state, so B4 is sent to the message queue.

[0097] Among them, in order to reduce resource occupancy and reduce data processing volume, the scheduler can only determine whether the edge gateway control instruction whose execution order is before the target edge gateway control instruction is in the execution completed state. If the edge gateway control instruction whose execution order is before the target edge gateway control instruction is in the execution completed state, the target edge gateway control instruction is sent to the message queue. Alternatively, the scheduler can determine whether all edge gateway control instructions whose execution order is before the target edge gateway control instruction are in the execution completed state. If all edge gateway control instructions whose execution order is before the target edge gateway control instruction are in the execution completed state, the target edge gateway control instruction is sent to the message queue.

[0098] It should also be mentioned that, in an exemplary embodiment, the edge gateway control method on the scheduler side may further include steps S130 to S140, which are described in detail as follows:

[0099] Step S130, monitoring the working status of at least two actuators.

[0100] In order to avoid the situation where the edge gateway control instructions are not executed due to actuator failure, the scheduler monitors the working status of each actuator in the edge gateway control system.

[0101] Step S140: If it is determined according to the monitored working status that a first actuator among the at least two actuators fails, the edge gateway control instruction that has not been executed in the first actuator is resent to an actuator that has not failed among the at least two actuators.

[0102] If the scheduler detects that the first actuator in the edge gateway control system has a fault, the edge gateway control instructions that have not been executed in the first actuator will be resent to the actuators that have not failed in the edge gateway control system, so that the actuators that have not failed can execute the edge gateway controllers that have not been executed in the faulty actuator to ensure that the edge gateway control instructions are executed.

[0103] In an exemplary embodiment, if the scheduler determines, based on the monitored working state, that the first actuator of at least two actuators fails to execute the acquired edge gateway control instruction within a preset time period after acquiring the edge gateway control instruction, then it is determined that the first actuator is faulty. It should be noted that the preset time period is a time period used to determine whether the actuator is faulty, which can be flexibly set according to actual needs, for example, to 1 second, 0.5 seconds, etc. In one example, assuming that the preset time period is 2 seconds, if a certain actuator fails to execute the edge gateway control instruction within 2 seconds after acquiring the edge gateway control instruction, then it is determined that the actuator is faulty.

[0104] Among them, the database may contain the time when the edge gateway control instruction is obtained by the executor and the time when the execution is completed. The scheduler can access the database and determine whether the executor has a fault based on the time when each edge gateway control instruction in the database is obtained by the executor and the time when the execution is completed.

[0105] In an exemplary embodiment, under the condition that the scheduler distributes the edge gateway control instruction to at least two actuators through a message queue, if it is determined that the first actuator of the at least two actuators has a fault according to the monitored working status, the process of resending the edge gateway control instruction that has not been executed in the first actuator to the actuator that has not failed in the at least two actuators may include: if it is detected that the first actuator has a fault, resending the edge gateway control instruction that has not been executed in the first actuator to the message queue. In this way, other schedulers that have not failed can obtain the edge gateway control instruction that has not been executed in the first actuator from the message queue, and execute the obtained edge gateway control instruction, so as to ensure that the edge gateway control instruction is executed.

[0106] Figure 5 is a flow chart of an edge gateway control method according to an exemplary embodiment. The method can be applied to Figure 1 The implementation environment shown is specifically executed by the actuator 50 in the edge gateway control system, that is, each actuator 50 can execute the method independently, and the edge gateway control system includes Figure 1The edge gateway controller 30, the scheduler 40 and at least two executors 50 in the environment of the embodiment shown. Among them, the at least two executors 50 can correspond to different network nodes (that is, only one executor can be deployed on a network node), or some of the at least two executors correspond to the same network node, and some executors correspond to different network nodes (that is, one network node can be deployed with one or more executors), or the at least two executors 50 correspond to the same network node. The network node where the executor is deployed can be a virtual machine or a physical machine.

[0107] like Figure 5 As shown, in an exemplary embodiment, the edge gateway control method may include steps S310 to S330, which are described in detail as follows:

[0108] Step S310: Obtain the edge gateway control instruction contained in the instruction set distributed by the scheduler.

[0109] The instruction set includes at least one edge gateway control instruction, and the at least one edge gateway control instruction is parsed by the edge gateway controller based on the business instruction from the business control server; and one edge gateway control instruction is distributed to one executor.

[0110] It should be noted that the database is used to store instruction sets, and business instructions are used to control edge gateways. The business control server is a user-oriented server that provides users with a platform for participating in edge gateway control. If users need to control edge gateways, they can perform business operations on the platform. The business control server generates business instructions for controlling edge gateways based on user business operations, and sends the generated business instructions to the edge gateway controller. The edge gateway control server obtains business instructions from the business control server, parses the obtained business instructions to obtain at least one edge gateway control instruction, and uses the obtained at least one edge gateway control instruction as an instruction set. The scheduler obtains an instruction set from the edge gateway controller, and distributes the edge gateway control instructions contained in the instruction set to at least two executors, wherein one edge gateway control instruction is distributed to one executor. The executor obtains the edge gateway control instruction distributed by the scheduler.

[0111] Step S320, execute the acquired edge gateway control instruction to obtain an execution result instruction.

[0112] The executor executes the acquired edge gateway control instruction and obtains the execution result instruction.

[0113] Step S330, sending the execution result instruction to the edge gateway controller, so that the edge gateway controller forwards the execution result instruction to the corresponding edge gateway, and controls the edge gateway based on the execution result instruction.

[0114] The executor sends the execution result instruction to the edge gateway controller, and the edge gateway controller forwards the execution result instruction to the corresponding edge gateway, so that the edge gateway executes the execution result instruction and realizes the control of the edge gateway. In this way, the executor does not need to establish a link with the edge gateway separately, thereby saving network resources.

[0115] In an exemplary embodiment, when the instruction set is stored in the database by the scheduler, and the edge gateway control instruction contained in the instruction set is obtained from the database by the scheduler and sent to the message queue, Figure 5 Step S310 in the illustrated embodiment includes: extracting edge gateway control instructions from the scheduler from the message queue.

[0116] The executor may extract the edge gateway control instruction from the message queue at a fixed time, or the executor may extract the edge gateway control instruction from the message queue after executing an edge gateway control instruction.

[0117] In another embodiment, under the condition that the database contains the execution status information of the edge gateway control instruction in the instruction set, after the edge gateway control instruction is executed, the executor may update the execution status information corresponding to the executed edge gateway control instruction in the database.

[0118] In another embodiment, after extracting the edge gateway control instruction from the scheduler from the message queue, the executor may update the execution status information of the extracted edge gateway control instruction in the database, so that the execution status information in the database accurately reflects the execution status of each edge gateway control instruction, thereby avoiding the situation where the scheduler repeatedly sends the edge gateway control instruction to the message queue.

[0119] See also Figure 6 , Figure 6 is based on Figure 2 The interactive flow chart of the application scenario in an exemplary embodiment is shown. Figure 6 As shown, it mainly includes the following steps:

[0120] Step S401: A user performs a service operation on a platform provided by a service control server.

[0121] The service control server provides a platform for users to perform service operations. Users perform service operations on the platform to control the edge gateway.

[0122] Step S402: The service control server generates a service instruction based on the service operation.

[0123] After receiving the user's service operation, the service control server generates a service instruction based on the service operation.

[0124] Step S403: The service control server sends the service instruction to the edge gateway controller.

[0125] Step S404: the edge gateway controller parses the service instruction to obtain an instruction set including at least one edge gateway control instruction.

[0126] After receiving the service instruction, the edge gateway controller parses at least one edge gateway control instruction from the service instruction to obtain an instruction set.

[0127] Step S405: The edge gateway controller sends the instruction set to the scheduler.

[0128] Step S406: the scheduler stores the instruction set in the database.

[0129] Step S407: The scheduler obtains the edge gateway control instruction contained in the instruction set from the database.

[0130] Step S408: The scheduler sends the acquired edge gateway control instruction to the message queue.

[0131] Step S409: The executor obtains the edge gateway control instruction from the message queue.

[0132] Step S410: The executor executes the acquired edge gateway control instruction to obtain an execution result instruction.

[0133] In step S411, the executor sends the execution result instruction to the edge gateway controller.

[0134] Step S412: The edge gateway controller forwards the execution result instruction to the corresponding edge gateway.

[0135] The edge gateway controller sends the execution result instruction to the corresponding edge gateway to control the edge gateway.

[0136] It should be noted that the detailed processes involved in the above steps S401 to S412 have been described in the aforementioned embodiments, and therefore will not be repeated here.

[0137] In this embodiment, the edge gateway controller receives a business instruction through the business control server, parses at least one edge gateway control instruction from the business instruction to obtain an instruction set, and then sends the instruction set to the scheduler, which distributes the edge gateway control instructions in the instruction set to at least two executors in the system so that the executors execute the edge gateway control instructions, thereby achieving decoupling of the edge gateway controller and the execution of the edge gateway control instructions, which not only improves the processing speed and throughput of the edge gateway control instructions, but also allows the edge gateway controller for parsing business instructions and the executor for executing the edge gateway control instructions to be developed separately, thereby improving the R&D componentization and R&D engineering performance, and enabling the system to have the ability to horizontally expand executors, thereby improving the system's instruction throughput performance; and, the scheduler sends the edge gateway control instructions to the executor through a message queue, thereby achieving decoupling of the scheduler and the executor, and further improving the processing speed and throughput of the edge gateway control instructions.

[0138] An edge gateway control system provided by an exemplary embodiment of the present application includes an edge gateway controller, a scheduler and at least two actuators, wherein:

[0139] The edge gateway controller obtains the service instruction from the service control server, and parses the obtained service instruction to obtain an instruction set including at least one edge gateway control instruction.

[0140] The scheduler obtains an instruction set from an edge gateway controller, and distributes the edge gateway control instructions contained in the instruction set to at least two executors; wherein one edge gateway control instruction is distributed to one executor.

[0141] At least two executors respectively obtain the edge gateway control instructions distributed by the scheduler, execute the obtained edge gateway control instructions, obtain the execution result instructions, and send the execution result instructions to the edge gateway controller, so that the edge gateway controller forwards the execution result instructions to the corresponding edge gateway, and controls the edge gateway based on the execution result instructions.

[0142] The at least two actuators may correspond to the same network node or to different network nodes.

[0143] Figure 7 : is a block diagram of an edge gateway control device shown in an exemplary embodiment of the present application. The device is applied to an edge gateway control system, and the system includes an edge gateway controller, a scheduler, and at least two actuators. The device is configured in the scheduler, and the device includes:

[0144] The set acquisition module 510 is configured to acquire an instruction set from an edge gateway controller; the instruction set includes at least one edge gateway control instruction, and the at least one edge gateway control instruction is parsed by the edge gateway controller based on a business instruction from a business control server; the scheduling module 520 is configured to distribute the edge gateway control instructions contained in the instruction set to at least two executors, so that each executor executes the acquired edge gateway control instructions to obtain an execution result instruction, and forwards the execution result instruction to the corresponding edge gateway through the edge gateway controller, and controls the edge gateway based on the execution result instruction; wherein, one edge gateway control instruction is distributed to one executor.

[0145] In this embodiment, on the one hand, in the edge gateway control system, the edge gateway controller parses the edge gateway control instruction from the business instruction, and the actuator executes the edge gateway control instruction to control the edge gateway, thereby realizing decoupling of the edge gateway controller and the execution of the edge gateway control instruction, which not only improves the processing speed and throughput of the edge gateway control instruction, but also enables the edge gateway controller for parsing business instructions and the actuator for executing the edge gateway control instruction to be developed separately, thereby improving the R&D componentization and R&D engineering performance, and enabling the system to have the ability to horizontally expand the actuator, thereby improving the instruction throughput performance of the system; on the other hand, by deploying at least two actuators in the system, each actuator can execute the edge gateway control instruction, thereby further improving the processing speed and throughput of the edge gateway control instruction, as well as the instruction throughput performance of the system.

[0146] In another exemplary embodiment, the scheduling module 520 includes:

[0147] The instruction storage module is configured to store the instruction set in a database.

[0148] The instruction scheduling module is configured to obtain the edge gateway control instructions contained in the instruction set from the database, and send the obtained edge gateway control instructions to the message queue, so that at least two executors obtain the edge gateway control instructions from the message queue.

[0149] In another exemplary embodiment, the instruction set further includes an execution order between edge gateway control instructions, and the execution order between edge gateway control instructions is obtained by the edge gateway controller based on the business instruction parsing; the instruction scheduling module includes:

[0150] The access module is configured to access the database and obtain the instruction set stored in the database.

[0151] The instruction distribution module is configured to obtain edge gateway control instructions from the instruction set in sequence according to the execution order between the edge gateway control instructions contained in the instruction set, and send the obtained edge gateway control instructions to the message queue.

[0152] In another exemplary embodiment, under the condition that the database contains execution status information of the edge gateway control instruction in the instruction set, the instruction distribution module includes:

[0153] The target determination module is configured to determine the target edge gateway control instruction from the instruction set according to the execution status information, and the execution status of the target edge gateway control instruction includes the earliest execution order, not yet executed, and not sent to the message queue.

[0154] The instruction sending module is configured to send the target edge gateway control instruction to the message queue if it is determined that the edge gateway control instruction whose execution order is before the target edge gateway control instruction is in the execution completed state.

[0155] In another exemplary embodiment, the apparatus further comprises:

[0156] The monitoring module is configured to monitor the working status of at least two actuators.

[0157] The fault processing module is configured to resend the edge gateway control instruction that has not been executed in the first actuator to the actuator that has not failed in the at least two actuators if it is determined that the first actuator among the at least two actuators has failed according to the monitored working status.

[0158] In another exemplary embodiment, the fault handling module includes:

[0159] The fault handling submodule is configured to determine that a first executor of at least two executors has a fault if the scheduler determines based on the monitored working status that the first executor fails to execute the acquired edge gateway control instruction within a preset time period after acquiring the edge gateway control instruction.

[0160] Figure 8 : is a block diagram of an edge gateway control device shown in an exemplary embodiment of the present application. The device is applied to an edge gateway control system, and the system includes an edge gateway controller, a scheduler, and at least two actuators. The device is respectively configured in at least two actuators in the edge gateway control system (that is, each actuator in the edge gateway control system is configured with the device), and the device includes:

[0161] The instruction acquisition module 610 is configured to acquire the edge gateway control instruction in the instruction set distributed by the scheduler; the instruction set includes at least one edge gateway control instruction, and at least one edge gateway control instruction is obtained by the edge gateway controller parsing the business instruction from the business control server; wherein, one edge gateway control instruction is distributed to an executor; the execution module 620 is configured to execute the acquired edge gateway control instruction to obtain the execution result instruction; the control module 630 is configured to send the execution result instruction to the edge gateway controller, so that the edge gateway controller forwards the execution result instruction to the corresponding edge gateway, and controls the edge gateway based on the execution result instruction.

[0162] In another exemplary embodiment, the instruction acquisition module 610 includes:

[0163] The instruction acquisition submodule is configured to extract the edge gateway control instructions from the scheduler from the message queue; wherein the instruction set is stored in the database by the scheduler, and the edge gateway control instructions contained in the instruction set are acquired from the database by the scheduler and sent to the message queue.

[0164] In another exemplary embodiment, under the condition that the database contains execution status information of the edge gateway control instruction in the instruction set, the device further includes:

[0165] The update module is configured to update the execution status information corresponding to the executed edge gateway control instruction in the database after the edge gateway control instruction is executed.

[0166] It should be noted that the device provided in the above embodiment and the method provided in the above embodiment belong to the same concept, wherein the specific manner in which each module and unit performs the operation has been described in detail in the method embodiment and will not be repeated here.

[0167] An embodiment of the present application also provides an electronic device, including a processor and a memory, wherein the memory stores computer-readable instructions, and when the computer-readable instructions are executed by the processor, the aforementioned method on the scheduler side or the method on the executor side is implemented.

[0168] Fig. 9 The diagram is a schematic structural diagram of an electronic device according to an exemplary embodiment.

[0169] It should be noted that the electronic device is only an example adapted to the present application and cannot be considered to provide any limitation on the scope of use of the present application. The electronic device cannot be interpreted as requiring dependence on or having Fig. 9 One or more components of an exemplary electronic device shown in FIG.

[0170] like Fig. 9As shown, in an exemplary embodiment, the electronic device includes a processing component 801, a memory 802, a power component 803, a multimedia component 804, an audio component 805, a sensor component 807, and a communication component 808. Among them, the above components are not all necessary, and the electronic device can add other components or reduce certain components according to its own functional requirements, which is not limited in this embodiment.

[0171] The processing component 801 generally controls the overall operation of the electronic device, such as operations associated with display, data communication, and log data processing. The processing component 801 may include one or more processors 809 to execute instructions to complete all or part of the steps of the above operations. In addition, the processing component 801 may include one or more modules to facilitate the interaction between the processing component 801 and other components. For example, the processing component 801 may include a multimedia module to facilitate the interaction between the multimedia component 804 and the processing component 801.

[0172] The memory 802 is configured to store various types of data to support operations on the electronic device, examples of which include instructions for any application or method for operating on the electronic device. The memory 802 stores one or more modules, which are configured to be executed by the one or more processors 809 to complete all or part of the steps in the method described in the above embodiment.

[0173] The power supply component 803 provides power to various components of the electronic device. The power supply component 803 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the electronic device.

[0174] The multimedia component 804 includes a screen that provides an output interface between the electronic device and the user. In some embodiments, the screen may include a TP (Touch Panel) and an LCD (Liquid Crystal Display). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundaries of a touch or slide action, but also detect the duration and pressure associated with the touch or slide operation.

[0175] The audio component 805 is configured to output and / or input audio signals. For example, the audio component 805 includes a microphone, and when the electronic device is in an operation mode, such as a call mode, a recording mode, and a voice recognition mode, the microphone is configured to receive an external audio signal. In some embodiments, the audio component 805 also includes a speaker for outputting audio signals.

[0176] The sensor component 807 includes one or more sensors for providing status evaluation of various aspects for the electronic device. For example, the sensor component 807 can detect the on / off status of the electronic device and can also detect the temperature change of the electronic device.

[0177] The communication component 808 is configured to facilitate wired or wireless communication between the electronic device and other devices. The electronic device can access a wireless network based on a communication standard, such as Wi-Fi (Wireless-Fidelity).

[0178] Understandably, Fig. 9 The structure shown is for illustration only. The electronic device may include Fig. 9 More or fewer components as shown, or with Fig. 9 The different components are shown. Fig. 9 Each component shown in the figure can be implemented by hardware, software or a combination thereof.

[0179] Fig.10 A schematic diagram of the structure of a computer system suitable for implementing an electronic device of an embodiment of the present application is shown.

[0180] It should be noted that Fig.10 The computer system 1600 of the electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.

[0181] like Fig.10 As shown, the computer system 1600 includes a central processing unit (CPU) 1601, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 1602 or the program loaded from the storage part 1608 to the random access memory (RAM) 1603, such as executing the method in the above embodiment. In RAM 1603, various programs and data required for system operation are also stored. CPU 1601, ROM 1602 and RAM 1603 are connected to each other through bus 1604. Input / output (I / O) interface 1605 is also connected to bus 1604.

[0182] The following components are connected to the I / O interface 1605: an input section 1606 including a keyboard, a mouse, etc.; an output section 1607 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 1608 including a hard disk, etc.; and a communication section 1609 including a network interface card such as a LAN (Local Area Network) card, a modem, etc. The communication section 1609 performs communication processing via a network such as the Internet. A drive 1610 is also connected to the I / O interface 1605 as needed. A removable medium 1611, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1610 as needed so that a computer program read therefrom is installed into the storage section 1608 as needed.

[0183] In particular, according to an embodiment of the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a computer program for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication section 1609, and / or installed from a removable medium 1611. When the computer program is executed by a central processing unit (CPU) 1601, various functions defined in the system of the present application are executed.

[0184] It should be noted that the computer-readable medium shown in the embodiment of the present application can be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium can be, for example, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media can include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present application, a computer-readable storage medium can be any tangible medium containing or storing a program, which can be used by an instruction execution system, device or device or used in combination with it. In the present application, a computer-readable signal medium can include a data signal propagated in a baseband or as a part of a carrier wave, wherein a computer-readable computer program is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than computer-readable storage media, which may send, propagate, or transmit programs for use by or in conjunction with an instruction execution system, apparatus, or device. The computer program contained on the computer-readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.

[0185] The flowchart and block diagram in the accompanying drawings illustrate the possible architecture, functions and operations of the system, method and computer program product according to various embodiments of the present application. Wherein, each box in the flowchart or block diagram can represent a module, a program segment, or a part of the code, and the above-mentioned module, program segment, or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flowchart, and the combination of boxes in the block diagram or flowchart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0186] The units involved in the embodiments described in this application may be implemented by software or hardware, and the units described may also be set in a processor. The names of these units do not, in some cases, constitute limitations on the units themselves.

[0187] Another aspect of the present application further provides a computer-readable storage medium having a computer program stored thereon, which implements the above scheduler side method or executor side method when the computer program is executed by a processor. The computer-readable storage medium may be included in the electronic device described in the above embodiment, or may exist independently without being assembled into the electronic device.

[0188] Another aspect of the present application also provides a computer program product or a computer program, which includes a computer instruction stored in a computer-readable storage medium. A processor of a computer device reads the computer instruction from the computer-readable storage medium, and the processor executes the computer instruction, so that the computer device executes the method provided in each of the above embodiments.

[0189] The above content is only a preferred exemplary embodiment of the present application and is not intended to limit the implementation scheme of the present application. A person skilled in the art can easily make corresponding changes or modifications based on the main concept and spirit of the present application. Therefore, the scope of protection of the present application shall be based on the scope of protection required by the claims.

Claims

1. An edge gateway control method, characterized in that: Applied to an edge gateway control system, the system includes an edge gateway controller, a scheduler and at least two actuators; the method is executed by the scheduler, and the method includes: Acquire an instruction set from the edge gateway controller; the instruction set includes at least one edge gateway control instruction, and the at least one edge gateway control instruction is obtained by parsing the edge gateway controller based on a service instruction from a service control server; The edge gateway control instructions contained in the instruction set are distributed to the at least two executors, so that each of the executors executes the acquired edge gateway control instructions, and the obtained execution result instructions are forwarded to the corresponding edge gateway through the edge gateway controller, and the edge gateway is controlled based on the execution result instructions; wherein, one edge gateway control instruction is distributed to one executor.

2. The method according to claim 1, characterized in that The method further comprises: Monitoring the working status of the at least two actuators; If it is determined according to the monitored working status that a first actuator among the at least two actuators fails, the edge gateway control instruction that has not been executed in the first actuator is resent to the actuator that has not failed among the at least two actuators.

3. The method according to claim 2, characterized in that If the scheduler determines, based on the monitored working status, that the first executor of the at least two executors fails to execute the acquired edge gateway control instruction within a preset time period after acquiring the edge gateway control instruction, it is determined that the first executor has a fault.

4. The method according to claim 1, characterized in that The step of distributing the edge gateway control instructions contained in the instruction set to the at least two actuators includes: Storing the instruction set in a database; The edge gateway control instructions contained in the instruction set are obtained from the database, and the obtained edge gateway control instructions are sent to the message queue, so that the at least two executors obtain the edge gateway control instructions from the message queue.

5. The method according to claim 4, characterized in that The instruction set also includes an execution order between edge gateway control instructions, and the execution order between the edge gateway control instructions is obtained by the edge gateway controller based on the business instruction parsing; the acquiring the edge gateway control instructions contained in the instruction set from the database, and sending the acquired edge gateway control instructions to the message queue, includes: Accessing the database to obtain a set of instructions stored in the database; According to the execution order of the edge gateway control instructions contained in the instruction set, the edge gateway control instructions are sequentially acquired from the instruction set, and the acquired edge gateway control instructions are sent to the message queue.

6. The method according to claim 5, characterized in that The database contains execution status information of the edge gateway control instructions in the instruction set; the edge gateway control instructions are sequentially obtained from the instruction set according to the execution order of the edge gateway control instructions contained in the instruction set, and the obtained edge gateway control instructions are sent to the message queue, including: Determine a target edge gateway control instruction from the instruction set according to the execution status information, wherein the execution status of the target edge gateway control instruction includes the earliest execution order, not yet executed, and not sent to the message queue; If it is determined that the edge gateway control instruction whose execution order is before the target edge gateway control instruction is in an execution completion state, the target edge gateway control instruction is sent to the message queue.

7. An edge gateway control method, characterized in that: Applied to an edge gateway control system, the system includes an edge gateway controller, a scheduler and at least two actuators; the method is executed by each of the actuators, and the method includes: Obtaining an edge gateway control instruction contained in an instruction set distributed by the scheduler; the instruction set includes at least one edge gateway control instruction, and the at least one edge gateway control instruction is obtained by parsing the edge gateway controller based on a business instruction from a business control server; wherein one edge gateway control instruction is distributed to one executor; Execute the acquired edge gateway control instruction and obtain the execution result instruction; The execution result instruction is sent to the edge gateway controller, so that the edge gateway controller forwards the execution result instruction to the corresponding edge gateway and controls the edge gateway based on the execution result instruction.

8. The method according to claim 7, characterized in that The obtaining of the edge gateway control instruction contained in the instruction set distributed by the scheduler includes: Extract edge gateway control instructions from the scheduler from the message queue; wherein the instruction set is stored in a database by the scheduler, and the edge gateway control instructions contained in the instruction set are obtained from the database by the scheduler and sent to the message queue.

9. The method according to claim 8, characterized in that The database contains execution status information of the edge gateway control instructions in the instruction set; the method also includes: After the edge gateway control instruction is executed, the execution status information corresponding to the executed edge gateway control instruction is updated in the database.

10. An edge gateway control system, characterized in that: It includes an edge gateway controller, a scheduler and at least two executors, wherein: The edge gateway controller obtains a service instruction from the service control server, and parses the obtained service instruction to obtain an instruction set including at least one edge gateway control instruction; The scheduler obtains an instruction set from the edge gateway controller, and distributes the edge gateway control instructions contained in the instruction set to the at least two executors; wherein one edge gateway control instruction is distributed to one executor; The at least two executors respectively obtain the edge gateway control instructions distributed by the scheduler, execute the obtained edge gateway control instructions, obtain execution result instructions, and send the execution result instructions to the edge gateway controller, so that the edge gateway controller forwards the execution result instructions to the corresponding edge gateway and controls the edge gateway based on the execution result instructions.

11. The system according to claim 10, characterized in that The at least two actuators correspond to different network nodes.

12. An edge gateway control device, characterized in that: Applied to an edge gateway control system, the system includes an edge gateway controller, a scheduler and at least two actuators; the device is configured in the scheduler, and the device includes: A set acquisition module, configured to acquire an instruction set from the edge gateway controller; the instruction set includes at least one edge gateway control instruction, and the at least one edge gateway control instruction is obtained by parsing the edge gateway controller based on a service instruction from a service control server; The scheduling module is configured to distribute the edge gateway control instructions contained in the instruction set to the at least two executors, so that each of the executors executes the acquired edge gateway control instructions to obtain an execution result instruction, and forwards the execution result instruction to the corresponding edge gateway through the edge gateway controller, and controls the edge gateway based on the execution result instruction; wherein, one edge gateway control instruction is distributed to one executor.

13. An edge gateway control device, characterized in that: Applied to an edge gateway control system, the system includes an edge gateway controller, a scheduler and at least two actuators; the device is respectively configured in the at least two actuators, and the device includes: An instruction acquisition module is configured to acquire an edge gateway control instruction from an instruction set distributed by the scheduler; the instruction set includes at least one edge gateway control instruction, and the at least one edge gateway control instruction is obtained by the edge gateway controller parsing a business instruction from a business control server; wherein one edge gateway control instruction is distributed to one executor; An execution module is configured to execute the acquired edge gateway control instruction and obtain an execution result instruction; The control module is configured to send the execution result instruction to the edge gateway controller, so that the edge gateway controller forwards the execution result instruction to the corresponding edge gateway and controls the edge gateway based on the execution result instruction.

14. An electronic device, characterized in that: include: a memory storing computer-readable instructions; A processor reads the computer-readable instructions stored in the memory to execute the method described in any one of claims 1 to 6, or executes the method described in any one of claims 7 to 9.

15. A computer-readable storage medium, characterized in that: Computer-readable instructions are stored thereon, and when the computer-readable instructions are executed by a processor of a computer, the computer is caused to execute the method described in any one of claims 1 to 6, or the computer is caused to execute the method described in any one of claims 7 to 9.

16. A computer program product, characterized in that The invention comprises a computer program carried on a computer readable medium, wherein when the computer program is executed, the method according to any one of claims 1 to 9 is implemented.

Citation Information

Patent Citations

  • Edge gateway control method, system and device, electronic equipment and storage medium

    CN113472638A