CN108810042A - 一种任务处理方法、相关设备及系统 - Google Patents

一种任务处理方法、相关设备及系统 Download PDF

Info

Publication number
CN108810042A
CN108810042A CN201710294907.7A CN201710294907A CN108810042A CN 108810042 A CN108810042 A CN 108810042A CN 201710294907 A CN201710294907 A CN 201710294907A CN 108810042 A CN108810042 A CN 108810042A
Authority
CN
China
Prior art keywords
task
master node
iot
main website
message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201710294907.7A
Other languages
English (en)
Other versions
CN108810042B (zh
Inventor
谷旷如
冯伟权
杨培
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201710294907.7A priority Critical patent/CN108810042B/zh
Publication of CN108810042A publication Critical patent/CN108810042A/zh
Application granted granted Critical
Publication of CN108810042B publication Critical patent/CN108810042B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements

Abstract

本发明实施例公开了一种任务处理方法、相关设备及系统,所述方法包括:主站集群向IoT设备发送任务消息,该任务消息中包括所述IoT设备的标识和待执行任务;接收响应消息,所述响应消息中包括所述IoT设备完成所述待执行任务的数据结果,以及分配所述待执行任务的第一主站节点的标识;若确定接收到所述响应消息的主站节点的标识与所述第一主站节点的标识不同,则所述主站集群指示接收到所述响应消息的主站节点将所述响应消息转发至所述第一主站节点;这样可保证任务消息和响应消息都由同一主站节点处理,从而保证相关任务的可靠执行。

Description

一种任务处理方法、相关设备及系统
技术领域
本发明涉及物联网技术领域,尤其涉及一种任务处理方法、相关设备及系统。
背景技术
物联网(Internet of Things,IoT)是让各种可行使独立功能的物体,例如摄像头、传感器等实现互联互通的网络。通过物联网可以用中心设备(也称为主站)对机器、设备等进行集中管理、控制,以及收集数据等。目前物联网被广泛应用在运输和物流领域、健康医疗领域、智能环境(家庭、办公、工厂)领域、个人和社会领域等。
物联网可包括多个主站节点和多个IoT设备,所述多个主站节点构成主站集群或物联网主站平台。物联网中的主站节点每天都可定时或按照一定的触发条件(如用户触发请求等)向IoT设备下发大量的任务,据统计平均每天大约5000万条任务左右。在任务执行期间,如果主站节点和IoT设备之间通信中断,那么IoT设备无法将任务执行结果返回至物联网中的主站节点。因此主站节点无法获知该任务是否执行处理,或者无法获取到任务执行结果,也就无法依据任务执行结果进行相关的业务处理等等。一种解决方案中,在物联网中主站节点和IoT设备之间的通信中断后,IoT设备会重新注册并登记到物联网中新的主站节点下,并将任务执行结果返回给物联网中重新注册的新节点。但是,可能会出现重新注册的新节点不是原来下发该任务的来源节点,导致重新注册的新节点即使收到任务执行结果,也无法处理该任务执行结果,造成任务中断等情况,降低了任务处理的可靠性。
发明内容
本申请公开了一种任务处理方法、相关设备及系统,能够解决现有技术中基于任务消息返回的响应消息无法回到下发任务的来源节点,造成响应消息无法处理、任务中断等问题,提升了任务处理的可靠性。
第一方面,提供了一种任务处理方法,用于部署有至少两个主站节点的物联网IoT中,所述至少两个主站节点组成主站集群,所述方法包括:
所述主站集群向IoT设备发送任务消息,所述任务消息中包括待执行任务;
所述主站集群接收响应消息,所述响应消息中包括所述IoT设备完成所述待执行任务的数据结果,以及分配所述待执行任务的第一主站节点(即来源节点)的标识;若所述IoT设备直接接入所述物联网,则所述响应消息是所述IoT设备直接返回的,若所述IoT设备通过IoT网关接入所述物联网,则所述响应消息是所述IoT网关返回的;
若所述主站集群确定接收到所述响应消息的主站节点的标识与所述第一主站节点的标识不同,所述主站集群指示接收到所述响应消息的主站节点将所述响应消息转发至所述第一主站节点。
一种可能的实现中,所述IoT设备通过注册已获知注册到的主站节点,即分配所述待执行任务的第一主站节点的标识,则所述任务消息中可不包括所述第一主站节点的标识。
另一种可能的实现中,在所述任务消息中还包括所述第一主站节点的标识。所述任务消息的数量可以是一个或多个。
通过上述任务处理方法,能够保证任务消息和响应消息都由主站集群中的同一主站节点(即第一主站节点)处理,从而保证任务处理的可靠性。
结合第一方面,在第一方面的第一种可能的实现方式中,所述主站集群向IoT设备发送任务消息之前,还包括:将所述IoT设备注册到所述第一主站节点下;将所述第一主站节点的标识通知给所述IoT设备。
具体的,IoT设备可通过负载均衡装置向主站集群发送注册请求,负载均衡装置可利用负载均衡策略将所述注册请求均衡负载到所述主站集群的相关节点下(如第一主站节点),以将所述IoT设备均衡注册到所述主站集群的相关节点下。所述负载均衡策略有多种,例如根据注册设备的数量,或者根据主站节点的负载情况等等。
若IoT设备通过IoT网关和负载均衡装置发送的注册请求,以将IoT设备注册到主站集群的相关节点下,即注册到分配所述待执行任务的第一主站节点。相应地,第一主站节点可将所述IoT设备、或所述IoT设备和所述IoT设备对应接入的IoT网关注册到第一主站节点。所述第一主站节点在注册所述IoT设备后,可选地还可注册所述IoT网关,则第一主站节点向所述IoT设备或所述IoT网关发送注册响应消息,所述注册响应消息包括所述第一主站节点的标识,以将所述第一主站节点的标识通知给所述IoT设备或IoT网关。
结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述主站集群还可将所述IoT设备及所述IoT设备对应接入的IoT网关注册到所述第一主站节点。
在所述IoT设备或IoT网关成功注册到所述第一主站节点后,形成了所述IoT设备(或IoT网关)与所述第一主站节点之间进行相互通信时的第一链路。可选地,所述第一主站节点可通过所述第一链路向所述IoT设备(或IoT网关)发送任务消息。
结合第一方面或第一方面的第一种或第二种可能的实现方式中,在第一方面的第三种可能的实现方式中,所述主站集群向IoT设备发送任务消息,包括:通过所述第一主站节点向IoT设备发送任务消息;或者,通过调度策略从所述主站集群中选择的主站节点向IoT设备发送任务消息。
具体的,主站集群中的第一主站节点可直接向所述IoT设备发送所述任务消息;或者,第一主站节点还可利用调度策略从主站集群中选取用于下发所述任务消息的第三主站节点,然后通过该第三主站节点向所述IoT设备发送任务消息。所述调度策略可有多种,例如根据节点负载,或者根据任务消息的数量等等。所述任务消息的数量可以是一个或多个。第一主站节点或第三主站节点还可采用异步交互方式将任务消息发送给所述IoT设备。
通过执行上述步骤,第一主站节点可间接通过第三主站节点或直接向所述IoT设备发送任务消息,以便后续基于所述任务消息进行相关任务处理。
结合第一方面或第一方面的第一种至第三种任一种可能的实现方式中,在第一方面的第四种可能的实现方式中,所述主站集群向IoT设备发送任务消息,包括:根据调度策略将任务消息发送给IoT设备。
结合第一方面或第一方面的第一种至第四种任一种可能的实现方式中,在第一方面的第五种可能的实现方式中,所述调度策略包括以下中的至少一项:节点负载、任务消息量和任务消息的消息属性,所述消息属性包括以下中的至少一项:重要程度、紧急程度、老化时间。
在一种可能的实现方式中,主站集群中第一主站节点可根据当前第一主站节点的负载来确定针对所述任务消息的发送频率,所述第一主站节点根据确定的所述任务消息的发送频率,将所述任务消息发送给所述IoT设备。
在又一种可能的实现方式中,所述任务消息存在多个,主站集群中第一主站节点可根据所述多个任务消息的消息顺序确定所述多个任务消息的优先级,所述第一主站节点根据所述多个任务消息的优先级,将所述任务消息发送给所述IoT设备。例如,可将一些重要程度较高、或紧急程度较高的任务消息的优先级配置为第一优先级,将一些重要程度较低、或紧急程度较低的任务消息的优先级配置为第二优先级,其中第一优先级高于第二优先级。相应地,第一主站节点可以优先向所述IoT设备发送具备第一优先级的任务消息,后发送具备第二优先级的任务消息。
结合第一方面或第一方面的第一至第五种任一种可能的实现方式中,在第一方面的第六种可能的实现方式中,所述将所述响应消息转发至所述第一主站节点,包括:根据调度策略将所述响应消息转发至所述第一主站节点。具体可参见前述相关实施例的描述,这里不再赘述。
结合第一方面或第一方面的第一至第六种任一种可能的实现方式中,在第一方面的第七种可能的实现方式中,所述方法还包括:在接收到所述IoT设备返回的响应消息的时间超过预设时间的情况下,丢弃所述响应消息。
具体的,若主站集群中第二主站节点接收到所述响应消息,且该响应消息中包括有时间标签,该时间标签用于指示所述IoT设备向所述第二主站节点发送所述响应消息的开始时间。此时所述第二主站节点可根据该时间标签确定到所述响应消息的传输时间,接着判断所述响应消息的传输时间是否超过对应的预设时间(也称为老化时间),若是,则第二主站节点可直接丢弃所述响应消息,以避免第二主站节点转发一些不可用(超过老化时间)的响应消息,浪费诸如带宽、内存等资源。
可选的,所述预设时间可为用户在所述IoT设备侧自主设置的,通常携带在所述响应消息中。所述预设时间也可为用户在所述主站集群侧自主设置的,通常可自动从主站集群或管理服务器中获得。
通过执行上述步骤,第二主站节点可将一些超过预设时间的响应消息进行丢弃,避免转发一些不可用、超过老化时间的响应消息,浪费系统资源。
第二方面,提供了又一种任务处理方法,用于部署有至少两个主站节点的物联网IoT中,所述至少两个主站节点组成主站集群,所述方法包括:
IoT网关接收所述主站集群发送的任务消息,所述任务消息中包括待执行任务及IoT设备的标识,所述IoT设备通过所述IoT网关接入所述物联网;
执行所述待执行任务,获得所述IoT设备完成所述待执行任务的数据结果;
向所述主站集群发送响应消息,所述响应消息包括所述IoT设备完成所述待执行任务的数据结果及分配所述待执行任务的第一主站节点的标识。
具体的,若所述IoT网关或IoT设备通过注册已获知分配所述待执行任务的第一主站节点的标识,则所述任务消息可不包括所述第一主站节点的标识。若所述IoT网关和所述IoT设备并不知道所述第一主站节点的标识,则所述任务消息还可包括所述第一主站节点的标识。所述任务消息的数量可以是一个或多个。通过上述任务处理方法,能够保证任务消息和响应消息都由主站集群中的同一主站节点处理,从而保证任务处理的可靠性。
结合第二方面,在第二方面的第一种可能的实现方式中,所述IoT网关接收所述主站集群发送的任务消息之前,还包括:所述IoT网关向所述主站集群注册所述IoT设备;所述IoT网关接收所述主站集群通知的所述第一主站节点的标识,所述第一主站节点的标识用于指示所述IoT设备被成功注册到所述第一主站节点。
具体的,参见前述实施例可知,IoT网关或IoT设备通过负载均衡装置向主站集群发送注册请求,以将所述IoT设备或IoT网关注册到所述主站集群中的相关节点下。同样,若主站集群将所述IoT设备和IoT网关均衡注册到第一主站节点后,也形成了所述IoT设备(或IoT网关)与所述第一主站节点之间进行相互通信时的第一链路。可选地,所述第一主站节点可通过第一链路向所述IoT设备和/或IoT网关发送注册响应消息,所述注册响应消息可包括第一主站节点的标识,以将所述第一主站节点的标识通知给所述IoT设备和/或IoT网关。
结合第二方面,在第二方面的第二种可能的实现方式中,所述任务消息中还包括所述第一主站节点的标识,所述第一主站节点的标识用于所述IoT网关返回所述响应消息时携带在所述响应消息中,以便所述主站集群将所述响应消息返回给所述第一主站节点。
具体的,在所述IoT设备和所述IoT网关未被注册到所述第一主站节点,即所述IoT设备和所述IoT网关中均并未记录有所述第一主站节点的标识时,所述第一主站节点的标识可携带在所述任务消息中,以便携带在所述响应消息中,将所述响应消息返回到所述第一主站节点。
结合第一方面或第二方面,在一种可能的实现方式中,所述待执行任务用于对所述IoT设备进行设备管理,所述设备管理包括以下中的至少一项:状态监测、生命周期管理、数据采集、设备控制、设备诊断、设备升级、设备位置管理。
结合第一方面或第二方面,在又一种可能的实现方式中,所述IoT设备完成所述待执行任务的数据结果可包括以下中的至少一项:所述IoT设备采集的数据、所述IoT设备的运行数据以及所述IoT设备的配置数据。
第三方面,提供了一种主站集群,包括用于执行上述第一方面的方法的功能单元。
第四方面,提供了一种IoT网关,包括用于执行上述第二方面的方法的功能单元。
第五方面,提供了一种主站集群,包括存储器、通信接口及与所述存储器和通信接口耦合的处理器;所述存储器用于存储指令,所述处理器用于执行所述指令,所述通信接口用于在所述处理器的控制下与其他设备进行通信;其中,所述处理器执行所述指令时执行上述第一方面描述的方法。
第六方面,提供了一种IoT网关,包括存储器、通信接口及与所述存储器和通信接口耦合的处理器;所述存储器用于存储指令,所述处理器用于执行所述指令,所述通信接口用于在所述处理器的控制下与其他设备进行通信;其中,所述处理器执行所述指令时执行上述第二方面描述的方法。
第七方面,提供了一种任务处理系统,包括IoT设备和主站集群,其中,所述IoT设备用于,接收所述主站集群发送的任务消息,所述任务消息中包括待执行任务;执行所述待执行任务,获得所述IoT设备完成所述待执行任务的数据结果;向所述主站集群发送响应消息,所述响应消息中包括所述IoT设备完成所述待执行任务的数据结果,以及分配所述待执行任务的第一主站节点的标识;所述主站集群可以是上述第三方面或第五方面内容所述的主站集群。
结合第七方面,在第七方面的第一种可能的实现方式中,所述任务处理系统还包括IoT网关,所述IoT网关可以是上述第四方面或第六方面内容所述的IoT网关。
第八发明,提供了一种计算机可读存储介质,所述计算机可读存储介质存储了用于任务处理的程序代码。所述程序代码包括用于执行上述第一方面描述的方法的指令。
第九发明,提供了一种计算机可读存储介质,所述计算机可读存储介质存储了用于任务处理的程序代码。所述程序代码包括用于执行上述第二方面描述的方法的指令。
通过上述方案,能够解决现有技术中基于任务消息返回的响应消息无法发送至下发任务的来源节点(即第一主站节点),造成响应消息无法处理、任务中断等问题,提升了任务处理的可靠性。
附图说明
图1是本发明实施例提供的一种任务处理系统的结构示意图;
图2是本发明实施例提供的一种IoT设备注册方法的流程示意图;
图3是本发明实施例提供的一种任务处理方法的流程示意图;
图4是本发明实施例提供的又一种任务处理方法的流程示意图;
图5A是本发明实施例提供的一种IoT网关的结构示意图;
图5B是本发明实施例提供的又一种IoT网关的结构示意图;
图6A是本发明实施例提供的一种主站集群的结构示意图;
图6B是本发明实施例提供的又一种主站集群的结构示意图。
具体实施方式
下面将结合本发明的附图,对本发明实施例中的技术方案进行详细描述。
请结合图1,图1是本发明实施例提供的一种任务处理系统的结构示意图。该系统100中包括多个主站节点(至少两个主站节点)和IoT设备,所述多个主站节点组成主站集群。图示包括3个主站节点,分别为主站节点1(Node1)、主站节点2(Node2)和主站节点3(Node3)。图1也可以是物联网的网络框架示意图。
IoT设备可直接与主站集群中的任一个或多个主站节点进行相互通信。在IoT设备的设备能力比较弱,或IoT设备数量较多(超过预设数量)的情况下,所述系统100还可包括一个或多个IoT网关。一个IoT网关下面可以接入一个或多个IoT设备。此时IoT设备可通过IoT网关与主站集群中的任一个或多个主站节点进行相互通信。
在一些实施例中,所述设备能力较弱的IoT设备可以是指不支持Wi-Fi(WirelessFidelity,中文:无线保真)、3G、GPRS、LTE、ZigBee等通信方式的设备,也可是指功能单一或性能较低的设备,例如存储空间较小,CPU处理速度较慢或不支持超级电容等。
在一些实施例中,所述系统100还可包括负载均衡(load balance)装置。IoT设备或IoT网关可通过所述负载均衡装置与所述主站集群中的任一个或多个主站节点进行相互通信。所述负载均衡装置可以以软件形式被部署在主站集群中,也可以设备形式单独部署在主站集群和IoT网关之间,充当负载均衡设备,实现负载均衡的功能。
在一些实施例中,如图1所示,所述主站节点可包括采集任务模块(collecttask)、任务调度模块(dispatcher,也可称为分发器)和南向接口。其中,任务调度模块Dispatcher主要用于任务调度,将节点任务调度给IoT网关或IoT设备。采集任务模块主要用于按照一定条件生成任务,所述一定条件可包括多种,例如定时条件、用户触发条件等。例如采集任务模块每天可定时生成数据采集任务、或在接收到用户针对某个IoT设备的操作指令(如智能空调的温度调节指令)时,可自动生成对应的设备控制任务等。
基于上述图1所示的系统100,下面介绍本发明实施例涉及的IoT设备或IoT网关注册的流程示意图,请参见如图2所示,是本发明实施例提供的一种IoT设备注册方法的流程示意图,所述方法包括如下实施步骤。
S101、IoT设备向主站集群发送注册请求,所述注册请求用于请求将所述IoT设备注册到所述主站集群中。
在一种具体实现方式中,IoT设备(如图1中的IoT设备1)通过负载均衡装置直接向主站集群发送注册请求,以将所述IoT设备注册到所述主站集群中的相关节点下。具体的,IoT设备向负载均衡装置发送注册请求。相应地,所述负载均衡装置接收所述注册请求,并利用负载均衡策略将所述注册请求均衡负载到所述主站集群的第一主站节点下,以将所述IoT设备注册到所述第一主站节点下。
在又一种具体实现方式中,IoT设备(如图1中的IoT设备2)通过IoT网关将注册请求发送给主站集群。具体的,IoT设备可通过IoT网关将注册请求发送给负载均衡装置。相应地,负载均衡装置接收到所述注册请求后,同样可利用负载均衡策略将所述注册请求均衡负载到所述主站集群中的第一主站节点下。
S102、相应地,所述主站集群接收所述注册请求,并将所述IoT设备注册到所述主站集群。
具体的,在所述主站集群中的第一主站节点接收到所述IoT设备或所述IoT网关发送的注册请求后,可将所述IoT设备,或IoT设备及其接入的IoT网关注册到所述第一主站节点下。
S103、所述主站集群向所述IoT设备发送注册响应消息,以通知所述IoT设备注册成功。
在所述第一主站节点成功注册所述IoT设备或所述IoT网关后,可向所述IoT设备发送对应的注册响应消息,以通知所述IoT设备被成功注册到所述主站集群中。
在一些实施例中,所述注册响应消息可包括所述第一主站节点的标识,以将所述第一主站节点的标识通知给所述IoT设备或IoT网关。相应地,所述IoT设备或IoT网关在接收到所述注册响应消息后,可通过消息解析获知所述第一主站节点的标识,并将所述第一主站节点的标识对应记录/存储到所述IoT设备或IoT网关。IoT设备中还可以记录所述IoT设备对应接入的IoT网关的标识。IoT网关可以记录IoT设备和第一主站节点的标识的对应关系。
可以理解IoT设备注册到的主站节点就是后续负责管理该IoT设备和给该IoT设备下发任务的主站节点。
在一些实施例中,所述负载均衡策略有多种,例如根据注册设备数量,或者根据主站节点的负载情况等等,本发明实施例对此不做限定。
在IoT设备成功注册到所述主站集群的相关主站节点(例如第一主站节点)后,该主站节点中可维护该IoT设备的标识,该IoT设备接入的IoT网关的标识(该IoT设备通过IoT网关接入的情况下)。主站节点可以维护一个设备注册列表,该设备注册列表可包括有在该主站节点下成功注册的IoT设备的标识、IoT设备接入的IoT网关的标识等信息。换言之,主站节点知悉其下注册成功的所有IoT设备、IoT设备对应接入的IoT网关等信息。
在一些实施例中,在所述IoT设备成功注册到所述主站集群中的相关主站节点(如第一主站节点)后,其也形成了所述IoT设备与所述主站集群中第一主站节点之间进行相互通信时所使用的通信链路,这里称为第一链路。如图1所示,若IoT设备1成功注册到主站节点Node2下,此时也形成了它们之间的第一链路为:IoT设备1->负载均衡装置->Node2。又如,若IoT设备2成功注册到主站节点Node2下,此时也建立了它们之间的第一链路为:IoT设备2->IoT网关2->负载均衡装置->Node2。
在步骤S103中,所述主站集群的第一主站节点可按照所述第一链路原路返回向所述IoT设备或IoT网关发送注册响应消息,以通知注册成功。
基于前述实施例,请参见图3,是本发明实施例提供的一种任务处理方法的流程示意图,用于部署有至少两个主站节点的物联网IoT中,所述至少两个主站节点组成主站集群,所述方法包括如下实施步骤:
S201、主站集群中的第一主站节点向IoT设备发送任务消息,所述任务消息中包括待执行任务。
在一些实施例中,所述第一主站节点向IoT设备发送任务消息之前,还包括:所述第一主站节点将所述IoT设备注册到所述第一主站节点下。这里的第一主站节点也可称为来源节点,所述第一主站节点的标识也可称为来源节点的标识。具体实现,可参见前述图2所述实施例,所述注册响应消息可包括所述第一主站节点的标识,以将所述第一主站节点的标识通知并记录到所述IoT设备或IoT网关中。
在一些实施例中,若图2所示的流程示意图中,所述注册响应消息中不包括所述第一主站节点的标识。此时所述任务消息中还可包括分配所述待执行任务的第一主站节点的标识。
S202、相应地,所述IoT设备接收所述任务消息,执行所述待执行任务,获得所述IoT设备完成所述待执行任务的数据结果。
S203、所述IoT设备发送响应消息,所述响应消息中包括所述第一主站节点的标识和所述IoT设备完成所述待执行任务的数据结果。
本发明实施例中,系统中还包括负载均衡装置,用于对响应消息进行负载均衡处理。在负载均衡装置接收到所述响应消息时,可利用负载均衡策略将所述响应消息发送给主站集群(具体发送给主站集群中的任一个或多个主站节点)。这里假设负载均衡装置将所述响应消息发送给了主站集群中的第二主站节点。关于负载均衡策略的描述,可具体参见前述实施例中的相关阐述,这里不再赘述。
S204、相应地,主站集群中的第二主站节点接收所述响应消息。所述第二主站节点判断所述第二主站节点的标识是否为所述第一主站节点的标识。
具体的,所述第二主站节点接收到所述响应消息后,可通过消息解析获知所述第一主站节点的标识。接着,所述第二主站节点(即所述主站集群中接收所述响应消息的主站节点)可判断自己的标识是否与所述第一主站节点的标识相同,若否,则指示继续执行步骤S205;否则,结束流程。
以主站集群的角度,即是主站集群可判断当前接收所述响应消息的主站节点的标识是否为所述第一主站节点的标识,若否,则所述主站集群指示接收所述响应消息的主站节点(即第二主站节点)继续执行步骤S205;否则,结束流程。
S205、所述第二主站节点将所述响应消息转发给所述第一主站节点。
在步骤S201的一种实施方式中,所述第一主站节点可直接向所述IoT设备发送任务消息。具体的,所述第一主站节点可直接通过负载均衡装置将任务消息发送给所述IoT设备。或者,所述第一主站节点可通过IoT网关和负载均衡装置将任务消息发送给所述IoT设备。
在步骤S201的又一种实施方式中,所述第一主站节点也可利用调度策略从所述主站集群中选取出用于转发所述任务消息的第三主站节点,所述第一主站节点可通过第三主站节点将任务消息下发给所述IoT设备。
所述调度策略可以有多种,例如节点负载、任务消息量等等,本发明实施例不做限定。具体的,所述第一主站节点可将任务消息发送给所述第三主站节点。所述第三主站节点在接收到所述任务消息后,可直接通过负载均衡装置将任务消息发送给所述IoT设备。或者,所述第三主站节点可通过IoT网关和负载均衡装置将任务消息发送给所述IoT设备。
举例来说,假设主站集群中存在有三个节点,其中节点1的负载为3,节点2的负载为2,节点3的负载为5。若来源节点(即第一主站节点)为节点3,将向IoT设备下发任务消息,则来源节点3可根据当前主站集群中3个节点各自节点下的网络负载,节点3的负载>节点1的负载>节点2的负载可知,当前需通过节点2来向IoT设备该任务消息。此时,节点3可将该任务消息转发给节点2,通过节点2向IoT设备下发该任务消息。
参见如图1所示,第一主站节点的采集任务模块将任务消息下发给本节点的任务调度模块。第一主站节点的任务调度模块可根据调度策略,将任务消息分配并发送给主站集群中其他节点的任务调度模块,这里假设为第三主站节点的任务调度模块。相应地,第三主站节点的任务调度模块将接收的任务消息下发给自身节点的南向接口。
在图1所示的系统结构示意图中,若IoT设备通过IoT网关接入的情况下,第三主站节点的南向接口可将该任务消息通过IoT网关下发给对应的IoT设备。在如图1所示的系统结构示意图中若不存在有IoT网关的情况下,第三主站节点的南向接口可直接将该任务消息下发给对应的IoT设备。
在步骤S201的又一种实施方式中:所述第一主站节点可根据调度策略将所述任务消息发送给所述IoT设备。所述调度策略可包括以下中的任一项或多项:节点负载、任务消息量、任务消息的消息属性。所述任务消息的数量可以是一个或多个。
所述消息属性可用来评定任务消息的重要性或优先级,该消息属性包括以下中的任一项或多项的组合:重要程度、紧急程度、时效性(即老化时间)、消息大小、或者其他用于描述任务消息的属性信息。这里的老化时间可以是指消息的有效生命周期或有效作用时间。
在一些实施例中,若所述调度策略包括节点负载或任务消息量,所述任务消息存在有多个,则所述第一主站节点可根据所述第一主站节点的节点负载(或任务消息量),确定消息发送频率;所述第一主站节点可根据所述消息发送频率来发送所述任务消息。
举例来说,如果第一主站节点的负载较大(超过预设负载阈值),则说明当前第一主站节点的可用资源(如内存、带宽)较少,此时第一主站节点可以控制降低针对上述多个任务消息的发送频率,或控制第一主站节点针对上述多个任务消息的发送频率为第一频率。例如从原来每次下发五个任务消息降低为每次下发两个任务消息。如果第一主站节点的负载较小(不超过预设负载阈值),则说明当前第一主站节点的可用资源(如可用带宽)较多,此时第一主站节点可以控制增加针对上述多个任务消息的发送频率,或控制第一主站节点针对上述多个任务消息的发送频率为第二频率。其中,第一频率小于第二频率。
在一些实施例中,若所述任务消息存在有多个,所述任务消息包括消息属性,则所述第一主站节点可根据所述多个任务消息的消息属性,确定所述多个任务消息的优先级;所述第一主站节点按照所述多个任务消息的优先级,将所述多个任务消息发送给所述IoT设备。
具体的,在第一主站节点存在需要向所述IoT发送的多个任务消息的情况下,第一主站节点可根据所述多个任务消息中例如重要程度、紧急程度、老化时间等消息属性,来为该多个任务消息分配/配置对应的优先级。例如,第一主站节点可将一些重要程度较高、或紧急程度较高、或老化时间较短的任务消息的优先级配置为第一优先级,将一些重要程度较低、或紧急程度较低、或老化时间较长的任务消息的优先级配置为第二优先级,其中第一优先级高于第二优先级。相应地,第一主站节点可以优先下发具备第一优先级的任务消息,后下发具备第二优先级的任务消息。
参见前述实施例可知,在所述IoT设备被成功注册到所述第一主站节点后,也形成了所述IoT设备与所述第一主站节点之间进行相互通信时的一个链路。相应地,在步骤S201的又一种实施方式中,所述第一主站节点可通过该链路向所述IoT设备发送任务消息。
在一些实施例中,所述任务消息还可包括IoT设备的标识,IoT网关的标识,或者一些其他信息。其中,所述IoT设备通过所述IoT网关接入物联网。
在步骤S202的具体实施方式中,所述IoT设备接收所述第一主站节点下发的任务消息,通过消息解析可获知所述任务消息中的待执行任务。所述IoT设备执行所述任务消息中的待执行任务,获得所述IoT设备完成所述待执行任务的数据结果。
在步骤S203中,所述IoT设备在获得所述IoT设备完成所述待执行任务的数据结果后,可通过负载均衡装置向主站集群发送响应消息。参见前述实施例可知,负载均衡装置将所述IoT设备发送的响应消息转发给了所述主站集群中的第二主站节点。
在一种具体实现方式中,在所述任务消息中不包括所述第一主站节点的标识时,由于所述IoT设备之前注册到所述第一主站节点后,接收并记录有所述第一主站节点通知的所述第一主站节点的标识,则在所述第一主站节点获得所述数据结果后,可根据所述数据结果和所述第一主站节点的标识生成对应的响应消息,然后通过负载均衡装置将所述响应消息发送给所述第二主站节点。
在又一种具体实现方式中,所述任务消息包括所述第一主站节点的标识,则所述IoT设备在解析所述任务消息时,可获知到所述任务消息中的任务和所述第一主站节点的标识。同样,在所述第一主站节点执行所述任务获得所述IoT设备完成所述待执行任务的数据结果后,可根据所述IoT设备完成所述待执行任务的数据结果和所述第一主站节点的标识生成对应的响应消息,然后通过负载均衡装置按照所述第二链路将所述响应消息发送给所述第二主站节点。
具体的,参见如图1所示的系统结构示意图,若系统结构示意图中不存在有IoT网关的情况下,IoT设备可通过网络将响应消息发送给负载均衡装置。相应地,负载均衡装置接收IoT设备发送的响应消息,然后采用负载均衡策略将响应消息发送给第二主站节点的南向接口。相应地,第二主站节点的南向接口可接收负载均衡装置转发的所述响应消息。
在如图1所示的系统结构示意图中若存在有IoT网关的情况下,在一种实施方式中,IoT设备可将所述IoT设备完成所述待执行任务的结果数据发送IoT网关。如果该IoT网关之前被成功注册到所述第一主站节点,则所述IoT网关中记录有分配所述待执行任务的所述第一主站节点的标识,和IoT设备的对应关系。相应地,在所述IoT网关接收到所述IoT设备完成所述待执行任务的结果数据后,所述IoT网关可根据所述IoT设备完成所述待执行任务的结果数据和所述IoT网关中记录的所述第一主站节点标识生成对应的响应消息。
在又一种实施方式中,如果所述IoT设备被成功注册到所述第一主站节点(即所述IoT设备中记录有所述第一主站节点的标识),则所述IoT设备可将所述IoT设备完成所述待执行任务的结果数据和所述IoT设备中记录的所述第一主站节点的标识发送给所述IoT网关。相应地,IoT网关可接收所述IoT设备发送的所述第一节点的标识和所述IoT设备完成所述待执行任务的结果数据,并生成对应的响应消息。
在又一种实施方式中,所述IoT设备可根据所述IoT设备完成所述待执行任务的结果数据和所述第一主站节点标识生成对应的响应消息,然后通过IoT网关将所述响应消息转发给负载均衡装置,通过负载均衡装置将所述响应消息均衡发送给主站集群中任一个或多个主站节点。
具体的,IoT网关可通过网络将响应消息发送给负载均衡装置。相应地,负载均衡装置接收所述IoT网关发送的响应消息,然后采用负载均衡策略将响应消息发送给主站集群中的相关主站节点的南向接口,这里假设负载均衡装置将响应消息发送给了第二主站节点的南向接口。相应地,第二主站节点的南向接口可接收负载均衡装置转发的所述响应消息。
参见如图1所示的系统结构示意图,步骤S204的具体实现中,第二主站节点的南向接口接收到负载均衡装置发送的响应消息后,可内部上报给自身主站节点的任务调度模块(即第二主站节点的任务调度模块)。相应地,第二主站节点的任务调度模块接收所述响应消息,并通过消息解析从中获得所述响应消息中的诸如第一主站节点的标识、IoT设备的数据等信息。接着,第二主站节点的任务调度模块判断自身节点的标识是否为第一主站节点的标识,若为是,则表示负载均衡装置将响应消息分配并发送给下发任务消息的来源节点(即第一主站节点),也即是此时的第二主站节点即为来源节点(第一主站节点)。接着,第二主站节点的任务调度模块可将消息解析出的所述IoT设备完成所述待执行任务的数据结果,或者直接将响应消息上报给第二主站节点的采集任务模块,以便采集任务模块对所述IoT设备完成所述待执行任务的数据结果进行后续的相关处理(如问题分析、业务处理等)。若第二主站节点的标识不为第一主站节点的标识时,则表示负载均衡装置将响应消息分配并发送给的第二主站节点不为下发所述任务消息的来源节点(即第一主站节点),此时可继续执行步骤S105。
在步骤S205中,在第二主站节点判断到自身主站节点的标识不为第一主站节点的标识时,第二主站节点可根据所述第一主站节点的标识,将所述IoT设备完成所述待执行任务的数据结果,或者直接将所述响应消息发送给所述第一主站节点,以便第一主站节点基于所述IoT设备完成所述待执行任务的数据结果进行后续的相关处理(诸如数据分析、业务处理等等)。
参见如图1所示的系统结构示意图,步骤S204的具体实现中,在第二主站节点的任务调度模块判断到第二主站节点的标识不为第一主站节点的标识的情况下,第二主站节点的任务调度模块可根据上述消息解析出的第一主站节点的标识,查找出所述第一主站节点的任务调度模块。然后,第二主站节点的任务调度模块将所述IoT设备完成所述待执行任务的数据结果或者直接将上述响应消息发送给第一主站节点的任务调度模块。相应地,第一主站节点的任务调度模块接收第二主站节点的任务调度模块发送过来的所述IoT设备完成所述待执行任务的数据结果或响应消息。接着,第一主站节点的任务调度模块将接收的所述IoT设备完成所述待执行任务的数据结果或响应消息内部上报给自身节点的采集任务模块,以便第一主站节点的采集任务模块对所述IoT设备完成所述待执行任务的数据结果进行存储或进行后续的相关处理等等。
在一些实施例中,上述第一主站节点、第二主站节点、第三主站节点均为主站集群中的主站节点,可以是指同一个节点,也可是指不同的节点。需要说明的是,图3示出了第一主站节点和第二主站节点不同时,本申请提供的一种任务处理方法的实施流程示意图。
在步骤S205的一种实施方式中,所述第二主站节点可根据调度策略将所述响应消息转发给所述第一主站节点。所述任务消息的数量可以是一个或多个,通常一个任务消息对应一个响应消息,则所述响应消息的数量也可以是一个或多个。关于第二主站节点按照调度策略将响应消息转发给所述第一主站节点的具体介绍可具体参见前述实施例中的相关描述,这里不再赘述。
在一些实施例中,所述方法还包括:第二主站节点在接收到所述IoT设备返回的响应消息的时间超过预设时间的情况下,丢弃所述响应消息。
针对一些时效性要求较高的响应消息而言,在所述IoT设备或IoT网关经由负载均衡装置将所述响应消息上报给主站集群中的任一主站节点(如上述第二主站节点)的过程中由于网络延迟、或网络负载较大等原因,导致消息传输不及时,超过了预设时间。此时第二主站节点接收到的响应消息已经超过时效性、不可用了,那么第二主站节点可接收的响应消息进行丢弃,不予管理/处理。
具体的,响应消息中可包括有时间标签,该时间标签用于指示所述IoT设备或IoT网关发送所述响应消息的时间。第二主站节点在接收到所述响应时间后,根据响应消息中的时间标签,并结合当前系统时间可确定到所述响应消息的传输时间。然后,第二主站节点将判断所述响应消息的传输时间是否超过预设时间(如5分钟),如果超过则第二主站节点可直接丢弃该响应消息或不予处理,如果不超过,则可将响应消息转发给第一主站节点(即来源节点)。
在一些实施例中,所述预设时间可以是指消息的老化时间,且预设时间可以是用户在IoT设备中自主设置的,此时该预设时间通常包括/携带在所述响应消息中。
在一些实施例中,所述预设时间也可以是用户在主站集群(具体在主站集群中的任一主站节点)中自主设置的,此时该预设时间通常可从主站集群(具体在主站集群中的任一主站节点)中获得,或从管理服务器(所述主站集群被部署在该管理服务器上)中获得。
在一些实施例中,所述任务消息中的待执行任务可用于对所述IoT设备进行设备管理。所述设备管理包括以下中的一项或多项:状态监测、生命周期管理、数据采集、设备控制、设备诊断、设备升级、设备位置管理。也即是第一主站节点向IoT设备下发的任务可以是设备控制任务、数据采集任务、设备升级任务等。
所述状态监测用于确定所述IoT设备的状态,例如手机的网络状态是否处于在线状态,交通指示灯是否处于工作状态(能够正常地进行红绿灯指示)等。所述生命周期管理用于监测从所述IoT设备出厂到淘汰整个生命历程,或者监测设备寿命等。所述数据采集是指通过所述IoT设备采集相关数据,例如温度传感器采集环境温度数据等。所述设备控制是指针对所述IoT设备进行的某些命令控制操作,例如智能电表的电压/电路互感器PC/CT值的设置指令等。所述设备诊断用于对所述IoT设备进行故障监测、诊断分析、定位故障等。所述软件升级用于对所述IoT设备的系统或安装的应用程序APP进行升级或维护等。所述设备位置管理用于对所述IoT设备的安装/配置位置进行统一管理,例如配置所述IoT设备的IP地址、同一小区内配置所述IoT设备的数量等。
在一些实施例中,所述IoT设备完成所述待执行任务的数据结果可包括以下中的任一项或多项:所述IoT设备采集的数据、所述IoT设备的运行数据、所述IoT设备的配置数据、或者其他的用于所述IoT设备拥有/采集的数据等等。所述IoT设备的运行数据可以是指该IoT设备运行过程中产生的数据,例如应用程序运行数据、设备系统运行数据等。所述IoT设备的配置数据可以是指所有或部分被配置到IoT设备系统的配置数据,例如软件版本、软件名称等等。
举例来说,假设某火电厂分布式地安装有10台风机,允许通过物联网对这些风机进行统一管理。现在若主站集群中的某节点想要对这10台风机进行状态监测和故障检测,此时主站集群中的节点(即来源节点)可采用异步交互方式向这10台风机下发状态监测任务和故障检测任务。结合上述图1所示的系统结构示意图,IoT设备为风机,且这10台风机归管于某个IoT网关(如IoT网关2)。实际应用中,第一主站节点(Node2)可通过IoT网关2向这10个风机下发相应地状态监测任务和故障检测任务,该任务携带有第一主站节点的标识。相应地,这10台风机各自在接收到第一主站节点下发的相关任务后,可执行所述状态监测任务获取各自风机对应的状态信息,同时对各自风机的潜在故障进行诊断,得到风机的故障信息。这里的状态信息可以包括风机的旋转速度,故障信息可以包括风机的温度信息、振动速度、噪声信息、或者其他的用于影响判定风机故障的参数信息等,这里的故障信息既可包括风机的运行数据(如风机的温度信息等),还可包括风机的配置数据(如风机的运行风速档次、及该风速档次对应的振动速度和噪声信息等)。相应地,当风机执行所述状态监测任务,获得对应风机的状态信息和故障信息后,可向所述主站集群返回响应消息(具体返回给主站集群中的任一目标节点,如第二主站节点)。所述响应消息可携带有上述10个风机各自对应的状态信息、故障信息以及第一主站节点的标识。在目标节点接收到响应消息后,可确定自身节点的标识是否为第一主站节点的标识,若否,将该响应消息转发给所述第一主站节点,以便第一主站节点对响应消息进行分析从中确定出风机可能出现的故障,通知相关维修人员进行相应地故障维修等等。
需要说明的是,由于主站集群中每一主站节点(如第一主站节点)下发任务(即任务消息)的数量都比较多,通常是成千上万的。为节省系统资源或节省耗时,主站集群常常会采用异步交互方式,进行多个待执行任务(即任务消息)的同时下发或多个任务执行结果(即响应消息)的同时上报。
通过实施本发明实施例,能够解决现有技术中在任务执行过程中,由于通信中断导致任务执行结果(即响应消息)无法返回至下发任务的来源节点(即第一主站节点),造成响应消息无法处理、任务中断等问题,提升了任务处理的可靠性。
请参见如图4所示,是本发明实施例提供的又一种任务处理方法的流程示意图,用于部署有至少两个主站节点的物联网IoT中,所述至少两个主站节点组成主站集群,所述方法包括如下实施步骤:
S301、主站集群中的第一主站节点向IoT网关发送任务消息,所述任务消息中包括待执行任务和IoT设备的标识。
在一些实施例中,所述第一主站节点向IoT网关下发任务消息之前,还包括:所述第一主站节点将所述IoT设备和/或所述IoT网关注册到所述第一主站节点。所述IoT设备接入在所述IoT网关下,受所述IoT网关的管理。这里的第一主站节点也可称为来源节点,所述第一主站节点的标识也可称为源节点的标识。具体实现,可参见前述图2所述实施例,所述注册响应消息可包括所述第一主站节点的标识,以将所述第一主站节点的标识通知并存储到所述IoT设备或IoT网关中。
在一些实施例中,所述任务消息中还可包括所述第一主站节点的标识。
S302、相应地,所述IoT网关接收所述任务消息,执行所述待执行任务,向所述IoT设备发送对应的任务指令,所述任务指令用于指示所述IoT设备进行对应的任务处理,获得所述IoT设备完成所述待执行任务的数据结果。
S303、所述IoT设备接收所述任务指令,响应所述任务指令,获得所述IoT设备完成所述待执行任务的数据结果。
S304、所述IoT设备向所述IoT网关发送所述IoT设备完成所述待执行任务的数据结果。
S305、相应地,所述IoT网关接收所述IoT设备完成所述待执行任务的数据结果。所述IoT网关生成并发送响应消息,所述响应消息中包括所述第一主站节点的标识和所述IoT设备完成所述待执行任务的数据结果。
所述IoT网关可通过负载均衡装置将所述响应消息发送给主站集群中的任一个或几个主站节点。具体的,在负载均衡装置接收到所述IoT网关发送的所述响应消息后,可根据负载均衡策略将所述响应消息均衡发送给所述主站集群(具体发送给主站集群中的任意主站节点)。这里假设负载均衡装置根据负载均衡策略将所述响应消息发送给了主站集群中的第二主站节点。关于负载均衡策略可具体参见前述相关实施例,这里不再赘述。
S306、相应地,所述主站集群中的第二主站节点接收所述响应消息。所述第二主站节点判断所述第二主站节点的标识是否为所述第一主站节点的标识。
具体的,在所述第二主站节点判断到自己的标识与所述第一主站节点的标识不相同时,可继续执行步骤S307;否则,结束流程。
以主站集群的角度,即是所述主站集群可判断当前接收所述响应消息的主站节点的标识是否为所述第一主站节点的标识,若否,则所述主站集群指示接收所述响应消息的主站节点(即第二主站节点)继续执行步骤S307;否则,结束流程。
S307、所述第二主站节点将所述响应消息转发给所述第一主站节点。
在一些实施例中,若所述任务消息中不包括所述第一主站节点的标识,则由于所述IoT设备或所述IoT网关注册到所述第一主站节点下后,所述第一主站节点可将所述第一主站节点的标识通知给所述IoT设备或所述IoT网关。
具体的,在所述IoT设备中记录有所述第一主站节点的标识的情况下,步骤S304中所述IoT设备可将所述IoT设备完成所述待执行任务的数据结果和自身设备中记录的第一主站节点的标识发送给所述IoT网关。相应地,所述IoT设备可接收所述第一主站节点的标识和所述IoT设备完成所述待执行任务的数据结果。或者,所述IoT网关中记录有所述第一主站节点的标识,此时IoT设备可将所述IoT设备完成所述待执行任务的数据结果发送给所述IoT网关。
在一些实施中,若所述任务消息包括所述第一主站节点的标识,则在步骤S302中,所述IoT网关在接收到所述任务消息后,可通过消息解析获知所述任务消息中的所述第一主站节点的标识和所述待执行任务等消息。所述IoT网关可将所述第一主站节点的标识缓存至本网关中,继续执行所述任务消息中的待执行任务,向所述IoT设备发送相应地任务指令。
在一些实施例中,所述待执行任务可用于对所述IoT设备进行设备管理。所述设备管理包括以下中的一项或多项:状态监测、生命周期管理、数据采集、设备控制、设备诊断、设备升级、设备位置管理。也即是第一主站节点向IoT设备下发的待执行任务可以是设备控制任务、数据采集任务、设备升级任务等。所述IoT设备完成所述待执行任务的数据结果可包括以下中的一项或多项:所述IoT设备采集的数据、所述IoT设备的运行数据以及所述IoT设备的配置数据。
例如,在智能家居场景中,IoT设备为智能空调,若所述任务消息中的待执行任务为温度采集任务,具体为采集所述智能空调当前的温度。则在步骤S302中,所述IoT网关执行所述任务消息中的待执行任务时,可向IoT设备(智能空调)发送温度采集指令。相应地步骤S303中,智能空调接收到所述温度采集指令后,采集所述智能空调当前的温度数据,并可向所述IoT设备反馈所述智能空调当前的温度数据。
关于步骤S301至步骤S307的相关步骤描述,具体可参见前述图3实施例中的相关步骤描述,这里不再赘述。
需要说明的是,图4示出了本申请中第一主站节点和第二主站节点不相同时,任务处理方法的流程示意图。且步骤S305中,示出了负载均衡装置采用负载均衡策略将IoT网关发送的响应消息均衡发送给主站集群中的第二主站节点,图示仅为示例,并不构成限定。
上述主要从主站集群和IoT设备交互的角度对本发明实施例提供的方案进行了介绍,可选地还参与有IoT网关的交互。可以理解的是,主站集群(具体为主站集群中任一主站节点)为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。结合本发明中所公开的实施例描述的各示例的单元及算法步骤,本发明实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同的方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的技术方案的范围。
本发明实施例可以根据上述方法示例对主站集群和IoT网关进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本发明实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用集成的单元的情况下,图5A示出了上述实施例中所涉及的IoT网关的一种可能的结构示意图。IoT网关500包括:处理单元502和通信单元503。处理单元502用于对IoT网关500的动作进行控制管理,例如,处理单元502用于支持IoT网关500执行图4中的步骤302,和/或用于执行本文所描述的技术的其它步骤。通信单元503用于支持IoT网关500与其它网络设备的通信,例如,通信单元503用于支持IoT网关500执行图4中的步骤305,和/或用于执行本文所描述的技术的其它步骤。IoT网关500还可以包括存储单元501,用于存储IoT网关500的程序代码和数据。
其中,处理单元502可以是处理器或控制器,例如可以是中央处理器(centralprocessing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(ASIC),可编程逻辑器件(PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(CPLD),现场可编程逻辑门阵列(FPGA),通用阵列逻辑(GAL)或其任意组合。
通信单元503包括通信接口、收发器、收发电路等,其中,通信接口是统称,可以包括一个或多个接口,例如IoT网关与IoT设备之间的接口。
存储单元501可以是存储器。存储器可以包括易失性存储器(英文:volatilememory),例如随机存取存储器(random-access memory,RAM);存储器也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory),硬盘(英文:hard disk drive,缩写:HDD)或固态硬盘(英文:solid-state drive,缩写:SSD);存储器410还可以包括上述种类的存储器的组合。
当处理单元502为处理器,通信单元503为通信接口,存储单元501为存储器时,本发明实施例所涉及的IoT网关可以为图5B所示的IoT网关。
参阅图5B所示,该IoT网关510包括:处理器512、通信接口513、存储器511。可选地,IoT网关510还可以包括总线514。其中,通信接口513、处理器512以及存储器511可以通过总线514相互连接;所述总线514可以分为地址总线、数据总线、控制总线等。为便于表示,图5B中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
上述图5A或图5B所示的IoT网关的具体实现还可以对应参照上述方法实施例的相应描述,此处不再赘述。
请参见图6A,图6A示出了上述实施例中所涉及的主站集群的一种可能的结构示意图。主站集群600包括:处理单元602和通信单元603。处理单元602用于对主站集群600的动作进行控制管理,例如,处理单元602用于支持主站集群600执行图3中的步骤S204,图4中的步骤S306,和/或用于执行本文所描述的技术的其它步骤。通信单元603用于支持主站集群600与其它网络设备的通信,例如,通信单元703用于支持主站集群600执行图3中的步骤205,图4中步骤S307,和/或用于执行本文所描述的技术的其它步骤。主站集群600还可以包括存储单元601,用于存储主站集群600的程序代码和数据。
其中,处理单元602可以是处理器或控制器,例如可以是CPU,NP或者CPU和NP的组合。还可以进一步包括硬件芯片。上述硬件芯片可以是ASIC,PLD或其组合。上述PLD可以是CPLD,FPGA,GAL或其任意组合。
通信单元603包括通信接口、收发器、收发电路等,其中,通信接口是统称,可以包括一个或多个接口,例如IoT网关与主站集群之间的接口。
存储单元601可以是存储器。存储器可以包括易失性存储器,例如RAM;存储器也可以包括非易失性存储器,例如flash,HDD或SSD;存储器还可以包括上述种类的存储器的组合。
在一些实施例中,通信单元603可为图1中的南向接口,处理单元602可为图1中的任务调度模块或采集任务模块。
当处理单元602为处理器,通信单元603为通信接口,存储单元601为存储器时,本发明实施例所涉及的主站集群可以为图6B所示的主站集群。
参阅图6B所示,该主站集群610包括:处理器612、通信接口613、存储器611。可选地,主站集群610还可以包括总线614。其中,通信接口613、处理器612以及存储器611可以通过总线614相互连接;所述总线614可以分为地址总线、数据总线、控制总线等。为便于表示,图6B中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
上述图6A或图6B所示的主站集群的具体实现还可以对应上述方法实施例的相应描述,此处不再赘述。
结合本发明实施例公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM、闪存、只读存储器(英文:Read Only Memory,ROM)、可擦除可编程只读存储器(英文:Erasable Programmable ROM,EPROM)、电可擦可编程只读存储器(英文:Electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于主站集群或IoT网关中。当然,处理器和存储介质也可以作为分立组件存在于主站集群或IoT网关中。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (17)

1.一种任务处理方法,用于部署有至少两个主站节点的物联网IoT中,所述至少两个主站节点组成主站集群,其特征在于,所述方法包括:
主站集群向IoT设备发送任务消息,所述任务消息中包括所述IoT设备的标识和待执行任务;
所述主站集群接收响应消息,所述响应消息中包括所述IoT设备完成所述待执行任务的数据结果,以及分配所述待执行任务的第一主站节点的标识;
若所述主站集群确定接收到所述响应消息的主站节点的标识与所述第一节点的标识不同,所述主站集群指示接收到所述响应消息的主站节点将所述响应消息转发至所述第一主站节点。
2.根据权利要求1所述的方法,其特征在于,所述任务消息中还包括所述第一主站节点的标识,所述第一主站节点的标识用于携带在所述响应消息中,以便所述主站集群将所述响应消息返回给所述第一主站节点。
3.根据权利要求1或2所述的方法,其特征在于,在所述主站集群向IoT设备发送任务消息之前,所述方法还包括:
所述主站集群将所述IoT设备注册到所述第一主站节点;
所述主站集群将所述第一主站节点的标识通知给所述IoT设备,以便所述IoT设备记录所述第一主站节点的标识。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述主站集群向IoT设备发送任务消息,包括:通过所述第一主站节点向所述IoT设备发送所述任务消息;或者,通过调度策略从所述主站集群中选择的主站节点向所述IoT设备发送所述任务消息。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述调度策略包括以下中的至少一项:节点负载、任务消息量和任务消息的消息属性,所述消息属性包括以下中的至少一项:重要程度、紧急程度、老化时间。
6.一种任务处理方法,用于部署有至少两个主站节点的物联网IoT中,所述至少两个主站节点组成主站集群,其特征在于,所述方法包括:
IoT网关接收所述主站集群发送的任务消息,所述任务消息中包括待执行任务及IoT设备的标识,所述IoT设备通过所述IoT网关接入所述物联网;
所述IoT网关执行所述待执行任务,获得所述IoT设备完成所述待执行任务的数据结果;
所述IoT网关向所述主站集群发送响应消息,所述响应消息中包括所述IoT设备完成所述待执行任务的数据结果,以及分配所述待执行任务的第一主站节点的标识。
7.根据权利要求6所述的方法,其特征在于,在所述IoT网关接收所述主站集群发送的任务消息之前,还包括:
所述IoT网关向所述主站集群注册所述IoT设备;
所述IoT网关接收所述主站集群通知的所述第一主站节点的标识,所述第一主站节点的标识用于指示所述IoT设备被成功注册到所述第一主站节点。
8.根据权利要求6所述的方法,其特征在于,所述任务消息中还包括所述第一主站节点的标识,所述第一主站节点的标识用于所述IoT网关返回所述响应消息时携带在所述响应消息中,以便所述主站集群将所述响应消息返回给所述第一主站节点。
9.一种主站集群,用于部署有至少两个主站节点的物联网IoT中,所述主站集群由所述至少两个主站节点组成,其特征在于,所述主站集群包括通信单元和处理单元,其中,
所述通信单元,用于向IoT设备发送任务消息,所述任务消息中包括待执行任务;
所述通信单元,还用于接收响应消息,所述响应消息包括所述IoT设备完成所述待执行任务的数据结果,以及分配所述待执行任务的第一主站节点的标识;
所述处理单元,用于判断当前接收到所述响应消息的主站节点的标识是否是所述第一主站节点的标识;并当所述处理单元的判断结果为否时,将所述响应消息转发至所述第一主站节点。
10.根据权利要求9所述的主站集群,其特征在于,所述任务消息中还包括所述第一主站节点的标识,所述第一主站节点的标识用于携带在所述响应消息中,以便所述主站集群将所述响应消息返回给所述第一主站节点。
11.根据权利要求9或10所述的主站集群,其特征在于,在所述通信单元用于向IoT设备发送任务消息之前,
所述处理单元,还用于将所述IoT设备注册到所述第一主站节点;
所述通信单元,还用于将所述第一主站节点的标识通知给所述IoT设备,以便所述IoT设备记录所述第一主站节点的标识。
12.根据权利要求9-11任一项所述的主站集群,其特征在于,
所述通信单元,具体用于通过所述第一主站节点向所述IoT设备发送任务消息;或者,通过调度策略从所述主站集群中选择的主站节点向所述IoT设备发送任务消息。
13.一种IoT网关,其特征在于,用于部署有至少两个主站节点的物联网IoT中,所述至少两个主站节点组成主站集群,所述IoT网关包括通信单元和处理单元,其中,
所述通信单元,用于接收所述主站集群发送的任务消息,所述任务消息中包括待执行任务及IoT设备的标识,所述IoT设备通过所述IoT网关接入所述物联网;
所述处理单元,用于执行所述待执行任务,获得所述IoT设备完成所述待执行任务的数据结果;
所述通信单元,还用于向所述主站集群发送响应消息,所述响应消息中包括所述IoT设备完成所述待执行任务的数据结果,以及分配所述待执行任务的第一主站节点的标识。
14.根据权利要求13所述的IoT网关,其特征在于,在所述通信单元用于接收所述主站集群发送的任务消息之前,
所述处理单元,还用于向所述主站集群注册所述IoT设备;
所述通信单元,还用于接收所述主站集群通知的所述第一主站节点的标识,所述第一主站节点的标识用于指示所述IoT设备被成功注册到所述第一主站节点。
15.根据权利要求13所述的IoT网关,其特征在于,所述任务消息中还包括所述第一主站节点的标识,所述第一主站节点的标识用于所述IoT网关返回所述响应消息时携带在所述响应消息中,以便所述主站集群将所述响应消息返回给所述第一主站节点。
16.一种任务处理系统,其特征在于,包括IoT设备和如权利要求9-12中任一项所述的主站集群;其中,
所述IoT设备,用于接收所述主站集群发送的任务消息,所述任务消息中包括待执行任务;执行所述待执行任务,获得所述IoT设备完成所述待执行任务的数据结果;发送所述IoT设备完成所述待执行任务的数据结果。
17.根据权利要求16所述的任务处理系统,其特征在于,还包括如权利要求13-15任一项所述的IoT网关。
CN201710294907.7A 2017-04-28 2017-04-28 一种任务处理方法、相关设备及系统 Active CN108810042B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710294907.7A CN108810042B (zh) 2017-04-28 2017-04-28 一种任务处理方法、相关设备及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710294907.7A CN108810042B (zh) 2017-04-28 2017-04-28 一种任务处理方法、相关设备及系统

Publications (2)

Publication Number Publication Date
CN108810042A true CN108810042A (zh) 2018-11-13
CN108810042B CN108810042B (zh) 2021-06-29

Family

ID=64070606

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710294907.7A Active CN108810042B (zh) 2017-04-28 2017-04-28 一种任务处理方法、相关设备及系统

Country Status (1)

Country Link
CN (1) CN108810042B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110971698A (zh) * 2019-12-09 2020-04-07 北京奇艺世纪科技有限公司 一种数据转发系统、方法及装置
CN111866046A (zh) * 2019-04-30 2020-10-30 华为技术有限公司 一种实现集群的方法及相关设备
CN112596924A (zh) * 2020-12-25 2021-04-02 中标慧安信息技术股份有限公司 物联网中台服务端应用程序远程过程调用方法和系统
CN117041259A (zh) * 2023-09-28 2023-11-10 新华三技术有限公司 计算资源的调度方法及装置

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003061326A1 (en) * 2002-01-11 2003-07-24 Cisco Technology, Inc. System and method for identifying a wireless serving node for a mobile unit
US20060080446A1 (en) * 2000-11-01 2006-04-13 Microsoft Corporation Session load balancing and use of VIP as source address for inter-cluster traffic through the use of a session identifier
CN101510884A (zh) * 2009-03-26 2009-08-19 华为技术有限公司 多媒体会议管理方法、网络设备及网络系统
CN104219649A (zh) * 2013-05-30 2014-12-17 中兴通讯股份有限公司 一种防止普通终端触发物联网设备的方法和系统
CN104408552A (zh) * 2014-11-13 2015-03-11 华为技术有限公司 任务协作处理方法、装置和系统
US20150304851A1 (en) * 2014-04-22 2015-10-22 Broadcom Corporation Portable authorization device
US20160100362A1 (en) * 2014-09-29 2016-04-07 Convida Wireless, Llc Service capability server / epc coordination for power savings mode and paging
CN106126346A (zh) * 2016-07-05 2016-11-16 东北大学 一种大规模分布式数据采集系统及方法
US20170012857A1 (en) * 2015-07-08 2017-01-12 Convida Wireless, Llc Service layer anycast and somecast

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060080446A1 (en) * 2000-11-01 2006-04-13 Microsoft Corporation Session load balancing and use of VIP as source address for inter-cluster traffic through the use of a session identifier
WO2003061326A1 (en) * 2002-01-11 2003-07-24 Cisco Technology, Inc. System and method for identifying a wireless serving node for a mobile unit
CN101510884A (zh) * 2009-03-26 2009-08-19 华为技术有限公司 多媒体会议管理方法、网络设备及网络系统
CN104219649A (zh) * 2013-05-30 2014-12-17 中兴通讯股份有限公司 一种防止普通终端触发物联网设备的方法和系统
US20150304851A1 (en) * 2014-04-22 2015-10-22 Broadcom Corporation Portable authorization device
US20160100362A1 (en) * 2014-09-29 2016-04-07 Convida Wireless, Llc Service capability server / epc coordination for power savings mode and paging
CN104408552A (zh) * 2014-11-13 2015-03-11 华为技术有限公司 任务协作处理方法、装置和系统
US20170012857A1 (en) * 2015-07-08 2017-01-12 Convida Wireless, Llc Service layer anycast and somecast
CN106126346A (zh) * 2016-07-05 2016-11-16 东北大学 一种大规模分布式数据采集系统及方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111866046A (zh) * 2019-04-30 2020-10-30 华为技术有限公司 一种实现集群的方法及相关设备
CN110971698A (zh) * 2019-12-09 2020-04-07 北京奇艺世纪科技有限公司 一种数据转发系统、方法及装置
CN110971698B (zh) * 2019-12-09 2022-04-22 北京奇艺世纪科技有限公司 一种数据转发系统、方法及装置
CN112596924A (zh) * 2020-12-25 2021-04-02 中标慧安信息技术股份有限公司 物联网中台服务端应用程序远程过程调用方法和系统
CN117041259A (zh) * 2023-09-28 2023-11-10 新华三技术有限公司 计算资源的调度方法及装置
CN117041259B (zh) * 2023-09-28 2024-01-12 新华三技术有限公司 计算资源的调度方法及装置

Also Published As

Publication number Publication date
CN108810042B (zh) 2021-06-29

Similar Documents

Publication Publication Date Title
CN108028780B (zh) 用于数据分析管理的方法及设备
CN104252337B (zh) 网格计算系统中的任务执行方法、边界装置和网格服务器
CN108228347A (zh) 一种任务感知的Docker自适应调度系统
CN102281190B (zh) 负载均衡装置组网方法以及服务器、客户端接入方法
US9628556B2 (en) Decentralized request routing
CN108810042A (zh) 一种任务处理方法、相关设备及系统
US10171973B2 (en) Method and system for MTC event management
CN103001809B (zh) 用于云存储系统的服务节点状态监控方法
CN112815990A (zh) 一种基于物联网技术的配电设备监测系统
CN108009028A (zh) 消息处理方法、装置、设备及计算机可读存储介质
US20120151277A1 (en) Web service information processing method and web service compositing method and appartus using the same
CN109151070B (zh) 基于区块链的点对点cdn的服务调度方法、电子装置
US11838384B2 (en) Intelligent scheduling apparatus and method
CN107819632A (zh) 一种基于性能监控系统和Docker Swarm的动态负载均衡集群系统
CN107943697A (zh) 问题分配方法、装置、系统、服务器和计算机存储介质
US9621438B2 (en) Network traffic management
CN115967951A (zh) 一种优化网络容量的方法、装置及系统
CN117221085A (zh) 一种网络故障预警方法、装置、电子设备及存储介质
WO2023045931A1 (zh) 一种网络性能异常分析方法、装置及可读存储介质
CN115580618A (zh) 一种负载均衡方法、装置、设备及介质
EP2930617A1 (en) Resource management method and device
CN113132174A (zh) 网络设备巡检系统、方法、设备及存储介质
EP4203410A1 (en) User device, server, method, apparatus and computer readable medium for network communication
KR102418896B1 (ko) 지능형 스케줄링 장치 및 방법
CN115037625B (zh) 网络切片处理方法、装置、电子设备及可读存储介质

Legal Events

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