基于消息队列的物联网平台与容器应用通信方法及系统

文档序号:37115333发布日期:2024-02-22 21:14阅读:14来源:国知局
基于消息队列的物联网平台与容器应用通信方法及系统

本发明涉及数据传输,尤其涉及基于消息队列的物联网平台与容器应用通信方法及系统。


背景技术:

1、随着物联网技术的快速发展,越来越多的设备开始联网,这些设备涉及的领域也越来越广泛。物联网设备的传统管理方式往往需要大量的人力和物力投入,效率低下,成本高昂。由此产生了一种新的技术,容器化技术是一种轻量级的虚拟化技术,可以将应用程序和其依赖项打包成一个独立的容器,形成一个轻量级的运行环境,容器化部署方式已经成为一种趋势。能够实现快速部署、高效管理和可移植性等优势。

2、容器与平台间的通信也成为一个重要问题,当前主要的通信方式由http/websocket进行。采用http/websocket进行通信,存在以下问题:接口繁杂,开发工作量大;受网络环境影响,可能存在延迟、丢包;对于深度学习等高响应时间任务,会增加用户等待时间;在访问高峰期,会对平台产生很大压力。


技术实现思路

1、基于此,有必要针对上述技术问题,提供基于消息队列的物联网平台与容器应用通信方法及系统。

2、基于消息队列的物联网平台与容器应用通信方法,应用于包括有物联网平台客户端、以及容器应用客户端的基于消息队列的物联网平台与容器应用通信系统;

3、此方法,包括:

4、建立所述物联网平台客户端与所述容器应用客户端之间的消息队列通道;

5、获取所述物联网平台客户端发送的操作消息,将所述操作通过所述消息队列通道发送给所述容器应用客户端;其中,所述操作消息包括:状态消息、所涉及的物联网设备临时访问令牌、以及任务消息;

6、所述容器应用客户端接收所述操作消息,根据所述操作消息改变容器应用状态,与涉及的物联网设备建立连接,执行相应的任务,得到反馈消息,将所述反馈消息通过所述消息队列通道发送给所述物联网平台客户端;其中,所述反馈消息包括:状态改变消息、以及结果消息;

7、所述物联网平台客户端接收反馈消息,根据所述反馈消息进行消息处理,如任务结束则关闭临时访问令牌,得到对应的消息处理结果。

8、在其中一个实施例中,建立所述物联网平台客户端与所述容器应用客户端之间的消息队列通道之后,还包括:

9、步骤a1:利用公式(1)根据所述物联网平台客户端的客户端专属信息与所述容器应用客户端的客户端专属信息,生成消息队列通道的传输附加数据

10、f2=w2<<len(r2)+r2  (1)

11、其中f2表示消息队列通道的传输附加数据的二进制形式;w2表示所述物联网平台客户端的客户端专属信息的二进制形式;r2表示所述容器应用客户端的客户端专属信息的二进制形式;len()表示求取括号内二进制数据的数据总位数;<<表示左移符号;

12、步骤a2:在所述物联网平台客户端与所述容器应用客户端利用所述消息队列通道进行数据传输时,利用公式(2)在传输数据上添加传输附加数据,得到第一传输数据,所述物联网平台客户端与所述容器应用客户端利用所述消息队列通道传输所述第一传输数据:

13、g2=[f2<<len(g2)+g2]-f2  (2)

14、其中g2表示在所述传输数据上添加传输附加数据后得到的第一传输数据的二进制数据;g2表示所述传输数据的二进制形式;

15、步骤a3:在所述第一传输数据的传输结束后,接收到所述第一传输数据的接收方利用公式(3)根据接收到的数据进行传输附加数据检验,验证第一传输数据是否为所述消息队列通道的专属数据:

16、

17、其中e表示所述第一传输数据是否为所述消息队列通道的专属数据的验证值;g′2表示若验证通过则对所述专属数据进行提取得到的专属数据的二进制形式;>>表示右移符号;

