Skill server cluster management method and device, storage medium and electronic device

By periodically detecting and removing abnormal skill servers through the management server, the problem of device control failure caused by abnormal nodes in the device skill service was resolved, thus achieving the reliability and availability of the skill service.

CN122001883APending Publication Date: 2026-05-08QINGDAO HAIER TECH +2
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411584896.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-07
Publication Date
2026-05-08

AI Technical Summary

Technical Problem

In a distributed environment, when the device skill service is executed, it cannot identify abnormal nodes, causing skill requests to be forwarded to abnormal nodes, resulting in device control failure and affecting user experience and the availability of skill services.

Method used

The management server periodically sends online query requests to check the status of the skill server. If no feedback is received, it is determined to be abnormal and removed from the cluster. A load balancing algorithm is then configured to forward the requests to normal nodes.

Benefits of technology

This ensured the reliability and availability of skills services, prevented device control failures due to abnormal nodes, and improved the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122001883A_ABST
    Figure CN122001883A_ABST
Patent Text Reader

Abstract

The invention discloses a skill server cluster management method and device, a storage medium and an electronic device, and relates to the technical field of smart home, the skill server cluster management method is applied to a management server, and comprises the following steps: sending an online query request to each skill server in a skill server cluster at a set period; wherein the skill node information of the skill server is stored in the management server; if the online feedback of the skill server is still not received under the preset feedback receiving cut-off condition, determining that the skill server is abnormal; and setting the state identifier of the skill server to be abnormal so as to move the skill server out of the skill server cluster. According to the technical scheme provided by the embodiment of the invention, the abnormal skill server nodes can be eliminated in time in the skill service execution process, so that the reliability and availability of the skill service are ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of smart homes, and more specifically, to a method, apparatus, storage medium, and electronic device for managing a skills server cluster. Background Technology

[0002] Skills are advanced cloud-based functions of smart home devices. Basic device functions are generally capabilities programmed into the device's motherboard, while skills are advanced capabilities developed by various device manufacturers based on the device's basic functions. They typically take the form of a server cluster consisting of multiple skill servers deployed in a distributed manner in the cloud to provide skill services. The access address of the exposed service is provided to the user for invocation, ultimately completing the control of the relevant device.

[0003] Currently, when device skills are executed in a distributed environment, if a node malfunctions, the caller lacks the ability to detect the server failure. The skill service will still forward requests to the malfunctioning node. After the device skill service went live, some servers experienced failures, but skill traffic still went to these malfunctioning nodes. This caused device control failures when using skills, reducing the availability of the skill service and consequently impacting user experience. Summary of the Invention

[0004] This invention provides a method, apparatus, storage medium, and electronic device for managing a skill server cluster, which can detect abnormal servers and promptly remove abnormal skill service nodes from the skill service list to ensure the reliability and availability of skill services.

[0005] According to one aspect of the present invention, a skill server cluster management method is provided, applied to a management server, comprising:

[0006] Online query requests are sent to each skill server in the skill server cluster at set intervals; wherein, the skill node information of all registered skill servers is stored in the management server;

[0007] If no online feedback is received from the skill server before the preset feedback reception deadline, it is determined that the skill server is abnormal.

[0008] Set the status flag of the skill server to abnormal to remove the skill server from the skill server cluster.

[0009] In one implementation, before sending online query requests to each skill server in the skill server cluster at a set period, the method further includes:

[0010] Receive skill node information sent by the skill server; wherein, the skill node information includes the skill identifier, IP address, and port of the skill server;

[0011] The skill server is registered using the skill node information, and the status flag of the skill server is set to normal.

[0012] In one implementation, sending online query requests to each skill server in the skill server cluster at a set periodic interval includes:

[0013] Based on the IP address of the skill server, the online query request is sent to the skill server in the form of a heartbeat signal at a preset period.

[0014] In one implementation, determining that the skill server is abnormal if no online feedback is received from the skill server under preset conditions includes:

[0015] If the number of consecutive heartbeat checks fails reaches the preset number, it is determined that the skill server is abnormal.

