WO2024065191A1 - Method, apparatus, electronic device, and readable storage medium for orchestrating microservices - Google Patents

Method, apparatus, electronic device, and readable storage medium for orchestrating microservices Download PDF

Info

Publication number
WO2024065191A1
WO2024065191A1 PCT/CN2022/121788 CN2022121788W WO2024065191A1 WO 2024065191 A1 WO2024065191 A1 WO 2024065191A1 CN 2022121788 W CN2022121788 W CN 2022121788W WO 2024065191 A1 WO2024065191 A1 WO 2024065191A1
Authority
WO
WIPO (PCT)
Prior art keywords
microservice
function
function nodes
identifiers
nodes
Prior art date
Application number
PCT/CN2022/121788
Other languages
French (fr)
Inventor
Hang Xiao
Jian Lin
Bowen Wang
Xiaobin Dong
Original Assignee
Siemens Aktiengesellschaft
Siemens Ltd., China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens Aktiengesellschaft, Siemens Ltd., China filed Critical Siemens Aktiengesellschaft
Priority to PCT/CN2022/121788 priority Critical patent/WO2024065191A1/en
Publication of WO2024065191A1 publication Critical patent/WO2024065191A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Definitions

  • the present invention relates to the technical field of data processing, in particular to a method, apparatus, electronic device and readable storage medium for orchestrating microservices.
  • Microservices are a widely adopted architecture today. However, as the number of microservices increases, the challenge of orchestrating microservices increases because microservices cannot exist in isolation, they need to communicate with other microservices.
  • orchestration strategies already exist, such as service rule chains, domain-specific language (DSL) -based configuration files and behavior trees, and more.
  • DSL domain-specific language
  • these orchestration strategies lack a friendly interactive way to build orchestration rules, which is difficult to implement.
  • Embodiments of the present invention propose a method, apparatus, electronic device, and readable storage medium for orchestrating microservices.
  • a method for orchestrating microservices comprising:
  • a function node list in a visual interface of an integrated development environment, wherein the function node list comprising identifiers of a plurality of function nodes, and each function node in the plurality of function nodes is comprised in a respective microservice, the plurality of function nodes are adapted to provide respective functions;
  • microservice orchestration file based on the identifiers of the selected function nodes, the execution logic and identifier of a device, wherein the microservice comprising the selected function nodes is deployed in the device;
  • the orchestration rules are constructed in a user-friendly low-code manner, which reduces the difficulty of orchestration and facilitates implementation.
  • a device can be selected from a list of registered devices based on a set action issued by the user.
  • a device can be automatically selected from the list of function nodes.
  • a middle layer comprising identifier of the deployed microservice in the registered device
  • an inner layer comprising identifiers of the function nodes comprised in the deployed microservice.
  • the executing the microservice orchestration file comprises:
  • parsing the microservice orchestration file to generate an executable script wherein the executable script is configured to: enable the device that deploys the microservice where the selected function nodes are comprised to execute the selected function nodes, according to the execution logic;
  • microservice orchestration file can be executed conveniently.
  • the function node comprises at least one of the following:
  • microservice orchestration file comprises at least one of the following:
  • an apparatus for orchestrating microservices comprising:
  • a displaying module configured to display a function node list in a visual interface of an integrated development environment, wherein the function node list comprising identifiers of a plurality of function nodes, and each function node in the plurality of function nodes is comprised in a respective microservice, the plurality of function nodes are adapted to provide respective functions;
  • a determining module configured to determine identifiers of selected function nodes from the function node list based on a selection operation in the visual interface
  • a determining module configured to determine an execution logic of the selected function nodes based on a connection operation on the identifiers of the selected function nodes in the visual interface
  • a generating module configured to generate a microservice orchestration file based on the identifiers of the selected function nodes, the execution logic and identifier of a device, wherein the microservice comprising the selected function nodes is deployed in the device;
  • an executing module configured to execute the microservice orchestration file.
  • the orchestration rules are constructed in a user-friendly low-code manner, which reduces the difficulty of orchestration and facilitates implementation.
  • the generating module is configured to determine identifier of the device from a list of registered devices based on a setting operation in the visual interface.
  • a device can be selected from a list of registered devices based on a set action issued by the user.
  • the generating module is configured to determine identifier of the device from the function node list.
  • a device can be automatically selected from the list of function nodes.
  • the generating module is configured to: register a device based on a device registration request comprising information about available capabilities of the device; deploy a microservice that matches the information about available capabilities of the device on the registered device; register the deployed microservice based on a microservice registration request comprising capability information of the microservice; generate the function node list, based on identifier of the registered device, identifier of the deployed microservice in the registered device, and the identifiers of the function nodes comprised in the deployed microservice.
  • the function node list displaying a hierarchical structure comprising:
  • a middle layer comprising identifier of the deployed microservice in the registered device
  • an inner layer comprising identifiers of the function nodes comprised in the deployed microservice.
  • an electronic device comprising a processor and a memory, wherein an application program executable by the processor is stored in the memory for causing the processor to execute a method for orchestrating microservices according to any one of above.
  • a computer-readable medium comprising computer-readable instructions stored thereon, wherein the computer-readable instructions, when executed by a processor, implement the method for orchestrating microservices as described in any of the above.
  • a computer program product comprising a computer program, when the computer program is executed by a processor for executing a method f for orchestrating microservices according to any one of above.
  • FIG. 1 is a flowchart of a method for orchestrating microservices according to an embodiment of the present invention.
  • FIG. 2 is a schematic diagram of device discovery according to an embodiment of the present invention.
  • FIG. 3 is a schematic flowchart of discovering microservice capabilities according to an embodiment of the present invention.
  • FIG. 4 is a schematic diagram of device management and microservice management according to an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of an example of a first process of orchestrating microservices according to an embodiment of the present invention.
  • FIG. 6 is a schematic diagram of an example of a second process of orchestrating microservices according to an embodiment of the present invention.
  • FIG. 7 is a structural diagram of an apparatus for orchestrating microservices according to an embodiment of the present invention.
  • FIG. 8 is a block diagram of an electronic device according to an embodiment of the present invention.
  • module 704 generating module 705 executing module 800 device 801 processor 802 memory
  • the embodiments of the present invention propose a low-code implementation method for user-friendly, automatic and dynamic construction of microservice orchestration rules.
  • FIG. 1 is a flowchart of a method for orchestrating microservices according to an embodiment of the present invention. As shown in Figure 1, the method comprises:
  • Step 101 displaying a function node list in a visual interface of an integrated development environment, the function node list comprising identifiers of a plurality of function nodes, and each function node in the plurality of function nodes is comprised in a respective microservice, the plurality of function nodes are adapted to provide respective functions.
  • the number of microservices in the function node list can be one or more. Also, a microservice can contain one or more function nodes.
  • function nodes may comprise: (1) application programming interfaces (e.g., RESTful API) ; (2) remote procedure call (RPC) interfaces; (3) capability nodes, and the like.
  • application programming interfaces e.g., RESTful API
  • RPC remote procedure call
  • the function node list may include the following microservices: 1. microservice for performing environmental monitoring; 2. microservice for performing alarms; 3. microservice for performing control.
  • the microservice for performing environmental monitoring may include the following function nodes: function node for monitoring carbon dioxide concentration; function node for monitoring dissolved oxygen content in nutrient solutions; function node for monitoring inorganic salt concentrations in nutrient solutions; function node for monitoring light intensity and function node for monitoring ambient temperature and humidity.
  • the microservice for performing alarms may include the following function nodes: function node that remind manual emergency intervention; function node that display reminders on a large screen; function node related to indicator lights.
  • the microservice for performing control may comprise the following function nodes: function node for adjusting the flow rate of the nutrient solution; function node for adding nutrients; function node for adjusting carbon dioxide; function node for adjusting the light intensity; and function node for adjusting the ambient temperature and humidity.
  • Step 102 determining identifiers of selected function nodes from the function node list based on a selection operation in the visual interface.
  • the user can perform a selection operation (e.g., drag and drop) in the visual interface to determine the identifiers of the selected function nodes from the function node list.
  • a selection operation e.g., drag and drop
  • Step 103 determining an execution logic of the selected function nodes based on a connection operation on the identifiers of the selected function nodes in the visual interface.
  • execution logic may include the order of execution of function nodes.
  • the execution order of the function nodes may be determined according to the time order of the connection operation.
  • the execution order of the function nodes may be determined based on predetermined logical conditions.
  • Step 104 generating a microservice orchestration file based on the identifiers of the selected function nodes, the execution logic and identifier of a device, wherein the microservice comprising the selected function nodes is deployed in the device.
  • the microservice orchestration file can be implemented as a behavior tree or a chain of microservice rules.
  • the method further comprises: based on testing operation in the visual interface, determining identifier of the device from a registered device list, wherein the registered device list comprising identifiers of the devices registered in the integrated development environment. Therefore, a device can be selected from a list of registered devices based on a set operation issued by the user.
  • the method further comprising: determining identifier of the device from the function node list. Therefore, the device can be automatically selected from the list of function nodes.
  • the method further comprising: registering a device based on a device registration request comprising information about available capabilities of the device; deploying a microservice that matches the information about available capabilities of the device on the registered device; registering the deployed microservice based on a microservice registration request comprising capability information of the microservice; generating the function node list, based on identifier of the registered device, identifier of the deployed microservice in the registered device, and the identifiers of the function nodes comprised in the deployed microservice. Therefore, a function node list that can automatically select devices is implemented.
  • the function node list it is displayed in a hierarchical structure:
  • outer layer comprising identifier of the registered device
  • middle layer comprising identifier of the deployed microservice in the registered device
  • Step 105 executing the microservice orchestration file.
  • executing the microservice orchestration file comprising: parsing the microservice orchestration file to generate an executable script, wherein the executable script is configured to: enable the device that deploys the microservice where the selected function nodes are comprised to execute the selected function nodes, according to the execution logic; executing the executable script.
  • FIG. 2 is a schematic diagram of device discovery according to an embodiment of the present invention.
  • the device When a device (as shown in FIG. 2, at least one of device 10, device 11 ... device 1 n) is powered on, the device carries a device profile containing information about available capabilities of the device in a device registration request.
  • the device sends the device registration request to a device center 20.
  • the device center 20 completes the registration of the device, and sends information about available capabilities of the registered device to IDE 30.
  • the IDE 30 sends the available capability information of all registered devices to the orchestrator 21.
  • the user opens the IDE 30 to perform a pull operation, then the device center 20 reports the available capability information of all registered devices to IDE 30.
  • the orchestrator 21 deploys a microservice into corresponding registered device based on the matching situation between the capability information required by the microservice to be deployed and the available capability information of the registered device. For example, all function nodes of a microservice can be deployed to a registered device, or function nodes of a microservice can be deployed to multiple registered devices in a distributed manner.
  • FIG. 3 is a schematic flowchart of discovering microservice capabilities according to an embodiment of the present invention.
  • microservice When a microservice (as shown in Figure 3, it can be at least one microservice among microservice 40, microservice 41... and microservice 4n) is deployed to device, the microservice generates a microservice profile that contains the functional nodes contained in the microservice and the capability information that the microservice can provide.
  • the microservice sends the microservice profile to microservice center 22.
  • the microservice center 22 registers the microservice.
  • the microservice center 22 sends the function nodes of the microservice and the capability information of the microservice to the IDE 30.
  • the IDE 30 sends the function nodes of the microservice and the capability information of the microservice to orchestrator 21.
  • the user opens IDE 30 to perform a pull operation then the microservice center 22 reports the function nodes of the microservice and the capability information of the microservice to IDE 30.
  • an orchestration strategy may be generated in a visual manner, and the orchestration strategy may be sent to the orchestrator 21.
  • Orchestrator 21 parses and executes the orchestration strategy.
  • FIG. 4 is a schematic diagram of device management and microservice management according to an embodiment of the present invention.
  • the device After a device (as shown in Fig. 4, it can be at least one of device 10, device 11... and device 1n) is powered on, the device carries a device profile 23 containing information about available capabilities of the device, in a device registration request.
  • the device sends the device registration request to t device center 20.
  • the device center 20 completes registration of the device, and sends information about available capabilities of the registered device to IDE 30.
  • the IDE 30 sends the information of the registered device to the orchestrator 21, so that the orchestrator deploys a microservice matching the information on the registered device.
  • a device list 31 containing all registered devices can be displayed.
  • the respective profiles of device 10, device 11... and device1n are displayed.
  • the profile of device11 comprising information 110 about available capabilities of the device11 (e.g., memory size, network bandwidth, attached hardware, device capabilities and CPU model, etc. ) ; deployed microservices list111 in device 11; device state112 of device 11.
  • functional node A1 in microservice A and the functional node B2 in microservice B are presented in the deployed microservices list 111 of device 11.
  • a microservice (as shown in Figure 4, it can be at least one microservice of microservice 40, microservice 41... and microservice 4n) is deployed, the microservice generates a microservice profile that contains the functional nodes comprised in the microservice and the capability information that the microservice can provide.
  • the microservice sends the microservice profile to microservice center 22.
  • the microservice center 22 registers the microservice.
  • the microservice center 22 sends the function nodes comprised in the microservice and the capability information that the microservice can provide to the IDE 30.
  • IDE30 a list of microservices 32 can be displayed.
  • attributes of microservice 40 comprising: the capability 401 of the microservice 40; function nodes 402 comprised in the microservice 40; request type 403 of each function node; request data 404 of each function node; and response data of each function node.
  • the orchestration rules for microservices can be generated before microservices are deployed.
  • the first type of function node list can be displayed in the visual interface of the integrated development environment, and then based on selection operation in the visual interface, identifiers of the selected function nodes can be determined from the function node list, and then the selected function nodes can be identified based on the visual interface.
  • the connection operation on identifiers of the selected function nodes determines execution logic of the selected function nodes.
  • determine identifier of the device where the microservice where the selected function nodes are located are expected to be deployed (for example, through the selection instruction issued by the user to select Device ID) to generate a microservice orchestration file.
  • the orchestrator After the orchestrator receives the microservice orchestration file, it first deploys the microservices where the function nodes in the microservice orchestration file are located to devices specified in the microservice orchestration file, and then executes the orchestration rules contained in the microservice orchestration file. For example, orchestrator can wait for the microservice registration before executing the orchestration rules.
  • the second type of function node list is displayed in a hierarchical structure: (1) outer layer, comprising identifiers of registered devices (2) middle layer, comprising identifiers of deployed microservices in registered devices; (3) inner layer, comprising identifiers of functional nodes comprised in deployed microservices.
  • identify of the device is included.
  • the second type of function node list can be displayed in the visual interface of the integrated development environment, and then based on selection operation in the visual interface, the identifiers of the selected function nodes can be determined from function node list, and then the selected function nodes can be identified based on the visual interface.
  • the connection operation on identifiers of the selected function nodes determines execution logic of the selected function nodes.
  • the identifier of the device deploying the microservice where the selected function nodes are comprised is determined from the function node list based on the hierarchical structure, thereby generating a microservice orchestration file.
  • FIG. 5 is a schematic diagram of an example of a first process of orchestrating microservices according to an embodiment of the present invention.
  • function node list 33 is of the first type as described above.
  • the function node list 33 includes microservice Sa, microservice Sb, microservice Sc and microservice Sd.
  • Microservice Sa, microservice Sb, microservice Sc, and microservice Sd are all located in the outer layer.
  • each microservice can further trigger its own inner layer to display the identities of the function nodes it contains.
  • the microservice Sd comprises a function node Sd1, a function node Sd2, and a function node Sd3.
  • One or more function nodes can be selected and dragged from the function node list 33 to the target area 90 in the visual interface 30 of the IDE.
  • a connection operation is performed on one or more functional nodes in the target area 90 to determine the execution logic of the functional nodes.
  • a microservice orchestration file can be generated, in which the microservice where the selected function nodes are comprised is deployed in the device.
  • a microservice orchestration file can be generated, in which the microservice where the selected function nodes are comprised is deployed in the device.
  • the identifier of the device where the microservice where the selected function node is located is expected to be deployed.
  • Microservice orchestration files can be in behavior tree format or microservice rule chain format.
  • the selected function nodes are Sb2, Sb1, Sd2, and Sd3, and the connection operation is Sb2 to Sb1, Sb1 to Sd2, and Sb1 to Sd3.
  • the connection operation is Sb2 to Sb1, Sb1 to Sd2, and Sb1 to Sd3.
  • the expected deployment device of the microservice Sb where Sb2 and Sb1 are located is device 1
  • the expected deployment device of the microservice Sd where Sd2 and Sd3 are located is device 2.
  • a microservice rule chain 61 can be generated.
  • the orchestrator 21 parses the microservice rule chain 61 to generate an executable script, wherein the executable script is used to: first, deploy the microservice Sb to the device 1 and the microservice Sd to the device 2; then, enable the device 1 to execute the Sb2 Then execute Sb1; then, enable device 2 to execute Sd3 after executing Sd2.
  • the microservice orchestration file can be generated in a behavior tree manner, for example, the behavior tree 60 is generated, which involves the settings of the control node 70, the control node 71, the control node 72, and the control node 73.
  • FIG. 6 is a schematic diagram of an example of a second process of orchestrating microservices according to an embodiment of the present invention.
  • the function node list 34 is of the second type as described above.
  • the function node list 34 comprises device D1, device D2, and device D3.
  • Device D1, Device D2, and Device D3 are all in the outer layer.
  • each device can further trigger the middle layer to reveal the identifiers of the microservices it deploys.
  • the microservices deployed by device D2 comprise Sa, Sb, Sc, and Sd.
  • Each microservice can further trigger the inner layer to display the identifiers of the function nodes contained in the microservice.
  • the microservice Sb comprises function node Sb1, function node Sb2, and so on.
  • One or more function nodes can be selected and dragged from the function node list 33 to the target area 90 in the visual interface 30 of the IDE.
  • a connection operation is performed on one or more functional nodes in the target area 90 to determine the execution logic of the functional nodes
  • Microservice orchestration files can be in behavior tree format or microservice rule chain format.
  • the selected function nodes are Sb1, Sb2, Sd2, Sd3, and Sa1
  • the connection operation is Sb1 to Sb2, Sb2 to Sd2, Sd2 to Sd3, and Sd3 to Sa1.
  • Sb1, Sb2, Sd2, Sd3 all correspond to device D2, and Sa1 corresponds to device D3.
  • a microservice rule chain 61 can be generated.
  • the orchestrator 21 parses the microservice rule chain 61 to generate an executable script, wherein the executable script is used to: firstly, enable the device D2 to execute Sb1, Sb2, Sd2 and Sd31 in sequence; secondly, enable the device D3 to execute Sa1.
  • a microservice orchestration file can be generated in a behavior tree manner, such as generating a behavior tree 60, which involves the settings of the control node 70, the control node 71, and the control node 72.
  • FIG. 7 is a structural diagram of an apparatus for orchestrating microservices according to an embodiment of the present invention. As shown in FIG. 7, the apparatus 700 for orchestrating microservices comprises:
  • a displaying module 701 is configured to display a function node list in a visual interface of an integrated development environment, wherein the function node list comprising identifiers of a plurality of function nodes, and each function node in the plurality of function nodes is comprised in a respective microservice, the plurality of function nodes are adapted to provide respective functions;
  • a determining module 702 is configured to determine identifiers of selected function nodes from the function node list based on a selection operation in the visual interface;
  • a determining module 703 is configured to determine an execution logic of the selected function nodes based on a connection operation on the identifiers of the selected function nodes in the visual interface;
  • a generating module 704 is configured to generate a microservice orchestration file based on the identifiers of the selected function nodes, the execution logic and identifier of a device, wherein the microservice comprising the selected function nodes is deployed in the device;
  • an executing module 705 is configured to execute the microservice orchestration file.
  • the generating module 704 is configured to determine identifier of the device from a list of registered devices based on a setting operation in the visual interface.
  • the generating module 704 is configured to determine identifier of the device from the function node list.
  • the generating module 704 is configured to: register a device based on a device registration request comprising information about available capabilities of the device; deploy a microservice that matches the information about available capabilities of the device on the registered device; register the deployed microservice based on a microservice registration request comprising capability information of the microservice; generate the function node list, based on identifier of the registered device, identifier of the deployed microservice in the registered device, and the identifiers of the function nodes comprised in the deployed microservice.
  • Embodiments of the present invention also provide an electronic device with processor-memory architecture.
  • FIG. 8 is a block diagram of an electronic device according to an embodiment of the present invention.
  • the electronic device 800 comprises a processor 801, a memory 802, and a computer program stored in the memory 802 and executable on the processor 801.
  • the memory 802 may specifically be implemented as various storage media such as Electrically Erasable Programmable Read-Only Memory (EEPROM) , Flash memory (Flash memory) , Programmable Program Read-Only Memory (PROM) .
  • the processor 801 may be implemented to include one or more central processing units or one or more field programmable gate arrays, wherein the field programmable gate arrays integrate one or more central processing unit cores.
  • the central processing unit or central processing unit core may be implemented as a CPU or MCU or DSP, and so on.
  • the hardware modules in various embodiments may be implemented mechanically or electronically.
  • a hardware module may include specially designed permanent circuits or logic devices (e.g., special-purpose processors, such as FPGAs or ASICs) to perform specific operations.
  • Hardware modules may also include programmable logic devices or circuits temporarily configured by software (e.g., including general-purpose processors or other programmable processors) for performing operations.
  • software e.g., including general-purpose processors or other programmable processors
  • the specific mechanical method, or a dedicated permanent circuit, or a temporarily configured circuit (e.g., configured by software) to realize the hardware module it can be decided according to cost and time considerations.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Embodiments of the present invention disclose a method, apparatus, electronic device, and readable storage medium for orchestrating microservices. The method comprising: displaying a function node list in a visual interface of an integrated development environment, wherein the function node list comprising identifiers of a plurality of function nodes, and each function node in the plurality of function nodes is comprised in a respective microservice; determining identifiers of selected function nodes from the function node list based on a selection operation in the visual interface; determining an execution logic of the selected function nodes based on a connection operation in the visual interface; generating a microservice orchestration file based on the identifiers of the selected function nodes, the execution logic and identifier of a device, wherein the microservice comprising the selected function nodes is deployed in the device; executing the microservice orchestration file. The present invention builds orchestration rules in a user-friendly low-code manner, reduces the difficulty of orchestration, and facilitates implementation.

