一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种物联网边缘计算远程调试方法及框架与流程

2023-01-15 11:02:18 来源:中国专利 TAG:


1.本发明属于物联网边缘计算领域,尤其涉及一种物联网边缘计算远程调试方法及框架。


背景技术:

2.随着物联网技术近年的发展以及市场需求,愈来愈多的设备接入云端,众多不同种类的设备产生的海量原始数据被推送到集中型云进行存储、分析、管理、决策等。由于设备的交互属性,上报数据所产生的分析结果需要再回传到设备,这样会产生两个较为突出的问题:其一实时性差,将数据传送到云计算中心,再请求数据处理结果,增大了系统延迟;其二是带宽不足,将众多数据传输至云端会给网络带宽的很大压力。边缘计算则应运而生,便于在互联网边缘实行数据解决和分析,更贴近数据源,由此市场上出现大量的边缘网关的产品。然而,此类产品大部分都为固定化程序,在实际应用过程中难以进行错误调试,一旦安装后期的维护成本则会提高。


技术实现要素:

3.有鉴于此,本发明实施例提供了一种物联网边缘计算远程调试方法及架构,用于解决边缘计算调试困难,维护成本高的问题。
4.在本发明实施例的第一方面,提供了一种物联网边缘计算远程调试方法,包括:
5.安全认证服务启动后,本地认证服务读取当前设备唯一编码以及内置秘钥文件进行加密处理,远端身份认证进行认证校验,校验通过后,云服务下发远程通信模块所需的秘钥信息;
6.远程通信模块基于密钥信息建立与云端的mqtt通信,并通过下行通信下发远端调试任务;
7.动态发布模块接收到的远端调试任务,根据调试任务程序的不同,分别进行脚本执行、程序包执行,执行完毕后,采集执行结果并通过上行通信上报至云端。
8.在本发明实施例的第二方面,提供了一种用于物联网边缘计算远程调试的架构,包括安全认证模块、远程通信模块和动态发布模块,所述安全认证模块包括本地认证服务和远端身份认证,所述远程通信模块包括上行通信和下行通信,所述动态发布模块包括发布调试单元、程序包执行引擎和脚本执行引擎;
9.其中,安全认证服务启动后,所述本地认证服务读取当前设备唯一编码以及内置秘钥文件进行加密处理,所述远端身份认证进行身份认证校验,校验通过后,云服务下发远程通信模块所需的秘钥信息;
10.所述远程通信模块基于密钥信息建立与云端的mqtt通信,并通过下行通信下发远端调试任务;
11.所述动态发布模块接收到远端调试任务后,所述发布调试单元根据调试任务程序的不同进行任务分发,所述脚本执行引擎进行脚本执行,所述程序包执行引擎进行程序包
执行,执行完毕后,采集执行结果并通过上行通信上报至云端。
12.在本发明实施例的第三方面,提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器运行的计算机程序,所述处理器执行所述计算机程序时实现如本发明实施例第一方面所述方法的步骤。
13.在本发明实施例的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例第一方面提供的所述方法的步骤。
14.本发明实施例中,基于安全认证服务、远程通信,接收远端调试任务,根据调试任务程序的不同,分别进行脚本执行、程序包执行,执行完毕后,将执行结果上报至云端,从而能够实现线上诊断调试边缘设备,降低边缘设备运维成本,同时,方便进行功能扩展。
附图说明
15.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单介绍,显而易见地,下面描述的附图仅仅是本发明的一些实施例,对本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获取其他附图。
16.图1为本发明一个实施例提供的一种物联网边缘计算远程调试方法的流程示意图;
17.图2为本发明一个实施例提供的边缘设备业务扩展的原理示意图;
18.图3为本发明一个实施例提供的一种用于物联网边缘计算远程调试的架构的结构示意图;
19.图4为本发明的一个实施例提供的一种电子设备的结构示意图。
具体实施方式
20.为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
21.应当理解,本发明的说明书或权利要求书及上述附图中的术语“包括”以及其他相近意思表述,意指覆盖不排他的包含,如包含一系列步骤或单元的过程、方法或系统、设备没有限定于已列出的步骤或单元。此外,“第一”“第二”用于区分不同对象,并非用于描述特定顺序。
22.请参阅图1,本发明实施例提供的一种物联网边缘计算远程调试方法的流程示意图,包括:
23.s101、安全认证服务启动后,本地认证服务读取当前设备唯一编码以及内置秘钥文件进行加密处理,远端身份认证进行认证校验,校验通过后,云服务下发远程通信模块所需的秘钥信息;
24.所述安全认证服务用于为物联网边缘计算设备提供认证服务,在与云端进行数据
传输前需要进行身份认证,认证通过后才可以进行建立远程通信。
25.本地认证服务读取边缘计算设备的唯一编码和内置的密钥,动态加密生成认证信息,远端身份认证接收到认证信息后,进行解密认证、校验。设备身份校验通过后,云服务会下发通信密钥,用于边缘计算设备与云端的远程安全通信。
26.s102、远程通信模块基于密钥信息建立与云端的mqtt通信,并通过下行通信下发远端调试任务;
27.mqtt(message queuing telemetry transport,即消息队列遥测传输)通信,是为硬件性能低下或网络状况糟糕的远程设备而设计的发布/订阅型消息协议,具有轻量、简单、易于开发等特点。采用mqtt协议可以为低带宽和不稳定的网络环境中的物联网设备提供可靠的网络服务。在远程通信模块核心上定义上行通信、下行通信两个topic。
28.其中,所述远端调试任务为json结构化格式,任务类型分为动态程序发布任务和扩展业务任务。
29.s103、动态发布模块接收到的远端调试任务,根据调试任务程序的不同,分别进行脚本执行、程序包执行,执行完毕后,采集执行结果并通过上行通信上报至云端。
30.云端发送的远程调试任务可以分为脚本和程序包两种类型,两种类型调试任务可以由不同引擎执行。执行完毕后,采集执行结果并通过远程通信模块中的上行通信上传至云端。
31.具体的,程序包执行引擎根据调试任务内容中程序包下载地址进行程序下载,并通过系统命令执行exec程序(找到可执行文件);脚本执行引擎直接执行javascript脚本内容,可以由nodejs解析脚本程序。
32.其中,所述动态发布模块采用flow流程设计,全局定义核心index.js,并至少定义启动节点、加载任务节点、输出节点、结束节点、执行子流程flow共5个核心方法。
33.所述启动节点用于将接收到的任务注入到各个节点中,所述加载任务节点用于执行任务程序,若执行任务中包含有其他定义的流程设计则进入执行子流程flow,所述执行子流程flow设计方式与全局方法一致,进行嵌套执行,当任务完成后通过所述输出节点输出结果,并通过所述结束节点回收资源进行日志记录。
34.在一个实施例中,所述s103还包括:
35.扩展业务模块接收到扩展业务任务后,判断是否需要补充新组件,若判定缺少组件,则动态安装所需组件;
36.执行扩展业务任务所需协议数据,并通过扩展调试收集执行结果上报至云端。
37.示例性的,如图2所示,对nodejs动态部署下扩展新的计算引擎进行说明。扩展新的计算引擎其核心基础是图1中边缘计算远程调试方法,本实施例提供一套标准的接口,具体可以采用http协议或动态库的方式,为原有的计算引擎提供扩展性。其设计流程如下所述:原有计算引擎s1驱动计算方法执行计算逻辑s2,可以调用本发明中扩展计算引擎n1中标准接口n100,然后执行边缘计算调试方法n101,所述调试方法其核心为动态发布模块、扩展业务模块。调试方法进行计算后输出结果,并通过标准接口n100返回给计算逻辑s2,处理合并原有计算信息后s3输出最终结果。
38.其中,所述扩展业务模块中业务所需组件采用npm(node package manager,即node包管理器)管理,扩展业务定义采用接口模式暴露对应组件协议的参数标准json。
39.扩展调试设计中,针对对应的组件内置空内容,定义一个比对对象(如diff对象),对象标识由部署而发生的更改动态替换任务执行内容,执行完成后输出执行结果。
40.需要说明的是,本实施例中的远程调试方法,其采用nodejs作为底层计算框架,可以包括安全认证服务、远程通信模块、动态发布模块以及扩展业务模块。
41.本实施例中,采用nodejs作为底层引擎,可以动态进行部署发布,及时应变实时突发情况,并可以作为在线诊断工具,能够分析,诊断边缘设备。远程调试功能可扩展新的计算引擎,提升原有边缘计算功能扩展性、灵活性。可以为物联网网关升级为边缘计算智能网关提供技术支持,并可进行远程运维调试,节省运维成本。
42.应理解,上述实施例中各步骤的序号大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
43.图3为本发明实施例提供的一种用于物联网边缘计算远程调试的框架的结构示意图,该框架包括安全认证模块310、远程通信模块320和动态发布模块330,所述安全认证模块310包括本地认证服务和远端身份认证,所述远程通信模块320包括上行通信和下行通信,所述动态发布模块330包括发布调试单元、程序包执行引擎和脚本执行引擎;
44.其中,安全认证服务启动后,所述本地认证服务读取当前设备唯一编码以及内置秘钥文件进行加密处理,所述远端身份认证进行身份认证校验,校验通过后,云服务下发远程通信模块所需的秘钥信息;
45.所述远程通信模块320基于密钥信息建立与云端的mqtt通信,并通过下行通信下发远端调试任务;
46.其中,所述远端调试任务为json结构化格式,任务类型分为动态程序发布任务和扩展业务任务。
47.所述动态发布模块330接收到远端调试任务后,所述发布调试单元根据调试任务程序的不同进行任务分发,所述脚本执行引擎进行脚本执行,所述程序包执行引擎进行程序包执行,执行完毕后,采集执行结果并通过上行通信上报至云端。
48.具体的,程序包执行引擎根据调试任务内容中程序包下载地址进行程序下载,并通过系统命令执行exec程序;
49.脚本执行引擎直接执行javascript脚本内容。
50.优选的,所述动态发布模块330采用flow流程设计,全局定义核心index.js,并至少定义启动节点、加载任务节点、输出节点、结束节点、执行子流程flow共5个核心方法。
51.所述启动节点用于将接收到的任务注入到各个节点中,所述加载任务节点用于执行任务程序,若执行任务中包含有其他定义的流程设计则进入执行子流程flow,所述执行子流程flow设计方式与全局方法一致,进行嵌套执行,当任务完成后通过所述输出节点输出结果,并通过所述结束节点回收资源进行日志记录。
52.在一个实施例中,所述用于物联网边缘计算远程调试的架构还包括扩展业务模块340,所述扩展业务模块30包括动态组件安全单元、协议解析执行单元和扩展调试单元;
53.所述扩展业务模块接收到扩展业务任务后,判断是否需要补充新组件,若判定缺少组件,则基于动态组件安全单元安装所需组件;
54.所述协议解析执行单元用于执行扩展业务任务所需协议数据,并通过所述扩展调试单元收集执行结果上报至云端。
55.优选的,所述扩展业务模块340中业务所需组件采用npm管理,扩展业务定义采用接口模式暴露对应组件协议的参数标准json;
56.扩展调试设计中,针对对应的组件内置空内容,定义一个比对对象,对象标识由部署而发生的更改动态替换任务执行内容,执行完成后输出执行结果。
57.其中,该架构采用采用nodejs作为底层计算框架的引擎,可以动态进行部署发布,及时应变实时突发情况。同时,可以作为在线诊断工具,能够分析、诊断边缘设备,并便于扩展新的计算引擎,增强边缘设备的扩展性、灵活性。
58.所述领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和架构的具体工作过程可以参考前述方法实施例中对应的过程,在此不再赘述。
59.图4是本发明一实施例提供的一种电子设备的结构示意图。所述电子设备用于物联网边缘计算的远程调试。如图4所示,该实施例的电子设备4包括:存储器410、处理器420以及系统总线430,所述存储器410包括存储其上的可运行的程序4101,本领域技术人员可以理解,图4中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
60.下面结合图4对电子设备的各个构成部件进行具体的介绍:
61.存储器410可用于存储软件程序以及模块,处理器420通过运行存储在存储器410的软件程序以及模块,从而执行电子设备的各种功能应用以及数据处理。存储器410可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据(比如缓存数据)等。此外,存储器410可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
62.在存储器410上包含网络请求方法的可运行程序4101,所述可运行程序4101可以被分割成一个或多个模块/单元,所述一个或多个模块/单元被存储在所述存储器410中,并由处理器420执行,以实现边缘设备远程调试等,所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序4101在所述电子设备4中的执行过程。例如,所述计算机程序4101可以被分割为安全认证模块、远程通信模块、动态发布模块和扩展业务模块等功能模块。
63.处理器420是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器410内的软件程序和/或模块,以及调用存储在存储器410内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体状态监控。可选的,处理器420可包括一个或多个处理单元;优选的,处理器420可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器420中。
64.系统总线430是用来连接计算机内部各功能部件,可以传送数据信息、地址信息、控制信息,其种类可以是例如pci总线、isa总线、can总线等。处理器420的指令通过总线传递至存储器410,存储器410反馈数据给处理器420,系统总线430负责处理器420与存储器410之间的数据、指令交互。当然系统总线430还可以接入其他设备,例如网络接口、显示设备等。
65.在本发明实施例中,该电子设备所包括的处理420执行的可运行程序包括:
66.安全认证服务启动后,本地认证服务读取当前设备唯一编码以及内置秘钥文件进行加密处理,远端身份认证进行认证校验,校验通过后,云服务下发远程通信模块所需的秘钥信息;
67.远程通信模块基于密钥信息建立与云端的mqtt通信,并通过下行通信下发远端调试任务;
68.动态发布模块接收到的远端调试任务,根据调试任务程序的不同,分别进行脚本执行、程序包执行,执行完毕后,采集执行结果并通过上行通信上报至云端。
69.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
70.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
71.以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献