[0016] In one implementation, after setting the status flag of the skill server to an abnormal state, the method further includes:

[0017] If online feedback from the skill server is received again, it is determined that the skill server has returned to normal.

[0018] Set the status flag of the skill server to normal to restore the skill server to the skill server cluster.

[0019] In one implementation, the skill server cluster management method further includes:

[0020] Configure the skill call interface exposed to the skill caller to receive skill server call requests from the skill caller.

[0021] In one implementation, the skill server cluster management method further includes:

[0022] Receive a skill service invocation request sent by a skill invoker through the skill invocation interface; wherein the skill service invocation request includes the skill identifier;

[0023] Based on the skill identifier, query the skill server in the skill server cluster list for the skill server that is in normal status;

[0024] The skill server providing the service in the skill server cluster is determined by a preset load balancing algorithm, and the skill service call request is forwarded to the skill server providing the service.

[0025] According to another aspect of the present invention, a skill server cluster management device is provided, applied to a management server, comprising:

[0026] The online query request sending module is used to send online query requests to each skill server in the skill server cluster at a set period; wherein, the management server stores the skill node information of all registered skill servers;

[0027] The skill server anomaly determination module is used to determine that the skill server is abnormal if no online feedback is received from the skill server under a preset feedback receiving cutoff condition.

[0028] The abnormal status flag setting module is used to set the status flag of the skill server to abnormal.

[0029] The skill server can be removed from the skill server cluster.

[0030] In one implementation, the skill server cluster management device further includes:

[0031] The skill node information receiving module is used to receive skill node information sent by the skill server before sending an online query request to each skill server in the skill server cluster at a set period; wherein, the skill node information includes the skill identifier, IP Internet Protocol address and port of the skill server;

[0032] The skill server registration module is used to register the skill server using the skill node information and set the status flag of the skill server to normal.

[0033] In one implementation, the online query request sending module is specifically used for:

[0034] Based on the IP address of the skill server, the online query request is sent to the skill server in the form of a heartbeat signal at a preset period.

[0035] In one implementation, the skill server exception determination module is specifically used for:

[0036] If the number of consecutive heartbeat checks fails reaches the preset number, it is determined that the skill server is abnormal.

[0037] In one implementation, the skill server cluster management device further includes:

[0038] The skill server recovery determination module is used to determine that the skill server has recovered to normal if online feedback from the skill server is received again after the status flag of the skill server has been set to abnormal.

[0039] The normal status flag setting module is used to set the status flag of the skill server to normal in order to restore the skill server to the skill server cluster.

[0040] In one implementation, the skill server cluster management device further includes:

[0041] The skill call interface configuration module is used to configure the skill call interface exposed to the skill caller, so as to receive the skill server call request from the skill caller.

[0042] In one implementation, the skill server cluster management device further includes:

[0043] A skill service call request receiving module is used to receive a skill service call request sent by a skill caller through the skill call interface; wherein, the skill service call request includes the skill identifier;

[0044] The normal skill server query module is used to query the skill server in the skill server cluster list based on the skill identifier;

[0045] The skill service call request forwarding module is used to determine the skill server providing the service in the skill server cluster through a preset load balancing algorithm, and forward the skill service call request to the skill server providing the service.

[0046] According to another aspect of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium comprising a stored program, wherein the program, when executed, performs the skill server cluster management method provided in any embodiment.

[0047] According to another aspect of the present invention, an electronic device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor is configured to execute, through the computer program, the skill server cluster management method provided in any embodiment.

[0048] The skill server cluster management method, apparatus, storage medium, and electronic device provided in this invention, through a management server set up between the skill caller and the skill server, uniformly completes the health check of all device skills. If an abnormal skill server is found, it is promptly removed from the skill service list, solving the problem in the prior art where the skill caller cannot identify abnormal skill servers, causing skill execution to fail, and ensuring the reliability and availability of skill services. Attached Figure Description

[0049] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.

[0050] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0051] Figure 1 This is a schematic diagram of the hardware environment for a smart device skill execution method according to an embodiment of this application;