Description

Method, apparatus, electronic device, and readable storage medium for orchestrating microservices FIELD
The present invention relates to the technical field of data processing, in particular to a method, apparatus, electronic device and readable storage medium for orchestrating microservices.
BACKGROUND
Microservices are a widely adopted architecture today. However, as the number of microservices increases, the challenge of orchestrating microservices increases because microservices cannot exist in isolation, they need to communicate with other microservices.
Some orchestration strategies already exist, such as service rule chains, domain-specific language (DSL) -based configuration files and behavior trees, and more. However, these orchestration strategies lack a friendly interactive way to build orchestration rules, which is difficult to implement.
SUMMARY
Embodiments of the present invention propose a method, apparatus, electronic device, and readable storage medium for orchestrating microservices.
In a first aspect, a method for orchestrating microservices is provided. The method comprising:
displaying a function node list in a visual interface of an integrated development environment, wherein the function node list comprising identifiers of a plurality of function nodes, and each function node in the plurality of function nodes is comprised in a respective microservice, the plurality of function nodes are adapted to provide respective functions;
determining identifiers of selected function nodes from the function node list based on a selection operation in the visual interface;
determining an execution logic of the selected function nodes based on a connection operation on the identifiers of the selected function nodes in the visual interface;
generating a microservice orchestration file based on the identifiers of the selected function nodes, the execution logic and identifier of a device, wherein the microservice comprising the selected function nodes is deployed in the device; and
executing the microservice orchestration file.
Therefore, the orchestration rules are constructed in a user-friendly low-code manner, which reduces the difficulty of orchestration and facilitates implementation.
Preferably, further comprising:
determining identifier of the device from a list of registered devices based on a setting operation in the visual interface.
Therefore, a device can be selected from a list of registered devices based on a set action issued by the user.
Preferably, further comprising:
determining identifier of the device from the function node list.
Therefore, a device can be automatically selected from the list of function nodes.
Preferably, further comprising:
registering a device based on a device registration request comprising information about available capabilities of the device;
deploying a microservice that matches the information about available capabilities of the device on the registered device;
registering the deployed microservice based on a microservice registration request comprising capability information of the microservice;
generating the function node list, based on identifier of the registered device, identifier of the deployed microservice in the registered device, and the identifiers of the function nodes comprised in the deployed microservice.
Therefore, a function node list that can automatically select devices is implemented.
Preferably, wherein in the function node list displays a hierarchical structure comprising:
an outer layer comprising identifier of the registered device;
a middle layer comprising identifier of the deployed microservice in the registered device; and
an inner layer comprising identifiers of the function nodes comprised in the deployed microservice.
Therefore, an optimized structure of the function node list is realized, which facilitates the automatic selection of equipment.
Preferably, wherein the executing the microservice orchestration file comprises:
parsing the microservice orchestration file to generate an executable script, wherein the executable script is configured to: enable the device that deploys the microservice where the selected function nodes are comprised to execute the selected function nodes, according to the execution logic;
executing the executable script.
Therefore, the microservice orchestration file can be executed conveniently.
Preferably, wherein the function node comprises at least one of the following:
Application programming interface; remote procedure call interface; capability node.
Therefore, the diversity of function nodes is realized.
Preferably, wherein the microservice orchestration file comprises at least one of the following:
behavior tree; microservice rule chain.
Therefore, the diversity of microservice orchestration files is realized.
In a second aspect, an apparatus for orchestrating microservices is provided. The apparatus comprising:
a displaying module, configured to display a function node list in a visual interface of an integrated development environment, wherein the function node list comprising identifiers of a plurality of function nodes, and each function node in the plurality of function nodes is comprised in a respective microservice, the plurality of function nodes are adapted to provide respective functions;
a determining module, configured to determine identifiers of selected function nodes from the function node list based on a selection operation in the visual interface;
a determining module, configured to determine an execution logic of the selected function nodes based on a connection operation on the identifiers of the selected function nodes in the visual interface;
a generating module, configured to generate a microservice orchestration file based on the identifiers of the selected function nodes, the execution logic and identifier of a device, wherein the microservice comprising the selected function nodes is deployed in the device; and
an executing module, configured to execute the microservice orchestration file.
Therefore, the orchestration rules are constructed in a user-friendly low-code manner, which reduces the difficulty of orchestration and facilitates implementation.
Preferably, wherein the generating module is configured to determine identifier of the device from a list of registered devices based on a setting operation in the visual interface.
Therefore, a device can be selected from a list of registered devices based on a set action issued by the user.
Preferably, wherein the generating module is configured to determine identifier of the device from the function node list.
Therefore, a device can be automatically selected from the list of function nodes.
Preferably, wherein: the generating module is configured to: register a device based on a device registration request comprising information about available capabilities of the device; deploy a microservice that matches the information about available capabilities of the device on the registered device; register the deployed microservice  based on a microservice registration request comprising capability information of the microservice; generate the function node list, based on identifier of the registered device, identifier of the deployed microservice in the registered device, and the identifiers of the function nodes comprised in the deployed microservice.
Therefore, a function node list that can automatically select devices is implemented.
Preferably, wherein the function node list displaying a hierarchical structure comprising:
an outer layer comprising identifier of the registered device;
a middle layer comprising identifier of the deployed microservice in the registered device; and
an inner layer comprising identifiers of the function nodes comprised in the deployed microservice.
Therefore, an optimized structure of the function node list is realized, which facilitates the automatic selection of equipment.
In a third aspect, an electronic device is provided. The electronic device comprising a processor and a memory, wherein an application program executable by the processor is stored in the memory for causing the processor to execute a method for orchestrating microservices according to any one of above.
In a fourth aspect, a computer-readable medium comprising computer-readable instructions stored thereon is provided, wherein the computer-readable instructions, when executed by a processor, implement the method for orchestrating microservices as described in any of the above.
In a fifth aspect, a computer program product comprising a computer program, when the computer program is executed by a processor for executing a method f for orchestrating microservices according to any one of above.
BRIEF DESCRIPTION OF THE DRAWINGS
In order to make technical solutions of examples of the present disclosure clearer, accompanying drawings to be used in description of the examples will be simply introduced hereinafter. Obviously, the accompanying drawings to be described hereinafter are only some examples of the present disclosure. Those skilled in the art may obtain other drawings according to these accompanying drawings without creative labor.
FIG. 1 is a flowchart of a method for orchestrating microservices according to an embodiment of the present invention.
FIG. 2 is a schematic diagram of device discovery according to an embodiment of the present invention.
FIG. 3 is a schematic flowchart of discovering microservice capabilities according to an embodiment of the present invention.
FIG. 4 is a schematic diagram of device management and microservice management according to an embodiment of the present invention.
FIG. 5 is a schematic diagram of an example of a first process of orchestrating microservices according to an embodiment of the present invention.
FIG. 6 is a schematic diagram of an example of a second process of orchestrating microservices according to an embodiment of the present invention.
FIG. 7 is a structural diagram of an apparatus for orchestrating microservices according to an embodiment of the present invention.
FIG. 8 is a block diagram of an electronic device according to an embodiment of the present invention.
List of reference numbers:
reference numbers meanings
101~105 steps
10/11/…/1n device
20 device center
21 orchestrator
22 microservice center
23 device profile
24 microservice profile
30 IDE
40/41/…/4m microservice
31 list of devices
110 information about available capabilities
111 list of deployed microservices
112 device state
32 list of microservices
401 capability of microservice
402 function node
403 request type
404 request data
405 response data
33 function node list
60 behavior tree
61 microservice rule chain
70/71/72/73/ control node
90 target area
700 apparatus
701 displaying module
702 first determining module
703 second determining module
704 generating module
705 executing module
800 device
801 processor
802 memory
DETAILED DESCRIPTION
In order to make the purpose, technical scheme and advantages of the invention more clear, the following examples are given to further explain the invention in detail.
In order to be concise and intuitive in description, the scheme of the invention is described below by describing several representative embodiments. Many details in the embodiments are only used to help understand the scheme of the invention. However, it is obvious that the technical scheme of the invention can be realized without being limited to these details. In order to avoid unnecessarily blurring the scheme of the invention, some embodiments are not described in detail, but only the framework is given. Hereinafter, "including" refers to "including but not limited to" , "according to... " refers to "at least according to..., but not limited to... " . Due to the language habits of Chinese, when the number of an element is not specifically indicated below, it means that the element can be one or more, or can be understood as at least one.
In view of the shortcomings of lack of friendly interaction methods in the prior art on microservice orchestration strategies, the embodiments of the present invention propose a low-code implementation method for user-friendly, automatic and dynamic construction of microservice orchestration rules.
FIG. 1 is a flowchart of a method for orchestrating microservices according to an embodiment of the present invention. As shown in Figure 1, the method comprises:
Step 101: displaying a function node list in a visual interface of an integrated development environment, the function node list comprising identifiers of a plurality of function nodes, and each function node in the plurality of function nodes is comprised in a respective microservice, the plurality of function nodes are adapted to provide respective functions.
The number of microservices in the function node list can be one or more. Also, a microservice can contain one or more function nodes.
Here, function nodes may comprise: (1) application programming interfaces (e.g., RESTful API) ; (2) remote procedure call (RPC) interfaces; (3) capability nodes, and the like.
By displaying the function node list in visual interface, it is convenient for the user to select one or more target function nodes from the function node list in a human-computer interaction manner.
For example, the function node list may include the following microservices: 1. microservice for performing environmental monitoring; 2. microservice for performing alarms; 3. microservice for performing control. The microservice for performing environmental monitoring may include the following function nodes: function node for monitoring carbon dioxide concentration; function node for monitoring dissolved oxygen content in nutrient solutions; function node for monitoring inorganic salt concentrations in nutrient solutions; function node for monitoring light intensity and function node for monitoring ambient temperature and humidity. The microservice for performing alarms may include the following function nodes: function node that remind manual emergency intervention; function node that display reminders on a large screen; function node related to indicator lights. The microservice for performing control may comprise the following function nodes: function node for adjusting the flow rate of the nutrient solution; function node for adding nutrients; function node for adjusting carbon dioxide; function node for adjusting the light intensity; and function node for adjusting the ambient temperature and humidity.
The above exemplary describes a typical example of the function node list, and those skilled in the art can realize that this description is only exemplary, and is not used to limit the protection scope of the embodiments of the present invention.
Step 102: determining identifiers of selected function nodes from the function node list based on a selection operation in the visual interface.
Here, the user can perform a selection operation (e.g., drag and drop) in the visual interface to determine the identifiers of the selected function nodes from the function node list.
Step 103: determining an execution logic of the selected function nodes based on a connection operation on the identifiers of the selected function nodes in the visual interface.
For example, execution logic may include the order of execution of function nodes. For example, the execution order of the function nodes may be determined according to the time order of the connection operation. In another optional implementation, the execution order of the function nodes may be determined based on predetermined logical conditions.
Step 104: generating a microservice orchestration file based on the identifiers of the selected function nodes, the execution logic and identifier of a device, wherein the microservice comprising the selected function nodes is deployed in the device.
Preferably, the microservice orchestration file can be implemented as a behavior tree or a chain of microservice rules.
In one embodiment, the method further comprises: based on testing operation in the visual interface,  determining identifier of the device from a registered device list, wherein the registered device list comprising identifiers of the devices registered in the integrated development environment. Therefore, a device can be selected from a list of registered devices based on a set operation issued by the user.
In one embodiment, the method further comprising: determining identifier of the device from the function node list. Therefore, the device can be automatically selected from the list of function nodes.
Preferably, the method further comprising: registering a device based on a device registration request comprising information about available capabilities of the device; deploying a microservice that matches the information about available capabilities of the device on the registered device; registering the deployed microservice based on a microservice registration request comprising capability information of the microservice; generating the function node list, based on identifier of the registered device, identifier of the deployed microservice in the registered device, and the identifiers of the function nodes comprised in the deployed microservice. Therefore, a function node list that can automatically select devices is implemented.
In one embodiment, in the function node list, it is displayed in a hierarchical structure:
(1) outer layer, comprising identifier of the registered device;
(2) middle layer, comprising identifier of the deployed microservice in the registered device;
(3) inner layer, comprising identifiers of the function nodes comprised in the deployed microservice.
Therefore, an optimized structure of the function node list is realized, which facilitates the automatic selection of equipment.
Step 105: executing the microservice orchestration file.
In one embodiment, executing the microservice orchestration file comprising: parsing the microservice orchestration file to generate an executable script, wherein the executable script is configured to: enable the device that deploys the microservice where the selected function nodes are comprised to execute the selected function nodes, according to the execution logic; executing the executable script.
FIG. 2 is a schematic diagram of device discovery according to an embodiment of the present invention.
When a device (as shown in FIG. 2, at least one of device 10, device 11 ... device 1 n) is powered on, the device carries a device profile containing information about available capabilities of the device in a device registration request. The device sends the device registration request to a device center 20. The device center 20 completes the registration of the device, and sends information about available capabilities of the registered device to IDE 30. The IDE 30 sends the available capability information of all registered devices to the orchestrator 21. Alternatively, the user opens the IDE 30 to perform a pull operation, then the device center 20 reports the available capability information of all registered devices to IDE 30.
Continuing to refer to FIG. 2, the orchestrator 21 deploys a microservice into corresponding registered device based on the matching situation between the capability information required by the microservice to be deployed and the available capability information of the registered device. For example, all function nodes of a microservice can be deployed to a registered device, or function nodes of a microservice can be deployed to multiple registered devices in a distributed manner.
FIG. 3 is a schematic flowchart of discovering microservice capabilities according to an embodiment of the present invention.
When a microservice (as shown in Figure 3, it can be at least one microservice among microservice 40, microservice 41... and microservice 4n) is deployed to device, the microservice generates a microservice profile that contains the functional nodes contained in the microservice and the capability information that the microservice can provide. The microservice sends the microservice profile to microservice center 22. The microservice center 22 registers the microservice. The microservice center 22 sends the function nodes of the microservice and the capability information of the microservice to the IDE 30. The IDE 30 sends the function nodes of the microservice and the capability information of the microservice to orchestrator 21. Alternatively, the user opens IDE 30 to perform a pull operation, then the microservice center 22 reports the function nodes of the microservice and the capability information of the microservice to IDE 30.
Continuing to refer to FIG. 3, at the IDE 30, an orchestration strategy may be generated in a visual manner, and the orchestration strategy may be sent to the orchestrator 21. Orchestrator 21 parses and executes the orchestration strategy.
FIG. 4 is a schematic diagram of device management and microservice management according to an embodiment of the present invention.
In Fig. 4, after a device (as shown in Fig. 4, it can be at least one of device 10, device 11... and device 1n) is powered on, the device carries a device profile 23 containing information about available capabilities of the device, in a device registration request. The device sends the device registration request to t device center 20. The device center 20 completes registration of the device, and sends information about available capabilities of the registered device to IDE 30. The IDE 30 sends the information of the registered device to the orchestrator 21, so that the orchestrator deploys a microservice matching the information on the registered device. Furthermore, in the IDE 30, a device list 31 containing all registered devices can be displayed.
For example, in the device list 31, the respective profiles of device 10, device 11... and device1n are displayed. For example, the profile of device11 comprising information 110 about available capabilities of the device11 (e.g., memory size, network bandwidth, attached hardware, device capabilities and CPU model, etc. ) ; deployed  microservices list111 in device 11; device state112 of device 11. For example, assuming function node A1 in microservice A and function node B2 in microservice B have been deployed in device 11, functional node A1 in microservice A and the functional node B2 in microservice B are presented in the deployed microservices list 111 of device 11.
In Figure 4, after a microservice (as shown in Figure 4, it can be at least one microservice of microservice 40, microservice 41... and microservice 4n) is deployed, the microservice generates a microservice profile that contains the functional nodes comprised in the microservice and the capability information that the microservice can provide. The microservice sends the microservice profile to microservice center 22. The microservice center 22 registers the microservice. The microservice center 22 sends the function nodes comprised in the microservice and the capability information that the microservice can provide to the IDE 30. In IDE30, a list of microservices 32 can be displayed.
For example, in the list of microservices 32, respective attributes of microservice 40, microservice 41... and microservice 4n are displayed. For example, attributes of microservice 40 comprising: the capability 401 of the microservice 40; function nodes 402 comprised in the microservice 40; request type 403 of each function node; request data 404 of each function node; and response data of each function node.
There are two arrangements methods to generate microservice orchestration rules. Corresponding to these two arrangements, two types of function node lists can be generated.
In the first type of function node list, a two-layer structure is presented in a hierarchical manner, in which the outer layer contains identifiers of microservices, and the inner layer contains identifiers of function nodes in the microservices. Based on the first type of function node list, the orchestration rules for microservices can be generated before microservices are deployed.
In the first type of function nodes list, identify of the device is not included. The first type of function node list can be displayed in the visual interface of the integrated development environment, and then based on selection operation in the visual interface, identifiers of the selected function nodes can be determined from the function node list, and then the selected function nodes can be identified based on the visual interface. The connection operation on identifiers of the selected function nodes determines execution logic of the selected function nodes. Then, based on setting operation in the visual interface, from the list of registered devices saved in the integrated development environment, determine identifier of the device where the microservice where the selected function nodes are located are expected to be deployed (for example, through the selection instruction issued by the user to select Device ID) to generate a microservice orchestration file. After the orchestrator receives the microservice orchestration file, it first deploys the microservices where the function nodes in the microservice  orchestration file are located to devices specified in the microservice orchestration file, and then executes the orchestration rules contained in the microservice orchestration file. For example, orchestrator can wait for the microservice registration before executing the orchestration rules.
Based on the mapping relationship between the deployed microservice list 111 and the microservice list 32 saved in the device list 31, the second type of function node list is displayed in a hierarchical structure: (1) outer layer, comprising identifiers of registered devices (2) middle layer, comprising identifiers of deployed microservices in registered devices; (3) inner layer, comprising identifiers of functional nodes comprised in deployed microservices.
In the second type of function node list, identify of the device is included. The second type of function node list can be displayed in the visual interface of the integrated development environment, and then based on selection operation in the visual interface, the identifiers of the selected function nodes can be determined from function node list, and then the selected function nodes can be identified based on the visual interface. The connection operation on identifiers of the selected function nodes determines execution logic of the selected function nodes. Then, the identifier of the device deploying the microservice where the selected function nodes are comprised is determined from the function node list based on the hierarchical structure, thereby generating a microservice orchestration file.
FIG. 5 is a schematic diagram of an example of a first process of orchestrating microservices according to an embodiment of the present invention.
As shown in FIG. 5, function node list 33 is of the first type as described above. The function node list 33 includes microservice Sa, microservice Sb, microservice Sc and microservice Sd. Microservice Sa, microservice Sb, microservice Sc, and microservice Sd are all located in the outer layer. Moreover, each microservice can further trigger its own inner layer to display the identities of the function nodes it contains. For example, the microservice Sd comprises a function node Sd1, a function node Sd2, and a function node Sd3.
One or more function nodes can be selected and dragged from the function node list 33 to the target area 90 in the visual interface 30 of the IDE. A connection operation is performed on one or more functional nodes in the target area 90 to determine the execution logic of the functional nodes.
Based on the identities of the selected function nodes, the execution logic, and the identifier of the device, a microservice orchestration file can be generated, in which the microservice where the selected function nodes are comprised is deployed in the device. Here, based on the setting operation in visual interface 30, for each selected function node from the registered device list, select the identifier of the device where the microservice where the selected function node is located is expected to be deployed. Microservice orchestration files can be in behavior  tree format or microservice rule chain format.
For example, the selected function nodes are Sb2, Sb1, Sd2, and Sd3, and the connection operation is Sb2 to Sb1, Sb1 to Sd2, and Sb1 to Sd3. Moreover, based on the setting operation in the visual interface, it is determined from the registered device list that the expected deployment device of the microservice Sb where Sb2 and Sb1 are located is device 1, and the expected deployment device of the microservice Sd where Sd2 and Sd3 are located is device 2. Thus, a microservice rule chain 61 can be generated. The orchestrator 21 parses the microservice rule chain 61 to generate an executable script, wherein the executable script is used to: first, deploy the microservice Sb to the device 1 and the microservice Sd to the device 2; then, enable the device 1 to execute the Sb2 Then execute Sb1; then, enable device 2 to execute Sd3 after executing Sd2.
Similarly, the microservice orchestration file can be generated in a behavior tree manner, for example, the behavior tree 60 is generated, which involves the settings of the control node 70, the control node 71, the control node 72, and the control node 73.
FIG. 6 is a schematic diagram of an example of a second process of orchestrating microservices according to an embodiment of the present invention.
As shown in FIG. 6, the function node list 34 is of the second type as described above. The function node list 34 comprises device D1, device D2, and device D3. Device D1, Device D2, and Device D3 are all in the outer layer. Moreover, each device can further trigger the middle layer to reveal the identifiers of the microservices it deploys. For example, the microservices deployed by device D2 comprise Sa, Sb, Sc, and Sd. Each microservice can further trigger the inner layer to display the identifiers of the function nodes contained in the microservice. For example, the microservice Sb comprises function node Sb1, function node Sb2, and so on.
One or more function nodes can be selected and dragged from the function node list 33 to the target area 90 in the visual interface 30 of the IDE. A connection operation is performed on one or more functional nodes in the target area 90 to determine the execution logic of the functional nodes
Based on the identifiers of the selected function node, the execution logic, and the identifier of the device, a microservice orchestration file is generated, in which the microservice where the selected function nodes are located is deployed in the device. Microservice orchestration files can be in behavior tree format or microservice rule chain format.
For example, the selected function nodes are Sb1, Sb2, Sd2, Sd3, and Sa1, and the connection operation is Sb1 to Sb2, Sb2 to Sd2, Sd2 to Sd3, and Sd3 to Sa1. Based on the function node list 34, it can be determined that Sb1, Sb2, Sd2, Sd3 all correspond to device D2, and Sa1 corresponds to device D3. Thus, a microservice rule chain 61 can be generated. The orchestrator 21 parses the microservice rule chain 61 to generate an executable  script, wherein the executable script is used to: firstly, enable the device D2 to execute Sb1, Sb2, Sd2 and Sd31 in sequence; secondly, enable the device D3 to execute Sa1.
Similarly, a microservice orchestration file can be generated in a behavior tree manner, such as generating a behavior tree 60, which involves the settings of the control node 70, the control node 71, and the control node 72.
FIG. 7 is a structural diagram of an apparatus for orchestrating microservices according to an embodiment of the present invention. As shown in FIG. 7, the apparatus 700 for orchestrating microservices comprises:
a displaying module 701 is configured to display a function node list in a visual interface of an integrated development environment, wherein the function node list comprising identifiers of a plurality of function nodes, and each function node in the plurality of function nodes is comprised in a respective microservice, the plurality of function nodes are adapted to provide respective functions;
a determining module 702 is configured to determine identifiers of selected function nodes from the function node list based on a selection operation in the visual interface;
a determining module 703 is configured to determine an execution logic of the selected function nodes based on a connection operation on the identifiers of the selected function nodes in the visual interface;
generating module 704 is configured to generate a microservice orchestration file based on the identifiers of the selected function nodes, the execution logic and identifier of a device, wherein the microservice comprising the selected function nodes is deployed in the device; and
an executing module 705 is configured to execute the microservice orchestration file.
In one embodiment, the generating module 704 is configured to determine identifier of the device from a list of registered devices based on a setting operation in the visual interface.
In one embodiment, the generating module 704 is configured to determine identifier of the device from the function node list.
In one embodiment, the generating module 704 is configured to: register a device based on a device registration request comprising information about available capabilities of the device; deploy a microservice that matches the information about available capabilities of the device on the registered device; register the deployed microservice based on a microservice registration request comprising capability information of the microservice; generate the function node list, based on identifier of the registered device, identifier of the deployed microservice in the registered device, and the identifiers of the function nodes comprised in the deployed microservice.
Embodiments of the present invention also provide an electronic device with processor-memory architecture. FIG. 8 is a block diagram of an electronic device according to an embodiment of the present invention.
As shown in FIG. 8, the electronic device 800 comprises a processor 801, a memory 802, and a computer  program stored in the memory 802 and executable on the processor 801. When the computer program is executed by the processor 801, any one of the above-mentioned methods for orchestrating microservices is implemented. The memory 802 may specifically be implemented as various storage media such as Electrically Erasable Programmable Read-Only Memory (EEPROM) , Flash memory (Flash memory) , Programmable Program Read-Only Memory (PROM) . The processor 801 may be implemented to include one or more central processing units or one or more field programmable gate arrays, wherein the field programmable gate arrays integrate one or more central processing unit cores. Specifically, the central processing unit or central processing unit core may be implemented as a CPU or MCU or DSP, and so on.
It should be noted that not all steps and modules in the above-mentioned processes and structural diagrams are necessary, and some steps or modules may be omitted according to actual needs. The execution logic of each step is not fixed and can be adjusted as needed. The division of each module is only to facilitate the description of the functional division used. In actual implementation, a module can be implemented by multiple modules, and the functions of multiple modules can also be implemented by the same module. These modules can be in the same device or in a different device.
The hardware modules in various embodiments may be implemented mechanically or electronically. For example, a hardware module may include specially designed permanent circuits or logic devices (e.g., special-purpose processors, such as FPGAs or ASICs) to perform specific operations. Hardware modules may also include programmable logic devices or circuits temporarily configured by software (e.g., including general-purpose processors or other programmable processors) for performing operations. As for the specific mechanical method, or a dedicated permanent circuit, or a temporarily configured circuit (e.g., configured by software) to realize the hardware module, it can be decided according to cost and time considerations.
The above descriptions are merely preferred embodiments of the present invention, and are not intended to limit the protection scope of the present invention. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included within the protection scope of the present invention.

