CN115333939A - 支持边缘计算的物联网网关的运行控制方法、设备及介质 - Google Patents
支持边缘计算的物联网网关的运行控制方法、设备及介质 Download PDFInfo
- Publication number
- CN115333939A CN115333939A CN202210893836.3A CN202210893836A CN115333939A CN 115333939 A CN115333939 A CN 115333939A CN 202210893836 A CN202210893836 A CN 202210893836A CN 115333939 A CN115333939 A CN 115333939A
- Authority
- CN
- China
- Prior art keywords
- program
- internet
- edge computing
- updated
- things gateway
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及物联网网关技术领域,具体提供一种支持边缘计算的物联网网关的运行控制方法,旨在解决支持边缘计算的物联网网关对边缘计算程序进行更新后需要重新启动才能正常使用的问题。为此目的,本发明的一种支持边缘计算的物联网网关的运行控制方法包括:根据云服务器下发的程序更新指令,从云服务器上下载更新后的边缘计算程序的程序文件;采用Python的反射机制动态加载更新后的边缘计算程序的程序文件。通过上述方法,能够使得支持边缘计算的物联网网关具备边缘计算程序的远程更新的功能,并在对边缘计算程序进行更新后无需重新启动即可对更新的边缘计算程序实时生效并进行正常使用。
Description
技术领域
本发明涉及物联网网关技术领域,具体提供一种支持边缘计算的物联网网关的运行控制方法、计算机设备、计算机可读的存储介质及物联网网关。
背景技术
随着物联网的不断发展,物联网的应用越来越广泛,物联网中涉及多种设备,设备可以直接连接到云端服务器,随着设备使用时间的增加,在云端服务器产生的数据和逻辑控制程序也越来越多,则会对云端服务器造成巨大的承载压力,因此,设备会选择连接物联网网关,但是,有的物联网网关需要将设备的逻辑控制程序内置到该物联网网关中,这会造成物联网网关空间的浪费;有的物联网网关不具备远程更新设备的逻辑控制程序的能力,使得设备的逻辑控制程序无法远程更新,给更新工作造成巨大不便;有的物联网网关虽然具备远程更新功能,但是,每次远程更新后,都需要重新启动该物联网网关,才能对更新后的设备的逻辑控制程序生效,同样造成操作麻烦的问题。
相应地,本领域需要一种新的支持边缘计算的物联网网关的运行控制方案来解决上述问题。
发明内容
为了克服上述缺陷,提出了本发明,以提供解决或至少部分地解决支持边缘计算的物联网网关对边缘计算程序进行更新后需要重新启动才能正常使用的技术问题的支持边缘计算的物联网网关的运行控制方法、设备及介质。
在第一方面,本发明提供一种支持边缘计算的物联网网关的运行控制方法,应用于所述物联网网关,所述方法包括:根据云服务器下发的程序更新指令,从所述云服务器上下载更新后的边缘计算程序的程序文件;采用Python的反射机制动态加载所述更新后的边缘计算程序的程序文件。
在上述支持边缘计算的物联网网关的运行控制方法的一个技术方案中,“采用Python的反射机制动态加载所述更新后的边缘计算程序的程序文件”的步骤具体包括:基于Apscheduler定时任务框架创建用于采用Python的反射机制动态加载所述更新后的边缘计算程序的程序文件的定时任务并将所述定时任务加入到定时任务队列中;通过执行所述定时任务,以实现采用Python的反射机制动态加载所述更新后的边缘计算程序的程序文件。
在上述支持边缘计算的物联网网关的运行控制方法的一个技术方案中,“通过执行所述定时任务,以实现采用Python的反射机制动态加载所述更新后的边缘计算程序的程序文件”的步骤具体包括:根据所述定时任务的任务类型,确定下一次执行所述定时任务的时间,在达到所述时间后扫描所述物联网网关中边缘计算程序的程序文件的存储目录是否存储了所述更新后的边缘计算程序的程序文件;若是,则采用Python的反射机制动态加载所述更新后的边缘计算程序的程序文件;其中,所述任务类型包括在指定时间执行一次定时任务、以固定的时间间隔周期性地执行定时任务,以及在每个时段的指定时间分别执行一次定时任务。
在上述支持边缘计算的物联网网关的运行控制方法的一个技术方案中,所述方法还包括通过下列方式删除边缘计算程序:步骤S1:根据接收到的程序删除指令,查询所述定时任务队列中是否存在所述待删除的边缘计算程序对应的定时任务;若存在,则删除所述待删除的边缘计算程序对应的定时任务,随后转至步骤S2;若不存在,则直接转至步骤S2;步骤S2:根据接收到的程序删除指令,查询所述物联网网关是否存储了所述待删除的边缘计算程序的程序文件;若是,则删除所述待删除的边缘计算程序的程序文件。
在上述支持边缘计算的物联网网关的运行控制方法的一个技术方案中,所述方法还包括:向所述云服务器上传所述边缘计算程序的运行数据。
在上述支持边缘计算的物联网网关的运行控制方法的一个技术方案中,所述云服务器被配置成执行下列操作:分别为所述物联网网关的每个边缘计算程序创建一个配置记录;在接收到所述物联网网关上传的所述边缘计算程序的运行数据之后,根据所述边缘计算程序的运行数据对相应配置记录中的信息进行更新;其中,所述配置记录中的信息至少包括所述边缘计算程序的总的执行次数、每次执行失败的次数、每次执行失败的时间和每次执行失败的原因。
在上述支持边缘计算的物联网网关的运行控制方法的一个技术方案中,所述云服务器还被配置成执行下列操作:接收更新后的边缘计算程序的程序文件;校验所述更新后的边缘计算程序的程序文件是否满足更新条件;若满足,则向所述物联网网关下发所述程序更新指令,以便所述物联网网关能够根据所述程序更新指令从所述云服务器上下载所述更新后的边缘计算程序的程序文件,并保存向所述物联网网关下发所述程序更新指令的记录信息。
在第二方面,提供一种计算机设备,该计算机设备包括处理器和存储装置,所述存储装置适于存储多条程序代码,所述程序代码适于由所述处理器加载并运行以执行上述支持边缘计算的物联网网关的运行控制方法的技术方案中任一项技术方案所述的支持边缘计算的物联网网关的运行控制方法。
在第三方面,提供一种计算机可读存储介质,该计算机可读存储介质其中存储有多条程序代码,所述程序代码适于由处理器加载并运行以执行上述支持边缘计算的物联网网关的运行控制方法的技术方案中任一项技术方案所述的支持边缘计算的物联网网关的运行控制方法。
在第四方面,提供一种物联网网关,所述物联网网关包括上述计算机设备的技术方案所述的计算机设备。
本发明上述一个或多个技术方案,至少具有如下一种或多种有益效果:
在实施本发明的技术方案中,可以根据云服务器下发的程序更新指令,从云服务器上下载更新后的边缘计算程序的程序文件,进而采用Python的反射机制动态加载更新后的边缘计算程序的程序文件。其中,Python是一门计算机编程语言,而Python的反射机制就是在程序运行中可以动态的获取程序对象的各种信息例如属性方法,并可以在无需重启服务的前提下,实现程序的相关功能,因此通过根据云服务器下发的程序更新指令,从云服务器上下载更新后的边缘计算程序的程序文件之后,采用Python的反射机制动态加载更新后的边缘计算程序的程序文件,不仅能够通过云服务器远程更新物联网网关的边缘计算程序,还能够在无需重新启动服务的情况下,实现对物联网网关的边缘计算程序进行更新,使得物联网网关具备边缘计算程序更新后的功能,提高了边缘计算程序扩展的方便性,且不影响物联网网关的正常使用,无需重新启动,降低了调试时间,提升了物联网网关的可用时间,同时还提高了程序更新的时效性。
附图说明
参照附图,本发明的公开内容将变得更易理解。本领域技术人员容易理解的是:这些附图仅仅用于说明的目的,而并非意在对本发明的保护范围组成限制。其中:
图1是根据本发明的一个实施例的支持边缘计算的物联网网关的运行控制方法的主要步骤流程示意图;
图2是根据本发明的一个实施例的云服务器下发边缘计算程序的主要步骤流程示意图;
图3是根据本发明的另一个实施例的支持边缘计算的物联网网关的运行控制方法的主要步骤流程示意图;
图4是根据本发明的一个实施例的支持边缘计算的物联网网关删除边缘计算程序的主要步骤流程示意图;
图5是根据本发明的一个实施例的云服务器统计边缘计算程序运行数据的主要步骤流程示意图。
具体实施方式
下面参照附图来描述本发明的一些实施方式。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本发明的技术原理,并非旨在限制本发明的保护范围。
在本发明的描述中,“模块”、“处理器”可以包括硬件、软件或者两者的组合。一个模块可以包括硬件电路,各种合适的感应器,通信端口,存储器,也可以包括软件部分,比如程序代码,也可以是软件和硬件的组合。处理器可以是中央处理器、微处理器、数字信号处理器或者其他任何合适的处理器。处理器具有数据和/或信号处理功能。处理器可以以软件方式实现、硬件方式实现或者二者结合方式实现。非暂时性的计算机可读存储介质包括任何合适的可存储程序代码的介质,比如磁碟、硬盘、光碟、闪存、只读存储器、随机存取存储器等等。
这里先解释本发明涉及到的一些术语。
Python是一种广泛使用的解释型、高级和通用的软件编程语言,提供了高效的高级数据结构、简单有效地面向对象编程等特点,已经逐步为编程领域所重视。
Python的反射机制是指利用字符串去已存在的模块中找到指定的属性或方法,找到方法后自动执行。本实施例中Python的反射机制具体是指利用HTTP请求中操作动作的名称,去物联网网关中边缘计算程序的程序文件的存储目录找到与操作动作相同的名称的程序文件,并进行动态加载。
参阅附图1,图1是根据本发明的一个实施例的支持边缘计算的物联网网关的运行控制方法的主要步骤流程示意图。如图1所示,本发明实施例中的支持边缘计算的物联网网关的运行控制方法主要包括下列步骤S101-步骤S102。
步骤S101:根据云服务器下发的程序更新指令,从云服务器上下载更新后的边缘计算程序的程序文件。
在本实施例中,边缘计算(Edge Computing)是一种利用内置逻辑可以实现数据的传输,接收来自远程设备的控制指令,处理数据的能力。
支持边缘计算的物联网网关指的是具备边缘计算的能力,用于实现物联网数据采集、数据传输、数据删除以及远程控制的无线通信终端。
云服务器是在云环境中实际创建的服务器,是一种比较简单和安全的计算机服务,用户不需要购买服务器硬件,就可以创建多台云服务器。用于为支持边缘计算的物联网网关创建边缘计算程序并进行下发、为支持边缘计算的物联网网关的每个边缘计算程序创建一个配置记录、对支持边缘计算的物联网网关运行边缘计算程序的运行数据进行统计等管理工作。
一个实施方式中,支持边缘计算的物联网网关(以下简称物联网网关)与云服务器连接,操作用户可以在云服务器上创建或者上传物联网网关的边缘计算程序文件并向该物联网网关下发程序更新命令;当物联网网关接收到云服务器下发的程序更新指令之后,从云服务器上下载更新后的边缘计算程序的程序文件。
进一步地,如图2所示,在上述实施方式中云服务器可以通过下列步骤S201至步骤S203向该物联网网关下发程序更新命令。
步骤S201:接收更新后的边缘计算程序的程序文件;
步骤S202:校验更新后的边缘计算程序的程序文件是否满足更新条件,若满足,则执行步骤S203;若不满足,则不向物联网网关下发程序更新命令;
步骤S203:向物联网网关下发程序更新指令,以便物联网网关能够根据程序更新指令从云服务器上下载更新后的边缘计算程序的程序文件,并保存向物联网网关下发程序更新指令的记录信息。
需要说明的是,在步骤S202中,满足更新条件至少包括下列一种条件:
①更新后的边缘计算程序的程序文件是合法正规的文件;②更新后的边缘计算程序的程序文件的格式满足物联网网关需要运行的程序文件的格式。其中,合法正规指的是边缘计算程序的程序文件的内容的结构符合物联网网关要求的程序文件的内容结构。
在步骤S203中,程序更新指令的记录信息至少包括更新的程序文件信息、下发时间、下发状态等信息。其中,程序文件信息指的是更新后的边缘程序的程序文件的唯一标识和程序文件名称;下发状态指的是服务器向物联网网关下发程序更新指令之后,该物联网网关返回的结果信息,即物联网网关接收到该程序更新指令,则返回结果为成功,即下发状态为下发成功,否则,下发状态为下发失败。
步骤S102:采用Python的反射机制动态加载更新后的边缘计算程序的程序文件。
在本实施例中,Python的反射机制是指利用字符串去已存在的模块中找到指定的属性或方法,找到方法后自动执行。
一个实施方式中,采用Python的反射机制动态加载更新后的边缘计算程序的程序文件且更新后的边缘计算程序的程序文件存储在预先设置好的路径下(如:tests/test.py),则可以通过程序语句import tests.test进行查找test.py的更新后的边缘计算程序的程序文件,即导入的语句与文件路径相对应,基于这个机制,可以通过路径字符串,来找到对应的更新后的边缘计算程序的程序文件,从而实现对应更新后的边缘计算程序的程序文件的动态加载。
需要说明的是,通过采用Python的反射机制动态加载更新后的边缘计算程序的程序文件,可以在无需重启服务的前提下,实现各个边缘计算程序的程序文件各自对应的边缘计算程序的更新。
基于上述步骤S101-步骤S102,可以根据云服务器下发的程序更新指令,从云服务器上下载更新后的边缘计算程序的程序文件,进而采用Python的反射机制动态加载更新后的边缘计算程序的程序文件。其中,Python是一门计算机编程语言,而Python的反射机制就是在程序运行中可以动态的获取程序对象的各种信息例如属性方法,并可以在无需重启服务的前提下,实现程序的相关功能,因此通过根据云服务器下发的程序更新指令,从云服务器上下载更新后的边缘计算程序的程序文件之后,采用Python的反射机制动态加载更新后的边缘计算程序的程序文件,不仅能够通过云服务器远程更新物联网网关的边缘计算程序,还能够在无需重新启动服务的情况下,实现对物联网网关的边缘计算程序进行更新,使得物联网网关具备边缘计算程序更新后的功能,提高了边缘计算程序扩展的方便性,且不影响物联网网关的正常使用,无需重新启动,降低了调试时间,提升了物联网网关的可用时间,同时还提高了程序更新的时效性。
参阅附图3,图3是根据本发明的另一个实施例的支持边缘计算的物联网网关的运行控制方法的主要步骤流程示意图。如图3所示,本发明实施例中的支持边缘计算的物联网网关的运行控制方法主要包括下列步骤S301-步骤S305。
步骤S301:根据云服务器下发的程序更新指令,从云服务器上下载更新后的边缘计算程序的程序文件。
在本实施例的实施方式与上述步骤S101中的实施方式相同,此处不再进行重复赘述。
步骤S302:基于Apscheduler定时任务框架创建用于采用Python的反射机制动态加载更新后的边缘计算程序的程序文件的定时任务并将定时任务加入到定时任务队列中。
在本实施例中,Apscheduler的全称为Advanced Python Scheduler,Apscheduler定时任务框架是一款Python开发的定时任务工具,作用为在指定的时间规则执行指定的作业。
一个实施方式中,可以通过Apscheduler定时任务框架创建用于采用Python的反射机制动态加载更新后的边缘计算程序的程序文件的定时任务,其中,定时任务至少包括任务的唯一标识和任务类型等信息,并将该定时任务添加到定时任务队列中。
步骤S303:根据定时任务的任务类型,确定下一次执行定时任务的时间。
在本实施例中,任务类型至少包括在指定时间执行一次定时任务、以固定的时间间隔周期性地执行定时任务,以及在每个时段的指定时间分别执行一次定时任务。
需要说明的是,在指定时间执行一次定时任务指的是在指定的时间只执行一次任务,等该任务结束后不再执行的任务。指定时间可以是本领域技术人员根据实际需要提前设定的时间。例如2022-07-1814:00:00或者2021-05-18 22:00:00等。
以固定的时间间隔周期性地执行定时任务指的是在达到固定的时间间隔时便执行该定时任务,等该任务结束后每经过固定的时间间隔便执行该定时任务的周期性任务。固定的时间间隔可以是本领域技术人员根据实际需要提前设定的时间间隔,该时间间隔可以是秒、分钟、小时、星期、天、月和年等时间间隔。例如:时间间隔可以是3秒、30秒、50秒、5分钟、30分钟、50分钟、1小时、3小时、8小时、2个星期、8天、15天、1个月、3个月、6个月、以及1年等。
每个时段的指定时间分别执行一次定时任务指的是在达到每个时段的指定时间时只执行一次任务,等该任务结束后在获取下个时段的指定时间,并在下个手段的指定时间执行一次任务。每个时段的指定时间可以是本领域技术人员根据实际需要提前设定的时段和时间。例如:2021-09-18的10:00:00和2022-09-18的15:00:00等。
一个实施方式中,可以在确定定时任务的任务类型后,根据任务类型确定下一次执行定时任务的时间。例如,当任务类型为在指定时间一次性定时任务时(指定时间为2022-05-18 23:59:59),则获取任务的指定时间2022-05-18 23:59:59,并在时间为2022-05-18 23:59:59时执行该一次性任务,并在执行完成该任务后不再执行该任务;当任务类型为固定的时间间隔周期性地执行定时任务时(时间间隔周围为1小时),则获取当前的时间,并在当前时间的基础上每隔一个小时执行一次定时任务;当任务类型为每个时段的指定时间分别执行一次定时任务时(时间段的指定时间为2021-09-18的10:00:00和2022-09-18的15:00:00),则获取每个时段的指定时间:2021-09-18的10:00:00和2022-09-18的15:00,并在2021-09-18的10:00:00执行该定时任务,以及在2022-09-18的15:00执行该定时任务。
进一步地,根据任务类型在确定下一次执行定时任务的时间后,执行定时任务的具体实施方式见步骤S304至步骤S305。
步骤S304:在达到时间后扫描物联网网关中边缘计算程序的程序文件的存储目录是否存储了更新后的边缘计算程序的程序文件,若是,则执行步骤S305;若否,则不执行步骤S305。
步骤S305:采用Python的反射机制动态加载更新后的边缘计算程序的程序文件。
在本实施例中,步骤S305中的实施方式与上述步骤S102中的实施方式相同,此处不再进行重复赘述。
基于上述步骤S301-步骤S305,通过根据云服务器下发的程序更新指令,从云服务器上下载更新后的边缘计算程序的程序文件,基于Apscheduler定时任务框架创建用于采用Python的反射机制动态加载更新后的边缘计算程序的程序文件的定时任务并将定时任务加入到定时任务队列中,并根据定时任务的任务类型,确定下一次执行定时任务的时间,在达到时间后扫描物联网网关中边缘计算程序的程序文件的存储目录是否存储了更新后的边缘计算程序的程序文件,在存储目录中存在更新后的边缘计算程序的程序文件时,采用Python的反射机制动态加载所述更新后的边缘计算程序的程序文件,能够通过云服务器远程定时地更新物联网网关的边缘计算程序,且在无需重新启动服务的情况下,实现边缘计算程序更新后的功能,提高了边缘计算程序扩展的方便性,且不影响物联网网关的正常使用,无需重新启动,降低了调试时间,提升了物联网网关的可用时间,同时还提高了程序更新的时效性。。
参阅附图4,图4是根据本发明的一个实施例支持边缘计算的物联网网关删除边缘计算程序的主要步骤流程示意图。如图4所示,本发明实施例中的支持边缘计算的物联网网关删除边缘计算程序主要包括下列步骤S401-步骤S405。
步骤S401:根据接收到的程序删除指令,查询定时任务队列中是否存在待删除的边缘计算程序对应的定时任务,若存在,则执行步骤S302;若不存在,则执行步骤S403。
在本实施例中,可以通过与物联网网关相连接的云服务器向物联网网关下发程序删除指令,也可以是物联网网关自己主动对程序进行删除,其中,物联网网关自己主动对程序进行删除指的是在物联网网关通过Python的反射机制动态加载更新后的边缘计算程序的程序文件之后直接对该程序文件进行删除。本发明实施例不作具体限定。
步骤S402:删除待删除的边缘计算程序对应的定时任务。
在步骤S401至步骤S402中的一个实施方式中,可以根据接收到的程序删除指令,获取针对该程序删除指令的任务的唯一标识,然后根据该任务的唯一标识查询定时任务队列中是否存在待删除的边缘计算程序对应的定时任务,若存在,则控制物联网网关将待删除的边缘计算程序对应的定时任务从任务队列中删除。
步骤S403:根据接收到的程序删除指令,查询物联网网关是否存储了待删除的边缘计算程序的程序文件,若是,则执行步骤S304;若否,则该删除任务结束。
在本实施例中,可以通过与物联网网关相连接的云服务器向物联网网关下发程序删除指令,。本发明实施例不作具体限定。
步骤S404:删除待删除的边缘计算程序的程序文件。
在步骤S403至步骤S404中的一个实施方式中,可以根据接收到的程序删除指令,获取针对该程序删除指令的边缘计算程序的程序文件的唯一标识,然后根据该程序文件的唯一标识查询物联网网关是否存储了待删除的边缘计算程序的程序文件,若存储了程序文件,则控制物联网网关将待删除的边缘计算程序的程序文件进行删除。
基于上述步骤S401-步骤S404,通过根据接收到的程序删除指令,查询定时任务队列中是否存在待删除的边缘计算程序对应的定时任务,并在存在定时任务的情况下,对该任务进行删除,能够减少任务队列中的任务,提高了物联网网关的边缘计算效率;通过根据接收到的程序删除指令,查询物联网网关是否存储了待删除的边缘计算程序的程序文件,并在存在程序文件的情况下,对该程序文件进行删除,能够减少物联网网关的使用空间,有效地提高了物联网网关的使用空间,避免造成物联网网关的使用空间的浪费。
参阅附图5,图5是根据本发明的一个实施例云服务器统计边缘计算程序运行数据的主要步骤流程示意图。如图5所示,本发明实施例中的云服务器统计边缘计算程序运行数据主要包括下列步骤S501-步骤S502。
步骤S501:分别为物联网网关的每个边缘计算程序创建一个配置记录。
在本实施例中,配置记录用于统计物联网网关的每个边缘计算程序在物联网网关运行时产生的数据信息。
一个实施方式中,可以直接获取物联网网关的每个边缘计算程序,然后分别查询云服务器中是否存在每个边缘计算程序的配置记录,若存在,则不再重复创建,如果不存在,则为该边缘计算程序创建一个配置记录。其中,配置记录中的信息至少包括边缘计算程序的总的执行次数、每次执行失败的次数、每次执行失败的时间和每次执行失败的原因。
进一步地,在新创建边缘计算程序的配置记录时,边缘计算程序的配置记录中的总的执行次数设置为0,每次执行失败的次数设置为0。
步骤S502:在接收到物联网网关上传的边缘计算程序的运行数据之后,根据边缘计算程序的运行数据对相应配置记录中的信息进行更新。
一个实施方式中,可以在物联网网关运行边缘计算程序时,将运行数据上传至云服务器,然后云服务器在接收到物联网网关上传的边缘计算程序的运行数据之后,查询该边缘计算程序是否存在对应的配置记录,若存在,则根据边缘计算程序的运行数据对相应配置记录中的信息进行更新。
进一步地,根据边缘计算程序的运行数据对相应配置记录中的信息进行更新可以先获取运行数据中的执行状态,若执行状态为执行成功,则获取配置记录中的总的执行次数,并在总的执行次数的基础上累计加1得到新的总的执行次数,并将新的总的执行次数更新至该配置记录中;若执行状态为执行失败,则获取运行数据中的执行失败时间和执行失败原因,并将该执行失败的时间和执行失败的原因更新至配置记录中,同时获取配置记录中的总的执行次数和每次执行失败次数,并在总的执行次数的基础上累计加1得到新的总的执行次数,在每次执行失败的次数基础上累计加1得到新的每次执行失败的次数,然后将新的总的执行次数和新的每次执行失败的次数更新至该配置记录中。
基于上述步骤S501-步骤S502,通过分别为物联网网关的每个边缘计算程序创建一个配置记录,并在接收到物联网网关上传的边缘计算程序的运行数据之后,根据边缘计算程序的运行数据对相应配置记录中的信息进行更新,能够统计到每个边缘计算程序在物联网网关执行时的执行次数,提高了物联网网关执行边缘计算程序的执行准确性,能够及时地根据执行失败的原因进行调整对应的边缘计算程序,提高了边缘网关的边缘计算能力。
需要指出的是,尽管上述实施例中将各个步骤按照特定的先后顺序进行了描述,但是本领域技术人员可以理解,为了实现本发明的效果,不同的步骤之间并非必须按照这样的顺序执行,其可以同时(并行)执行或以其他顺序执行,这些变化都在本发明的保护范围之内。
进一步,本发明还提供了一种计算机设备。在根据本发明的一个计算机设备实施例中,计算机设备包括处理器和存储装置,存储装置可以被配置成存储执行上述方法实施例的支持边缘计算的物联网网关的运行控制方法的程序,处理器可以被配置成用于执行存储装置中的程序,该程序包括但不限于执行上述方法实施例的支持边缘计算的物联网网关的运行控制方法的程序。为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。
进一步,本发明还提供了一种计算机可读存储介质。在根据本发明的一个计算机可读存储介质实施例中,计算机可读存储介质可以被配置成存储执行上述方法实施例的支持边缘计算的物联网网关的运行控制方法的程序,该程序可以由处理器加载并运行以实现上述支持边缘计算的物联网网关的运行控制方法。为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该计算机可读存储介质可以是包括各种电子设备形成的存储装置设备,可选的,本发明实施例中计算机可读存储介质是非暂时性的计算机可读存储介质。
进一步地,本发明还提供了一种物联网网关。在根据本发明的一个物联网网关实施例中,物联网网关包括上述计算机设备实施例的计算机设备。
至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
Claims (10)
1.一种支持边缘计算的物联网网关的运行控制方法,其特征在于,应用于所述物联网网关,所述方法包括:
根据云服务器下发的程序更新指令,从所述云服务器上下载更新后的边缘计算程序的程序文件;
采用Python的反射机制动态加载所述更新后的边缘计算程序的程序文件。
2.根据权利要求1所述的支持边缘计算的物联网网关的运行控制方法,其特征在于,“采用Python的反射机制动态加载所述更新后的边缘计算程序的程序文件”的步骤具体包括:
基于Apscheduler定时任务框架创建用于采用Python的反射机制动态加载所述更新后的边缘计算程序的程序文件的定时任务并将所述定时任务加入到定时任务队列中;
通过执行所述定时任务,以实现采用Python的反射机制动态加载所述更新后的边缘计算程序的程序文件。
3.根据权利要求2所述的支持边缘计算的物联网网关的运行控制方法,其特征在于,“通过执行所述定时任务,以实现采用Python的反射机制动态加载所述更新后的边缘计算程序的程序文件”的步骤具体包括:
根据所述定时任务的任务类型,确定下一次执行所述定时任务的时间,在达到所述时间后扫描所述物联网网关中边缘计算程序的程序文件的存储目录是否存储了所述更新后的边缘计算程序的程序文件;
若是,则采用Python的反射机制动态加载所述更新后的边缘计算程序的程序文件;
其中,所述任务类型包括在指定时间执行一次定时任务、以固定的时间间隔周期性地执行定时任务,以及在每个时段的指定时间分别执行一次定时任务。
4.根据权利要求2所述的支持边缘计算的物联网网关的运行控制方法,其特征在于,所述方法还包括通过下列方式删除边缘计算程序:
步骤S1:根据接收到的程序删除指令,查询所述定时任务队列中是否存在所述待删除的边缘计算程序对应的定时任务;
若存在,则删除所述待删除的边缘计算程序对应的定时任务,随后转至步骤S2;若不存在,则直接转至步骤S2;
步骤S2:根据接收到的程序删除指令,查询所述物联网网关是否存储了所述待删除的边缘计算程序的程序文件;
若是,则删除所述待删除的边缘计算程序的程序文件。
5.根据权利要求1所述的支持边缘计算的物联网网关的运行控制方法,其特征在于,所述方法还包括:
向所述云服务器上传所述边缘计算程序的运行数据。
6.根据权利要求5所述的支持边缘计算的物联网网关的运行控制方法,其特征在于,所述云服务器被配置成执行下列操作:
分别为所述物联网网关的每个边缘计算程序创建一个配置记录;
在接收到所述物联网网关上传的所述边缘计算程序的运行数据之后,根据所述边缘计算程序的运行数据对相应配置记录中的信息进行更新;
其中,所述配置记录中的信息至少包括所述边缘计算程序的总的执行次数、每次执行失败的次数、每次执行失败的时间和每次执行失败的原因。
7.根据权利要求1所述的支持边缘计算的物联网网关的运行控制方法,其特征在于,所述云服务器还被配置成执行下列操作:
接收更新后的边缘计算程序的程序文件;
校验所述更新后的边缘计算程序的程序文件是否满足更新条件;
若满足,则向所述物联网网关下发所述程序更新指令,以便所述物联网网关能够根据所述程序更新指令从所述云服务器上下载所述更新后的边缘计算程序的程序文件,并保存向所述物联网网关下发所述程序更新指令的记录信息。
8.一种计算机设备,包括处理器和存储装置,所述存储装置适于存储多条程序代码,其特征在于,所述程序代码适于由所述处理器加载并运行以执行权利要求1至7中任一项所述的支持边缘计算的物联网网关的运行控制方法。
9.一种计算机可读存储介质,其中存储有多条程序代码,其特征在于,所述程序代码适于由处理器加载并运行以执行权利要求1至7中任一项所述的支持边缘计算的物联网网关的运行控制方法。
10.一种物联网网关,其特征在于,所述物联网网关包括权利要求8所述的计算机设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210893836.3A CN115333939A (zh) | 2022-07-27 | 2022-07-27 | 支持边缘计算的物联网网关的运行控制方法、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210893836.3A CN115333939A (zh) | 2022-07-27 | 2022-07-27 | 支持边缘计算的物联网网关的运行控制方法、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115333939A true CN115333939A (zh) | 2022-11-11 |
Family
ID=83920353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210893836.3A Pending CN115333939A (zh) | 2022-07-27 | 2022-07-27 | 支持边缘计算的物联网网关的运行控制方法、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115333939A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108132830A (zh) * | 2016-12-01 | 2018-06-08 | 北京金山云网络技术有限公司 | 一种任务调度方法、装置及系统 |
CN108762900A (zh) * | 2018-05-21 | 2018-11-06 | 平安科技(深圳)有限公司 | 高频任务调度方法、系统、计算机设备和存储介质 |
CN109951559A (zh) * | 2019-03-27 | 2019-06-28 | 京东方光科技有限公司 | 定时任务配置方法、服务器、系统和计算机可读存储介质 |
CN109977670A (zh) * | 2019-03-12 | 2019-07-05 | 福建天晴数码有限公司 | 基于插件加载的安卓应用安全监测方法、存储介质 |
US20210234749A1 (en) * | 2020-01-28 | 2021-07-29 | Salesforce.Com, Inc. | Applying configurations to applications in a multi-server environment |
CN113986679A (zh) * | 2021-11-05 | 2022-01-28 | 中国工商银行股份有限公司 | 基于配置信息热加载的性能分析方法及装置 |
-
2022
- 2022-07-27 CN CN202210893836.3A patent/CN115333939A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108132830A (zh) * | 2016-12-01 | 2018-06-08 | 北京金山云网络技术有限公司 | 一种任务调度方法、装置及系统 |
CN108762900A (zh) * | 2018-05-21 | 2018-11-06 | 平安科技(深圳)有限公司 | 高频任务调度方法、系统、计算机设备和存储介质 |
CN109977670A (zh) * | 2019-03-12 | 2019-07-05 | 福建天晴数码有限公司 | 基于插件加载的安卓应用安全监测方法、存储介质 |
CN109951559A (zh) * | 2019-03-27 | 2019-06-28 | 京东方光科技有限公司 | 定时任务配置方法、服务器、系统和计算机可读存储介质 |
US20210234749A1 (en) * | 2020-01-28 | 2021-07-29 | Salesforce.Com, Inc. | Applying configurations to applications in a multi-server environment |
CN113986679A (zh) * | 2021-11-05 | 2022-01-28 | 中国工商银行股份有限公司 | 基于配置信息热加载的性能分析方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20140032833A1 (en) | Dynamic Disk Space Management In A File System | |
CN111737227B (zh) | 数据修改方法及系统 | |
EP2674868A1 (en) | Database update notification method | |
US9742884B2 (en) | Retry mechanism for data loading from on-premise datasource to cloud | |
CN111190573A (zh) | 应用程序埋点方法、装置和电子设备 | |
CN110765394A (zh) | so文件加载方法、装置、存储介质及终端设备 | |
CN115329170A (zh) | 网页抓取方法、装置、设备以及存储介质 | |
CN113468143A (zh) | 数据迁移方法、系统、计算设备及存储介质 | |
CN111078418B (zh) | 操作同步方法、装置、电子设备及计算机可读存储介质 | |
US11120007B2 (en) | Module expiration management | |
CN115333939A (zh) | 支持边缘计算的物联网网关的运行控制方法、设备及介质 | |
WO2017036197A1 (zh) | 一种网元模型管理方法及装置 | |
CN113535206B (zh) | 多版本代码升级方法及系统 | |
CN105653341A (zh) | 一种网络发票客户端的升级方法、装置及系统 | |
CN115629784A (zh) | 更新机台文件的方法、系统、设备及计算机可读存储介质 | |
CN111159142A (zh) | 一种数据处理方法及装置 | |
US7296084B2 (en) | Data management system and method | |
CN111367740B (zh) | 一种bmc的调试系统、方法及计算机可读存储介质 | |
CN108614868B (zh) | 一种数据库自动升级方法 | |
JP2013186765A (ja) | バッチ処理システム、進捗状況確認装置、進捗状況確認方法、及びプログラム | |
CN112416430A (zh) | 一种接口文档生成方法、装置、设备及存储介质 | |
CN110659042A (zh) | 一种服务器固件管理方法与装置 | |
CN112579139B (zh) | 一种多集群补丁更新方法、系统、服务器和存储介质 | |
TWI732291B (zh) | 依據角色權限提供預載內容的系統及方法 | |
CN109542598B (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 |