[0052] Figure 2 This is a schematic diagram of the structure of the device skill call link in existing technology;

[0053] Figure 3 This is a schematic diagram of the structure of an equipment skill management system according to an embodiment of this application;

[0054] Figure 4 This is a flowchart of a skill server cluster management method according to an embodiment of this application;

[0055] Figure 5 This is a schematic diagram of the structure of a skill server cluster management device according to an embodiment of this application;

[0056] Figure 6 This is a schematic diagram of the structure of an electronic device according to an embodiment of this application. Detailed Implementation

[0057] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.

[0058] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0059] According to one aspect of the embodiments of this application, a method for executing smart device skills is provided. This method is widely applicable to whole-house intelligent digital control application scenarios such as smart homes, smart home ecosystems, and intelligence house ecosystems. Optionally, in this embodiment, the above-mentioned interaction method for smart home devices can be applied to, for example... Figure 1 The hardware environment shown consists of terminal device 102 and server 104. For example... Figure 1 As shown, server 104 is connected to terminal device 102 via a network and can be used to provide services (such as application services) to the terminal or clients installed on the terminal. A database can be set up on the server or independently of the server to provide data storage services for server 104. Cloud computing and / or edge computing services can be configured on the server or independently of the server to provide data processing services for server 104.

[0060] The aforementioned network may include, but is not limited to, at least one of the following: wired network, wireless network. The aforementioned wired network may include, but is not limited to, at least one of the following: wide area network, metropolitan area network, local area network. The aforementioned wireless network may include, but is not limited to, at least one of the following: Wi-Fi (Wireless Fidelity), Bluetooth. The terminal device 102 may not be limited to PC, mobile phone, tablet computer, smart air conditioner, smart range hood, smart refrigerator, smart oven, smart stove, smart washing machine, smart water heater, smart washing equipment, smart dishwasher, smart projector, smart TV, smart clothes rack, smart curtains, smart audio-visual equipment, smart socket, smart speaker, smart speaker box, smart fresh air equipment, smart kitchen and bathroom equipment, smart bathroom equipment, smart robot vacuum cleaner, smart window cleaning robot, smart mopping robot, smart air purifier, smart steam oven, smart microwave oven, smart water heater, smart air purifier, smart water dispenser, smart door lock, etc.

[0061] like Figure 2 The diagram illustrates the structure of a device skill invocation chain in the prior art. The caller invokes the skill service through a domain name provided by the skill provider. The skill provider's domain name is used for round-robin forwarding of skill server requests via the Domain Name System (DNS). DNS is an internet service; it is essentially a distributed database that maps domain names to IP addresses. The skill server processes the traffic forwarded by DNS. If the skill server node A malfunctions during this process, and DNS fails to detect it in time, it will still forward the request traffic to this node, causing the skill request to fail.

[0062] like Figure 3 As shown in the schematic diagram of the device skill management system provided in this embodiment of the invention, in a distributed environment, a skill center is introduced between the skill caller and the skill server. The skill center uniformly performs health checks on all device skills, and if abnormal nodes are found, they are promptly removed from the skill service list. The skill center can be deployed in a management server, which communicates with the skill platform where skill developers register their skills. The skill platform can synchronize the skills registered by skill developers to the management server. Skill developers register skills, skill URLs, and skill codes on the skill platform; the skill platform synchronizes the relationship between skill codes and skill URLs to the skill center. The skill center also provides a unified skill call interface. When a skill service goes online, the skill server registers the skill node information with the skill center. Based on the skill center, unified device skill health checks can be implemented.

[0063] According to one aspect of the embodiments of the present invention, such as Figure 4 The flowchart shown illustrates a method for managing a skill server cluster. This skill server cluster management is applied to a management server and includes:

[0064] Step 420: Send online query requests to each skill server in the skill server cluster at a set period.