Claims (16)

  1. A method for orchestrating microservices, comprising:
    displaying (101) a function node list in a visual interface of an integrated development environment, wherein the function node list comprises identifiers of a plurality of function nodes, and each function node in the plurality of function nodes is comprised in a respective microservice, the plurality of function nodes are adapted to provide respective functions;
    determining (102) identifiers of selected function nodes from the function node list based on a selection operation in the visual interface;
    determining (103) an execution logic of the selected function nodes based on a connection operation on the identifiers of the selected function nodes in the visual interface;
    generating (104) a microservice orchestration file based on the identifiers of the selected function nodes, the execution logic and identifier of a device, wherein the microservice comprising the selected function nodes is deployed in the device; and
    executing (105) the microservice orchestration file.
  2. The method according to claim 1, further comprising:
    determining identifier of the device from a list of registered devices based on a setting operation in the visual interface.
  3. The method according to claim 1, further comprising:
    determining identifier of the device from the function node list.
  4. The method according to claim 3, further comprising:
    registering a device based on a device registration request comprising information about available capabilities of the device;
    deploying a microservice that matches the information about available capabilities of the device on the registered device;
    registering the deployed microservice based on a microservice registration request comprising capability information of the microservice;
    generating the function node list, based on identifier of the registered device, identifier of the deployed microservice in the registered device, and the identifiers of the function nodes comprised in the deployed microservice.
  5. The method according to claim 4, wherein in the function node list displays a hierarchical structure comprising:
    an outer layer comprising identifier of the registered device;
    a middle layer comprising identifier of the deployed microservice in the registered device; and
    an inner layer comprising identifiers of the function nodes comprised in the deployed microservice.
  6. The method according to any one of claims 1-5, wherein the executing the microservice orchestration file comprises:
    parsing the microservice orchestration file to generate an executable script, wherein the executable script is configured to: enable the device that deploys the microservice where the selected function nodes are comprised to execute the selected function nodes, according to the execution logic;
    executing the executable script.
  7. The method according to any one of claims 1-5, wherein the function node comprises at least one of the following:
    application programming interface; remote procedure call interface; capability node.
  8. The method according to any one of claims 1-5, wherein the microservice orchestration file comprises at least one of the following:
    behavior tree; microservice rule chain.
  9. An apparatus for orchestrating microservices, comprising:
    a displaying module (701) , configured to display a function node list in a visual interface of an integrated development environment, wherein the function node list comprising identifiers of a plurality of function nodes, and each function node in the plurality of function nodes is comprised in a respective microservice, the plurality of function nodes are adapted to provide respective functions;
    a determining module (702) , configured to determine identifiers of selected function nodes from the function node list based on a selection operation in the visual interface;
    a determining module (703) , configured to determine an execution logic of the selected function nodes based on a connection operation on the identifiers of the selected function nodes in the visual interface;
    a generating module (704) , configured to generate a microservice orchestration file based on the identifiers of the selected function nodes, the execution logic and identifier of a device, wherein the microservice comprising the selected function nodes is deployed in the device; and
    an executing module (705) , configured to execute the microservice orchestration file.
  10. The apparatus according to claim 9, wherein the generating module (704) is configured to determine identifier of the device from a list of registered devices based on a setting operation in the visual interface.
  11. The apparatus according to claim 9, wherein the generating module (704) is configured to determine  identifier of the device from the function node list.
  12. The apparatus according to claim 11, wherein:
    the generating module (704) is configured to: register a device based on a device registration request comprising information about available capabilities of the device; deploy a microservice that matches the information about available capabilities of the device on the registered device; register the deployed microservice based on a microservice registration request comprising capability information of the microservice; generate the function node list, based on identifier of the registered device, identifier of the deployed microservice in the registered device, and the identifiers of the function nodes comprised in the deployed microservice.
  13. The apparatus according to claim 12, wherein in the function node list displays a hierarchical structure comprising:
    an outer layer comprising identifier of the registered device;
    a middle layer comprising identifier of the deployed microservice in the registered device; and
    an inner layer comprising identifiers of the function nodes comprised in the deployed microservice.
  14. An electronic device, comprising a processor (601) and a memory (602) , wherein an application program executable by the processor (601) is stored in the memory (602) for causing the processor (601) to execute a method for orchestrating microservices according to any one of claims 1 to 8.
  15. A computer-readable medium comprising computer-readable instructions stored thereon, wherein the computer-readable instructions for executing a method for orchestrating microservices according to any one of claims 1 to 8.
  16. A computer program product comprising a computer program, upon the computer program is executed by a processor for executing a method for orchestrating microservices according to any one of claims 1 to 8.