18、若e=1,则表示所述第一传输数据是所述消息队列通道的专属数据,将所述第一传输数据保留;

19、若e=0,则表示所述第一传输数据不是所述消息队列通道的专属数据,将所述第一传输数据舍弃。

20、在其中一个实施例中,将所述操作通过所述消息队列通道发送给所述容器应用客户端包括:

21、将所述操作消息封装为第一消息体,将所述第一消息体通过所述消息队列通道发送给所述容器应用客户端。

22、在其中一个实施例中,将所述操作消息封装为第一消息体包括:

23、根据所述操作消息生成第一操作符、第一消息长度、以及第一消息内容;其中,所述操作消息作为所述第一消息内容;

24、将所述第一操作符、所述第一消息长度、以及所述第一消息内容封装为第一消息体。

25、在其中一个实施例中,根据所述操作消息生成第一操作符、第一消息长度、以及第一消息内容包括:

26、对所述操作消息进行分类,得到分类消息,根据所述分类消息生成第一操作符;其中,所述分类消息包括:状态改变消息、以及任务消息。

27、在其中一个实施例中,容器应用客户端接收所述操作消息,根据所述操作消息得到反馈消息,之前还包括:

28、对所述第一消息体进行解封装,得到所述操作消息。

29、在其中一个实施例中,

30、将所述反馈消息通过所述消息队列通道发送给所述物联网平台客户端包括:

31、将所述反馈消息封装为第二消息体,将所述第二消息体通过所述消息队列通道发送给所述物联网平台客户端;

32、其中,将所述将所述反馈消息封装为第二消息体包括:根据所述反馈消息生成第二操作符、第二消息长度、以及第二消息内容;其中,所述反馈消息作为所述第二消息内容;

33、将所述第二操作符、所述第二消息长度、以及第二消息内容封装为第二消息体。

34、在其中一个实施例中,所述物联网平台客户端接收反馈消息,根据所述反馈消息进行消息处理,得到对应的消息处理结果包括:

35、对所述第二消息体进行解封装,得到所述第二操作符和反馈消息,根据所述第二操作符和所述反馈消息进行消息处理,得到对应的消息处理结果。

36、在其中一个实施例中,物联网平台客户端接收反馈消息,根据所述反馈消息进行消息处理,得到对应的消息处理结果,还包括:

37、根据所述反馈消息生成展示消息,进行可视化反馈消息展示。

38、基于消息队列的物联网平台与容器应用通信系统,用于实现如上所述的基于消息队列的物联网平台与容器应用通信,包括:物联网平台客户端、以及容器应用客户端;

39、建立所述物联网平台客户端与所述容器应用客户端之间的消息队列通道;

40、获取所述物联网平台客户端发送的操作消息,将所述操作通过所述消息队列通道发送给所述容器应用客户端;其中,所述操作消息包括:状态消息、以及任务消息;

41、所述容器应用客户端接收所述操作消息,根据所述操作消息得到反馈消息,将所述反馈消息通过所述消息队列通道发送给所述物联网平台客户端;其中,所述反馈消息包括:状态改变消息、以及结果消息;

42、所述物联网平台客户端接收反馈消息,根据所述反馈消息进行消息处理,得到对应的消息处理结果。

43、相比于现有技术,本发明的优点及有益效果在于:本发明提供的基于消息队列的物联网平台与容器应用通信方法及系统,容器应用向物联网平台发送消息时通过消息队列进行通信,物联网平台的运行与容器应用解耦,不直接依赖于网络连接的稳定性。容器应用和物联网平台可以异步地发送或接收消息,提高通信的灵活性和效率。消息队列可以确保消息的可靠传递,即使在网络不稳定或断开的情况下,消息也不会丢失。在大量调用容器应用的情况下,消息队列能够起到缓冲作用,削弱访问峰值。本发明相比于http api可以提供更可靠、高效的通信机制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1