[0065] The management server stores skill node information for all registered skill servers. A skill center is hosted on the management server, and after a skill service goes online, the management server stores the skill node information for the skill servers in the skill server cluster. The skill node information indicates the type of skill service provided by the skill server, the port used by the caller when accessing the service, and how to access the skill server (e.g., by providing the skill server's IP address). The management server can pre-set a preset time interval, allowing for continuous or on-demand online queries of skill servers. The duration of the preset period can be determined based on the number of times a skill is invoked per unit time and / or the historical data of skill invocations over a period of time. For example, if a skill is invoked more frequently between 16:00-20:00 and less frequently at other times, the preset period can be set shorter during this time period and longer during other times to determine the number of servers in the skill server cluster that can provide skill services. The invocation frequency can be inversely proportional to the preset time interval. If a skill is called without a clear pattern in frequency, but the average number of calls per day is high, you can continuously query the skill server online. Generally, there are multiple server nodes in the same server cluster, and you can use a round-robin approach to send online query requests to multiple server nodes.

[0066] Step 440: If no online feedback is received from the skill server before the preset feedback reception deadline, it is determined that the skill server is abnormal.

[0067] If the skill server is in a normal state, without any server malfunctions, and the network maintains a service link, then after the management server sends an online query request to the skill server, the skill server can receive the online query request and send online feedback to the management server, indicating that it is online. Online feedback typically includes the skill server's own identifier and online status, and may also include timestamp information. If, due to at least one of a server malfunction or a network malfunction, the skill server is unable to provide skill services, it will be unable to send corresponding online feedback to the online query request sent by the management server. If the management server does not receive online feedback from the skill server by the preset feedback reception deadline, it indicates that the skill server can no longer provide skill services normally, and will determine that the skill server is abnormal. The preset feedback reception deadline can be a predetermined time period after the management server last received online feedback; the predetermined time period can be determined according to a preset cycle or a fixed time period. Alternatively, the preset feedback reception deadline can be the number of consecutive online query requests sent by the management server after the last online feedback received. For example, if the preset time interval is 3 seconds, the management server can be configured to determine that the skill server is abnormal if it does not receive online feedback from the skill server within 10 seconds of receiving the most recent online feedback. Alternatively, the preset feedback reception cutoff condition can be that the management server determines that the skill server is abnormal if it fails to receive online feedback from the skill server after sending three consecutive online query requests following the most recent online feedback. When the skill server is abnormal, a skill server fault message can also be sent to the server administrator, prompting them to investigate the cause of the fault and perform repairs to restore the skill server's operation as soon as possible.

[0068] Step 460: Set the status flag of the skill server to abnormal in order to remove the skill server from the skill server cluster.

[0069] The management server stores skill node information for each skill server. This information can be tabulated and stored for easy management and retrieval of skill server status. The management server can also cache skill server status locally, for example, by setting a status flag for each skill server: "0" for a normal status and "1" for an abnormal status. By setting a skill server's status flag to abnormal, it can be removed from the skill server cluster. In other words, whenever a skill service is invoked, the management server only forwards the skill invocation request to skill servers with a normal status flag.

[0070] In one implementation, before sending online query requests to each skill server in the skill server cluster at a set period, the method further includes:

[0071] Receive skill node information sent by the skill server; wherein, the skill node information includes the skill identifier, IP address, and port of the skill server;

[0072] The skill server is registered using the skill node information, and the status flag of the skill server is set to normal.

[0073] When a skill service is launched, the servers deployed for that service are called skill servers. Each skill server provides its own skill node information to the management server, thus establishing a server cluster for that skill to provide the service to users. When a user requests a skill, they need to specify which skill they are requesting. This is done by assigning a skill identifier to each skill, allowing the user to send a request based on the identifier. The server's IP address allows the management server to locate and establish a connection, receiving skill request requests through a port to provide the corresponding skill service. When the management server registers the skill servers, receiving the skill node information from the skill servers indicates that the skill servers are online and ready to provide the service. Therefore, the status of the skill servers is set to normal during registration.

[0074] In one implementation, sending online query requests to each skill server in the skill server cluster at a set periodic interval includes:

[0075] Based on the IP address of the skill server, the online query request is sent to the skill server in the form of a heartbeat signal at a preset period.

[0076] The heartbeat signal involves sending a small data packet to the other party at regular intervals, and determining whether the communication link between the two parties has been broken based on the response from the other party. This method is commonly used and can save on server computing and network overhead. It allows the management server to determine the activity of the skill server without burdening the skill server.

[0077] In one implementation, determining that the skill server is abnormal if no online feedback is received from the skill server under preset conditions includes:

[0078] If the number of consecutive heartbeat checks fails reaches the preset number, it is determined that the skill server is abnormal.

[0079] This typically involves heartbeat checks with short intervals. Occasional heartbeat check failures don't necessarily indicate a broken link between the management server and the skill server. Therefore, a preset failure count is set, specifically the number of consecutive heartbeat check failures. Only when the preset failure count is reached after consecutive heartbeat check failures is the skill server considered abnormal. This avoids the situation where occasional network fluctuations immediately determine a skill server as abnormal upon a heartbeat check failure, causing frequent status flag changes for skill servers in the skill server cluster list.

[0080] In one implementation, after setting the status flag of the skill server to an abnormal state, the method further includes:

[0081] If online feedback from the skill server is received again, it is determined that the skill server has returned to normal.

[0082] Set the status flag of the skill server to normal to restore the skill server to the skill server cluster.

[0083] The management server and skill server can maintain online status checks. Even if no online feedback is received from the skill server, online query requests will continue to be sent to the skill server. Of course, if a skill server is determined to be abnormal, the frequency of sending online query requests can be reduced as the abnormal state lasts longer, but it is usually not lower than the preset online query frequency. After setting the status of the skill server to abnormal, if online feedback is received again from the skill server during the process of continuing to send online query requests, it can be determined that the skill server has returned to normal. Accordingly, the status of the skill server is set to normal to restore the skill server to the skill server cluster. After this operation, when a caller calls the skill service again, the call request can be forwarded to the restored skill server as appropriate, so that the skill server cluster has sufficient capacity to provide skill services.

[0084] In one implementation, the skill server cluster management method further includes:

[0085] Configure the skill call interface exposed to the skill caller to receive skill server call requests from the skill caller.

[0086] The system involves a management server that manages the skill servers, identifying which servers are functioning correctly and allowing them to provide skills services to users. Alternatively, the management server can provide a unified skill service call interface. This interface is exposed to users, allowing them to send service request requests. The management server can then forward these requests to the relevant skill servers within the cluster.

[0087] In one implementation, the skill server cluster management method further includes:

[0088] Receive a skill service invocation request sent by a skill invoker through the skill invocation interface; wherein the skill service invocation request includes the skill identifier;

[0089] Based on the skill identifier, query the skill server in the skill server cluster list for the skill server that is in normal status;

[0090] The skill server providing the service in the skill server cluster is determined by a preset load balancing algorithm, and the skill service call request is forwarded to the skill server providing the service.

[0091] To manage the skill servers, skill callers are required to include a skill identifier in their skill service request. This skill identifier is obtained by the skill developer when registering the skill on the skill platform. The skill caller can obtain this identifier from the skill platform or the pipeline server. The skill service request may also include the caller's IP address and port. This allows the management server to determine which skill service the caller is currently requesting using the skill identifier. After determining the requested skill service, the management server locates the skill server cluster list based on the skill identifier and searches for a skill server with a "normal" status (typically marked as "normal"). Then, a skill server providing the service is selected, and a skill service request is sent to it using its registered IP address. The management server then forwards the request to one of the skill servers using a load balancing algorithm.

[0092] According to another aspect of the embodiments of the present invention, such as Figure 5 The diagram shows a structural schematic of a skill server cluster management device. This skill server cluster management device is used to manage servers and includes:

[0093] The online query request sending module 502 is used to send online query requests to each skill server in the skill server cluster at a set period; wherein, the management server stores the skill node information of all registered skill servers;

[0094] The skill server anomaly determination module 504 is used to determine that the skill server is abnormal if no online feedback is received from the skill server under the preset feedback receiving cutoff condition.

[0095] The abnormal status identifier setting module 506 is used to set the status identifier of the skill server to abnormal so as to remove the skill server from the skill server cluster.

[0096] In one implementation, the skill server cluster management device further includes:

[0097] The skill node information receiving module is used to receive skill node information sent by the skill server before sending an online query request to each skill server in the skill server cluster at a set period; wherein, the skill node information includes the skill identifier, IP Internet Protocol address and port of the skill server;

[0098] The skill server registration module is used to register the skill server using the skill node information and set the status flag of the skill server to normal.

[0099] In one implementation, the online query request sending module 502 is specifically used for:

[0100] Based on the IP address of the skill server, the online query request is sent to the skill server in the form of a heartbeat signal at a preset period.

[0101] In one implementation, the skill server anomaly determination module 504 is specifically used for:

[0102] If the number of consecutive heartbeat checks fails reaches the preset number, it is determined that the skill server is abnormal.

[0103] In one implementation, the skill server cluster management device further includes:

[0104] The skill server recovery determination module is used to determine that the skill server has recovered to normal if online feedback from the skill server is received again after the status flag of the skill server has been set to abnormal.

[0105] The normal status flag setting module is used to set the status flag of the skill server to normal in order to restore the skill server to the skill server cluster.

[0106] In one implementation, the skill server cluster management device further includes:

[0107] The skill call interface configuration module is used to configure the skill call interface exposed to the skill caller, so as to receive the skill server call request from the skill caller.

[0108] In one implementation, the skill server cluster management device further includes:

[0109] A skill service call request receiving module is used to receive a skill service call request sent by a skill caller through the skill call interface; wherein, the skill service call request includes the skill identifier;

[0110] The normal skill server query module is used to query the skill server in the skill server cluster list based on the skill identifier;

[0111] The skill service call request forwarding module is used to determine the skill server providing the service in the skill server cluster through a preset load balancing algorithm, and forward the skill service call request to the skill server providing the service.

[0112] According to another aspect of the embodiments of the present invention, such as Figure 6 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. Figure 6 As shown, the electronic device includes a processor 610, a memory 620, an input device 630, and an output device 640. The electronic device may have one or more processors 610. Figure 6 Taking a processor 610 as an example, the number of memories 620 in this electronic device can be one or more. Figure 6 Taking a memory 620 as an example, the processor 610, memory 620, input device 630, and output device 640 of this electronic device can be connected via a bus or other means. Figure 6 Taking a bus connection as an example, the electronic device can be a computer or a server. This embodiment of the invention uses the electronic device as a server for detailed explanation; the server can be a standalone server or a cluster server.

[0113] Memory 620, as a computer-readable storage medium, can be used to store software programs, computer-executable programs, and modules, such as the program instructions / modules of the skill server cluster management method described in any embodiment of the present invention. Memory 620 may primarily include a program storage area and a data storage area, wherein the program storage area may store the operating system and at least one application program required for a function; the data storage area may store data created according to the use of the device, etc. In addition, memory 620 may include high-speed random access memory and may also include non-volatile memory, such as at least one disk storage device, flash memory device, or other non-volatile solid-state storage device. In some instances, memory 620 may further include memory remotely located relative to processor 610, and these remote memories can be connected to the device via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.

[0114] Input device 630 can be used to receive input digital or character information, and to generate key signal inputs related to viewer user settings and function control of the electronic device. It can also be a camera for acquiring images and a sound pickup device for acquiring audio data. Output device 640 may include audio devices such as speakers. It should be noted that the specific composition of input device 630 and output device 640 can be set according to actual conditions.

[0115] The processor 610 executes various functional applications and data processing of the device by running software programs, instructions, and modules stored in the memory 620.

[0116] According to another aspect of the present invention, the present invention also provides a computer-readable storage medium comprising a stored program, wherein the program, when executed, performs the following skill server cluster management method:

[0117] Online query requests are sent to the skill servers in the skill server cluster at preset time intervals; wherein, the skill node information of the skill servers is stored in the management server;

[0118] If no online feedback is received from the skill server under preset conditions, it is determined that the skill server is abnormal;

[0119] Set the status flag of the skill server to abnormal in order to remove the skill server from the skill server cluster.

[0120] Of course, the computer-readable storage medium provided in the embodiments of the present invention has computer-executable instructions that are not limited to the operation of the intelligent electrical device control method as described above, but can also execute related operations in the skill server cluster management method provided in any embodiment of the present invention, and has corresponding functions and beneficial effects.

[0121] Based on the above description of the implementation methods, those skilled in the art can clearly understand that this disclosure can be implemented using software and necessary general-purpose hardware, and of course, it can also be implemented using hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as a computer floppy disk, read-only memory (ROM), random access memory (RAM), flash memory, hard disk, or optical disk, etc., including several instructions to cause a computer device (which may be a robot, personal computer, server, or network device, etc.) to execute the skill server cluster management method described in any embodiment of this application.

[0122] The above description is only a preferred embodiment of this application. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of this application, and these improvements and modifications should also be considered within the scope of protection of this application.

Claims

1. A method for managing a skill server cluster, characterized in that, Used for management servers, including: Online query requests are sent to each skill server in the skill server cluster at a set period; wherein, the skill node information of all registered skill servers is stored in the management server; If no online feedback is received from the skill server before the preset feedback reception deadline, it is determined that the skill server is abnormal. Set the status flag of the skill server to abnormal in order to remove the skill server from the skill server cluster.

2. The skill server cluster management method according to claim 1, characterized in that, Before sending online query requests to each skill server in the skill server cluster at a set period, the method further includes: Receive skill node information sent by the skill server; wherein, the skill node information includes the skill identifier, IP address, and port of the skill server; The skill server is registered using the skill node information, and the status flag of the skill server is set to normal.

3. The skill server cluster management method according to claim 2, characterized in that, The step of sending online query requests to each skill server in the skill server cluster at a set periodic interval includes: Based on the IP address of the skill server, the online query request is sent to the skill server in the form of a heartbeat signal at a preset period.

4. The skill server cluster management method according to claim 3, characterized in that, If no online feedback is received from the skill server under preset conditions, determining that the skill server is abnormal includes: If the number of consecutive heartbeat checks fails reaches the preset number, it is determined that the skill server is abnormal.

5. The skill server cluster management method according to claim 1, characterized in that, After setting the status flag of the skill server to abnormal, the method further includes: If online feedback from the skill server is received again, it is determined that the skill server has returned to normal; the status flag of the skill server is set to normal, so as to restore the skill server to the skill server cluster.

6. The skill server cluster management method according to claim 2, characterized in that, Also includes: Configure the skill call interface exposed to the skill caller to receive skill server call requests from the skill caller.

7. The skill server cluster management method according to claim 6, characterized in that, Also includes: Receive a skill service invocation request sent by a skill invoker through the skill invocation interface; wherein the skill service invocation request includes the skill identifier; Based on the skill identifier, query the skill server in the skill server cluster list for the skill server that is in normal status; The skill server providing the service in the skill server cluster is determined by a preset load balancing algorithm, and the skill service call request is forwarded to the skill server providing the service.

8. A skill server cluster management device, characterized in that, Used for management servers, including: The online query request sending module is used to send online query requests to each skill server in the skill server cluster at a set period; wherein, the management server stores the skill node information of all registered skill servers; The skill server anomaly determination module is used to determine that the skill server is abnormal if no online feedback is received from the skill server under a preset feedback reception cutoff condition. An abnormal status flag setting module is used to set the status flag of the skill server to abnormal, so as to remove the skill server from the skill server cluster.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored program, wherein the program, when executed, performs the skill server cluster management method according to any one of claims 1 to 7.

10. An electronic device comprising a memory and a processor, characterized in that, The memory stores a computer program, and the processor is configured to execute the skill server cluster management method according to any one of claims 1 to 7 through the computer program.