PCT/CN2022/121788 2022-09-27 2022-09-27 Method, apparatus, electronic device, and readable storage medium for orchestrating microservices WO2024065191A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2022/121788 WO2024065191A1 (en) 2022-09-27 2022-09-27 Method, apparatus, electronic device, and readable storage medium for orchestrating microservices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2022/121788 WO2024065191A1 (en) 2022-09-27 2022-09-27 Method, apparatus, electronic device, and readable storage medium for orchestrating microservices

Publications (1)

Publication Number Publication Date
WO2024065191A1 true WO2024065191A1 (en) 2024-04-04

Family

ID=90475224

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/121788 WO2024065191A1 (en) 2022-09-27 2022-09-27 Method, apparatus, electronic device, and readable storage medium for orchestrating microservices

Country Status (1)

Country Link
WO (1) WO2024065191A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109408064A (en) * 2018-09-10 2019-03-01 杭州安恒信息技术股份有限公司 A kind of visual micro services system automation dispositions method of layout and system
US20190306256A1 (en) * 2016-12-15 2019-10-03 Huawei Technologies Co., Ltd. Service orchestration method and apparatus, and server
US20200167133A1 (en) * 2018-11-26 2020-05-28 Sap Se Web service mashup orchestrator
CN111367534A (en) * 2020-03-19 2020-07-03 远光软件股份有限公司 Service arrangement method and system based on application environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190306256A1 (en) * 2016-12-15 2019-10-03 Huawei Technologies Co., Ltd. Service orchestration method and apparatus, and server
CN109408064A (en) * 2018-09-10 2019-03-01 杭州安恒信息技术股份有限公司 A kind of visual micro services system automation dispositions method of layout and system
US20200167133A1 (en) * 2018-11-26 2020-05-28 Sap Se Web service mashup orchestrator
CN111367534A (en) * 2020-03-19 2020-07-03 远光软件股份有限公司 Service arrangement method and system based on application environment

Similar Documents

Publication Publication Date Title
US10909028B1 (en) Multi-version regression tester for source code
CN111277460B (en) ZooKeeper containerization control method and device, storage medium and electronic equipment
US20170048115A1 (en) SDN Application Integration, Management and Control Method, System and Device
US11194686B2 (en) Data agnostic monitoring service
CN111176955A (en) Monitoring method, device and equipment of microservice and computer readable storage medium
CN112486629A (en) Micro-service state detection method and device, electronic equipment and storage medium
CN106453501A (en) Method and apparatus for modifying configuration information of service
CN113296758B (en) Front-end component library construction method and device and storage medium
US20210194979A1 (en) Server-driven notifications to mobile applications
US10719375B2 (en) Systems and method for event parsing
CN114510170B (en) Component display method and display device
CN116628791B (en) Lamp installation guiding method, device, equipment and medium
CN113672263B (en) Firmware parameter updating control method and device and electronic equipment
WO2024065191A1 (en) Method, apparatus, electronic device, and readable storage medium for orchestrating microservices
CN114201263A (en) Edge application management method based on cloud computing
US9575772B2 (en) Model-based user interface
CN114968032B (en) Policy arrangement processing method, device, equipment, system and storage medium
KR101513983B1 (en) SOP scenario executing system and providing method thereof
US11893383B2 (en) Configuration properties management for software
CN111381976B (en) Method and device for updating message prompt data, storage medium and computer equipment
US20200167133A1 (en) Web service mashup orchestrator
US11487411B2 (en) Context-driven group pill in a user interface
US20220091887A1 (en) System and method for finding and identifying computer nodes in a network
WO2020134573A1 (en) Management method and system of setting menu items of application, and smart television
CN111858234A (en) Task execution method, device, equipment and medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22959841

Country of ref document: EP

Kind code of ref document: A1