CN114356348A - 一种运行引擎系统及其应用 - Google Patents

一种运行引擎系统及其应用 Download PDF

Info

Publication number
CN114356348A
CN114356348A CN202210013201.XA CN202210013201A CN114356348A CN 114356348 A CN114356348 A CN 114356348A CN 202210013201 A CN202210013201 A CN 202210013201A CN 114356348 A CN114356348 A CN 114356348A
Authority
CN
China
Prior art keywords
app
subsystem
engine system
module
management module
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
Application number
CN202210013201.XA
Other languages
English (en)
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.)
State Grid Shaanxi Electric Power Co Ltd Information And Communication Co
Original Assignee
State Grid Shaanxi Electric Power Co Ltd Information And Communication Co
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 State Grid Shaanxi Electric Power Co Ltd Information And Communication Co filed Critical State Grid Shaanxi Electric Power Co Ltd Information And Communication Co
Priority to CN202210013201.XA priority Critical patent/CN114356348A/zh
Publication of CN114356348A publication Critical patent/CN114356348A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本申请涉及物联网技术领域,具体涉及一种运行引擎系统及其应用。现有终端出现问题,需要厂商提供支持;需要新功能提升,只能购买厂商新终端,效率低,成本高。本申请提供一种运行引擎系统,包括开发语言运行环境和子系统组,子系统组包括消息总线子系统,APP运行子系统,APP管理子系统和APP运维子系统,APP运行子系统与消息总线子系统连接,APP管理子系统与消息总线子系统连接,APP运维子系统与消息总线子系统连接;运行引擎系统设置于边缘物联代理设备上,物联APP运行于所述运行引擎系统上,所述运行引擎系统与云端系统连接。该引擎安装于边缘物联代理设备上,通过交叉编译,适配各类边缘物联代理设备。

Description

一种运行引擎系统及其应用
技术领域
本申请涉及物联网技术领域,具体涉及一种运行引擎系统及其应用。
背景技术
随着物联网时代到来,人们对物联设备的数量和能力需求逐渐提高,在电力等其他行业中,常见的监测、遥控、计算等物联场景需求,都会采用边缘物联代理+端侧传感设备的架构实现。边缘物联代理通常是一台小型计算机,具备基础的计算和传输功能,下接各类端侧传感设备及开关设备,用于监测和遥控。端侧设备大多为成品,采用modbus等通用协议交互,边缘物联代理则是承上启下的角色,对下,需要能解析和发送多种协议的报文,与端侧通信。对上,需要能与上层的云端系统通信,上传端侧设备采集的数据,或是接收云端下发的指令,亦或完成边缘计算的任务。
物联网时代,端侧数据爆炸式上涨,传统的边端采集+云端计算的方式,对云端的数据中心及计算能力提出了新的挑战,为了应对海量数据的冲击,边缘计算是一种常见的应对思路。边缘物联代理通过物联APP计算,将采集到的数据就地解决,仅仅上报业务所需的结果数据,大大降低了云端应用的压力。也发挥了边缘物联代理的计算能力。以监测告警类业务为例,边缘物联代理定期执行监测任务,并根据特定算法进行计算,若一切正常,则根据业务要求,不上报或仅上报少量数据。在异常发生时,再上报异常结果及详细信息。降低了云端计算和云边之间通信的压力。
现有的的监测、遥控以及计算等功能,通常采用在边缘物联代理中运行的物联APP实现。目前,大多边缘物联代理采用嵌入式arm、arm64架构的计算机,厂商多,出于技术和商业上的考虑,不同厂商之间的物联APP通常无法复用,且大多在出厂时预装,后续也不提供修改和更新的能力。
现有终端出现问题,需要厂商提供支持;需要新功能提升,只能购买厂商新终端,对用户来讲,效率低,成本高。
发明内容
本申请的目的是提供一种运行引擎系统,通过交叉编译适配各类物联终端,实现物联APP跨厂商、跨类型物联终端的通用化部署。
1、本申请所采用的技术方案是;本申请提供一种运行引擎系统,包括开发语言运行环境和子系统组,所述子系统组包括消息总线子系统,APP运行子系统,APP管理子系统和APP运维子系统,所述APP运行子系统与所述消息总线子系统连接,所述APP管理子系统与所述消息总线子系统连接,所述APP运维子系统与所述消息总线子系统连接;所述开发语言运行环境用于为所述子系统组提供代码解释及线程管理;所述运行引擎系统设置于边缘物联代理设备上,物联APP运行于所述运行引擎系统上,所述运行引擎系统与云端系统连接。
本申请提供的另一种实施方式为:所述开发语言为Node.js语言,c语言,java,python或者go语言。
本申请提供的另一种实施方式为:所述消息总线子系统采用MQTT通信协议,DDS通信协议、AMQP通信协议、XMPP通信协议、JMS通信协议、REST通信协议或者CoAP通信协议。
本申请提供的另一种实施方式为:所述APP运行子系统包括APP拼合模块、APP控制模块和APP执行模块;所述APP拼合模块用于将APP组合为可运行的js代码;所述APP控制模块用于实现物联APP的启动、暂停、恢复以及停止;所述APP执行模块用于将多个APP封装在不同的异步函数中,实现物联APP的高性能运行。
本申请提供的另一种实施方式为:所述APP管理子系统包括APP版本管理模块、APP注册管理模块和APP资源管理模块;所述APP版本管理模块用于实现同一APP不同版本下发时的管理;所述APP注册管理模块用于在APP资源中心注册APP信息;所述APP资源管理模块用于APP资源管理,负责存储本引擎运行中APP的节点文件和流程文件,并向APP拼合模块发送新下发或需要更新的APP的节点及流程文件。
本申请提供的另一种实施方式为:所述APP运维子系统包括消息回传模块、日志管理模块和运维管理模块;所述消息回传模块用于回传APP的运行结果至云端系统;所述日志管理模块用于生成并管理引擎日志;所述运维管理模块用于控制运行中APP的运行状态,通过订阅消息总线子系统上特定主题,接收云端系统下发的指令。
本申请提供的另一种实施方式为:所述引擎日志包括引擎运行信息和APP运行信息。
本申请提供的另一种实施方式为:所述指令内容包括指令类型和APP ID;所述指令类型包括启动、停止、暂停和恢复。
本申请还提供一种基于所述的运行引擎系统的应用,将所述运行引擎系统应用于云编排APP。
本申请提供的另一种实施方式为:所述云编排APP包括组件、流程和APP描述信息;所述组件包括组件逻辑代码和组件描述信息。
本申请的有益效果是,本申请提出的运行引擎系统,适用于边缘物联代理的物联APP运行引擎。
本申请提出的运行引擎系统,该引擎安装于边缘物联代理设备上,通过交叉编译,适配各类边缘物联代理设备。
本申请提出的运行引擎系统,物联APP运行于运行引擎之上,对底层硬件的差异无感知,实现物联APP的通用部署;引擎可接受从云端下发的物联APP,实现物联APP远程安装;引擎可回传物联APP的运行数据至云端,用户可在云端下发指定,控制物联APP的启动、停止、更新、删除,实现物联APP的云端运维。
附图说明
图1为本申请的运行引擎系统原理示意图;
图2为本申请的APP运维子系统中运维管理模块原理示意图;
图3为本申请的APP管理子系统-APP版本管理模块流程示意图;
图4为本申请的APP管理子系统-APP注册管理模块流程示意图;
图5为本申请的APP资源管理模块基本存储结构示意图;
图6为本申请的APP资源管理模块新入APP操作流程示意图;
图7为本申请的云端停止APP运行时的原理流程示意图;
图8为本申请的引擎启动工作流程示意图;
图9为本申请的云端系统下发APP时的工作流程示意图;
图10为本申请的云端系统下发指令时的流程示意图;
图11为本申请的云编排APP原理示意图。
具体实施方式
在下文中,将参考附图对本申请的具体实施例进行详细地描述,依照这些详细的描述,所属领域技术人员能够清楚地理解本申请,并能够实施本申请。在不违背本申请原理的情况下,各个不同的实施例中的特征可以进行组合以获得新的实施方式,或者替代某些实施例中的某些特征,获得其它优选的实施方式。
参见图1~11,本申请提供一种运行引擎系统,包括开发语言运行环境1和子系统组,所述子系统组包括消息总线子系统2,APP运行子系统3,APP管理子系统4和APP运维子系统5,所述APP运行子系统3与所述消息总线子系统2连接,所述APP管理子系统4与所述消息总线子系统3连接,所述APP运维子系统5与所述消息总线子系统2连接;所述开发语言运行环境1用于为所述子系统组提供代码解释及线程管理,根据子系统所选择的开发语言不同,运行环境也不同,二者一一对应。
所述运行引擎系统设置于边缘物联代理设备上,物联APP运行于所述运行引擎系统上,所述运行引擎系统与云端系统6连接。
进一步地,所述开发语言为Node.js语言,c语言,java,python或者go语言。
本申请提出的引擎,采用Node.js开发,包含Node.js运行时、消息总线、APP运行功能、APP管理功能以及APP运维功能五大部分。
进一步地,所述消息总线子系统采用MQTT通信协议,DDS通信协议、AMQP通信协议、XMPP通信协议、JMS通信协议、REST通信协议或者CoAP通信协议。
本申请的运行引擎系统中所使用的消息总线子系统2,用于在引擎各模块间通信。由于引擎应用于物联网领域,采用MQTT协议。MQTT通信协议为“发布——订阅”模式,建立MQTT broker作为信道,发布者可在连接broker之后,发布由“主题+报文”组成的消息。订阅者可连接broker,订阅目标主题,从而获得需要的报文。每个模块都带有MQTT发布及MQTT订阅的功能。
进一步地,所述APP运行子系统3包括APP拼合模块7、APP控制模块8和APP执行模块9;所述APP拼合模块7用于将APP组合为可运行的js代码;所述APP控制模块8用于实现物联APP的启动、暂停、恢复以及停止;所述APP执行模块9用于将多个APP封装在不同的异步函数中,实现物联APP的高性能运行。
由于物联网应用具有功能简单、周期重复的特性,APP控制模块8采用定时器的方式实现控制,定时器ID与APPID相同。APP一旦开始执行,则定时器自动启动,重复执行APP。APP控制模块8仅作引擎内APP的控制,不作管理,除第一次启动时自动执行启动命令之外,其他情况下的启动、暂停、恢复、停止命令,来自APP运维子系统5中的运维管理模块15,以及APP管理子系统4中的APP资源管理模块12。
本申请所提出的运行引擎,基于Node.js实现,由于Node.js具有单线程异步的高性能,引擎可同时运行多个物联APP。多个物联APP无需启动多个进程,采用APP执行模块9,将多个APP封装在不同的异步函数中,实现物联APP的高性能运行。APP执行模块9包括匿名函数创建、函数异步执行以及回调结果查看。
由APP拼合模块7实现从云编排APP到Node.js可执行的js文件的转变之后,该js文件会交给APP执行模块,APP执行模块9首先会创建匿名函数,将js文件中的可执行代码包裹起来,实现APP之间的隔离,并创建回调函数,定义该APP执行完成、或执行异常之后报给引擎的状态结果。之后将多个匿名函数异步执行,并开启回调结果查看,轮询查看各个APP的回调结果,实时监测各APP的运行情况。
进一步地,所述APP管理子系统4包括APP版本管理模块10、APP注册管理模块11和APP资源管理模块12;所述APP版本管理模块10用于实现同一APP不同版本下发时的管理,通过订阅消息总线上的特定主题,获取APP及APP的版本信息,做出相应的判断。当云端系统6下发APP时,首先由APP版本管理模块10做处理,若为新APP第一次下发,或已有APP下发新版本,则交给APP注册管理模块11处理。若有已有APP的更旧、或者同版本APP,则不作处理。
所述APP注册管理模块11用于在APP资源中心注册APP信息;当云端系统6下发APP时,由APP版本管理模块10控制版本信息,若为新APP第一次下发,或已有APP下发的新版本,APP版本管理模块10会给模块发送信息,由APP注册管理模块11完成APP的注册功能,APP注册管理模块11维护“引擎在运APP”表。注册过程为:若为新APP第一次下发,则在引擎在运APP表中新建一条记录,内容为APPID、版本号、更新时间;若为已有APP的新版本下发,则根据APPID搜索已有记录,更新表中对应APP的版本号与更新时间。
所述APP资源管理模块12用于APP资源管理,负责存储本引擎运行中APP的节点文件和流程文件,并向APP拼合模块发送新下发或需要更新的APP的节点及流程文件。当APP注册管理模块11完成APP注册后,会给APP资源管理模块12发送信息,信息内容为:APPID、操作类型、APP资源。APPID为云端系统所下发的APPID,操作类型分为新建及更新,APP资源为云端系统6所下发的APP节点及流程文件。
APP的节点文件及流程文件,在APP资源管理模块12中分类保存。流程文件按照APPID命名,存于flow文件夹。节点文件按照节点ID+节点版本号命名,存于nodes文件夹。
当操作类型为新建时,APP资源管理模块12将向APP拼合模块7发送APP资源,由其完成APP的拼合及后续的运行工作。同时保存该APP的流程及节点。
当操作类型为更新时,APP资源管理模块12将向APP控制模块8发送停止命令,同时向APP拼合模块7发送APP资源,完成新版本APP的拼合及运行。
当运维控制模块15接收到云端系统6下发的APP停止命令时,会将该APPID发送至APP注册管理模块11,该模块会删除对应APP的注册信息,并发送APPID至APP资源管理,删除对应APP的流程信息,节点文件依然保留。并将该APPID发送APP控制模块8,APP控制模块8会删除对应APP的定时触发器。
进一步地,所述APP运维子系统5包括消息回传模块13、日志管理模块14和运维管理模块15;所述消息回传模块13用于回传APP的运行结果至云端系统;所述日志管理模块14用于生成并管理引擎日志,单个日志文件限制大小为50MB,超过时新建文件,按照时间命名新日志文件名称。
所述运维管理模块15用于控制运行中APP的运行状态,通过订阅消息总线子系统上特定主题,接收云端系统6下发的指令。
由APP隔离模块将APP封装为匿名函数并异步执行后,各个APP所产生的回调信息,会通过消息总线发布,消息回传模块13可订阅消息总线上的APP回调信息,结合APP的描述信息,将消息通过消息总线发布。云端系统可订阅对应主题,查看不同APP的消息。
指令内容包含两部分内容:指令类型和APPID。指令类型可分为启动、停止、暂停、恢复四类。该运维管理模块15接收到消息后,通过消息总线子系统2,向APP控制模块8发送消息,由APP控制模块8执行相应的功能,APP控制模块8为每一个APP内置了定时触发器,当接收到暂停信号,会暂停触发。接收到停止信号,会删除触发器,并在APP资源管理模块12中删除相应的APP的信息。
本申请还提供一种基于所述的运行引擎系统的应用,将所述运行引擎系统应用于云编排APP。本申请提出的引擎,是适用于云编排APP的运行引擎。云编排APP,指在云端使用可视化、低代码开发工具开发的物联APP。云编排APP由组件及流程组成。组件,是对数据和方法的封装,是云编排式APP的最小组成单元。流程,是描述组件之间连接关系的文件。本申请采用Node.js作为物联APP的解释器,组件采用js文件实现,流程采用json文件实现。引擎作为一个软件部署在边缘物联代理设备上。
本申请所运行的物联APP,为采用云编排技术开发的物联APP。云编排技术将物联APP拆分为“组件+流程”两大部分。组件为实现特定业务功能的代码封装,流程为描述组件连接关系的描述文件,消息在组件之间传递,依此处理,最终完成业务功能。一个典型的云编排APP如下图所示。云编排APP包含组件、流程以及APP描述信息。
组件至少应含有2个内容:组件逻辑代码和组件描述信息。本申请适用的组件,组件逻辑代码在js文件中保存,组件描述信息在package.json文件中保存。
组件逻辑代码通常包含3部分内容:消息接收、消息处理、消息发布。按照在流程中所处的位置,组件可分为三类:初始组件、中间组件、结尾组件。初始组件负责创建消息,并在处理后发送给下一个组件;中间组件从上一个组件接收消息,并处理后发送给下一个组件;结尾组件在接收、处理完成消息后,无需发布,可根据业务需要,选择将结果写入日志或发送给消息总线子系统2。
package.json中包含组件信息,通常含有5部分内容:组件名称、组件版本号、组件ID、组件逻辑文件名,以及开发者相关信息。其中组件ID为组件唯一标识,由数字和字母组成,组件逻辑文件名为组件逻辑代码主入口函数所在的文件名。组件版本号用于APP资源管理功能。
流程为一个json文件,描述了该APP中组件的连接关系。该文件中,各个组件用ID唯一标识,APP中使用到的每一个组件都在流程中描述为一条记录。记录内容通常包括:组件ID、流程中上一个组件ID、流程中下一个组件ID。若同一个组件在该APP中使用了多次,该组件的ID后会带有序号以示区分,序号与ID用特殊符号隔开。
APP拼合模块,会按照云编排APP解析规范,将各个组件内容拆包,并且按照流程文件中的描述,拼合为可在Node.js中运行的独立可执行js文件。
本申请所提出的运行引擎,通过交叉编译适配各类物联终端,交叉编译指在宿主机上通过交叉编译器,生成目标平台上的可执行文件。宿主机可采用linux系统的个人pc,或其他x86架构的设备,进行交叉编译器配置,在宿主机使用交叉编译器,如gcc等,编译生成可运行于边缘物联代理设备上的运行引擎。物联APP在运行引擎之上运行,由于引擎已经通过交叉编译实现了适配,物联APP对底层硬件的差异无感知,从而实现物联APP跨厂商、跨类型物联终端的通用化部署。
本申请所提出的运行引擎,在物联终端上运行,和云端系统6通信,通过云边协同,利用下行通道,实现物联APP的远程部署、升级;利用上行通道,实现了缘物联代理上物联APP的云端运维。
本申请所提出的运行引擎,适用于云编排APP,具有对云编排APP解释运行能力。
将APP资源中组件和流程分开管理,更新APP时,若只更新了流程,未更新组件,则云端只需下发新版本流程文件;同时,组件库为多APP通用,若不同APP使用了相同的组件,则无需下发已有组件。大幅降低更新包大小,提高更新成功率。
通过运行引擎作为硬件(边缘物联代理)及软件(物联APP)中间的适配层,软件对硬件的差异无感知,实现了软件与硬件解耦,物联APP在不同类型的边缘物联代理上都可以通用化部署。同一个物联APP可多次复用,降低了重复开发的成本。
通过运行引擎实现的云边协同,边缘物联代理内物联APP可远程升级,用户在有新需求时,直接更新终端内APP即可,减少用户在功能升级时需更换终端的费用。
无需现场更新,所有关于物联APP的更新、下发操作,都可以在云端完成,方便快捷,提高用户体验。减少用户因需寄回设备造成的生产损失,降低人员奔赴现场的成本费用。
4.组件作为实现物联APP的最小单元,常用的组件会在多个APP中反复使用,本方案中的运行引擎,组件库为多个APP公用,常用组件无需重复下发,减少更新包尺寸,提高更新成功率。
如图2所示,当云端下发指令时,消息通过消息总线子系统2发送,运维管理模块15订阅该消息,收到消息并进行解析,若为停止某APP的命令,则将该命令转发至APP注册管理模块11,由APP注册管理模块11进行后续的操作。后续操作见图7;其他非停止的命令(启动、暂停)则会发送至APP控制模块8,由APP控制模块8进行对APP的控制。
如图3所示,当有APP从云端下发下来时,首先由APP版本管理模块10作处理,解析APP描述消息后,检查APP资源库,若该APP不存在,则判定为新下发APP,入库并开始运行。若该APP存在,则需根据版本号做检查,若下发的APP版本号小于等于已在库中的APP版本,则不运行;若版本号大于已存在的APP,则认定为对已有APP的更新,入库并开始运行,结束流程。
如图4所示,APP注册管理模块11负责在APP资源中心注册APP信息,当云端系统下发APP时,由APP版本管理模块10控制版本信息,若为新APP第一次下发,或已有APP下发的新版本,APP版本管理模块10会给APP注册管理模块11发送信息,由APP注册管理模块11完成APP的注册功能,APP注册管理模块11维护“引擎在运APP”表。注册过程为:若为新APP第一次下发,则在引擎在运APP表中新建一条记录,内容为APPID、版本号、更新时间;若为已有APP的新版本下发,则根据APPID搜索已有记录,更新表中对应APP的版本号与更新时间。之后将APP资源发送至APP资源管理模块12,结束流程。之后流程见图6。
如图5所示,APP资源在APP资源管理模块12中,被抽象为节点和流程两个部分,每个APP包含一个流程,以及其所使用到的节点。不同的APP流程不同,每个APP仅允许同时运行一个版本,故流程可绑定APPID作为唯一标识。由于节点可以复用,不同APP可能使用同一个节点,也可能使用同一个节点的不同版本,故在节点库中,每个节点的唯一标识为节点ID+节点版本号。节点和流程分别存储,若新APP下发,但其所使用节点已在库中,则节点无需重复保存,节省存储空间。
如图6所示,当APP注册管理模块11接收到APP,并发送至APP资源管理模块12后,APP资源管理模块12根据注册模块操作类型不同执行不同的命令。若为更新,则先发送停止命令至APP控制模块8,将正在运行的旧版本APP停止。再将APP资源保存,并发送至APP拼合模块7,进行APP的组装。若为新建,则无需停止,直接进行资源保存及APP拼合。
如图7所示,当运维控制模块15接收到云端下发的APP停止命令时,会将该APPID发送至APP注册管理模块11,APP注册管理模块11会删除对应APP的注册信息,并发送APPID至APP资源管理模块12,删除对应APP的流程信息,节点文件则需检查,若已无引用该节点的APP,则节点文件会删除,若有,则依然保留。后续该APPID会发送至APP控制模块8,APP控制模块8会删除对应APP的定时触发器。从而停止APP的运行。
如图8所示,引擎启动后,首先会在APP注册管理模块11中查询在运APP信息,获得在运APP的APPID后,再向APP资源管理模块12请求APP资源,即流程+节点。之后,APP资源发送至APP拼合模块7,进行APP的组装,通过APP控制模块8,为每个APP设置定时触发器,最后通过APP执行模块9,在运行环境中运行APP。之后结束启动阶段。
如图9所示,当有APP从云端下发时,首先会经过APP版本管理模块10,查询该APP是否是已有APP,若是,则再次检查该APP是否是新版本,若不是新版本,则直接结束流程。当该APP为已有APP的新版本,或者为全新APP时,分别发送更新或新建命令至APP注册管理模块,之后经过APP资源管理模块12进行资源保存。若为更新操作,则停止旧版本APP,新建则无需停止,直接进行APP拼合。通过APP控制模块8,设置定时触发器,启动APP。
如图10所示,当云端下发指令时,该指令会被运维管理模块15接收,并解析,若为停止指令,则需通过APP注册管理模块11消除其在运信息,并删除APP资源管理模块12内容,在到APP控制模块8,停止正在运行的APP;若为非停止命令,则直接发送至APP控制模块8,再通过APP执行模块9,控制APP的启停。
如图11所示,云编排APP由流程和组件组成,组件为执行具体业务逻辑的代码包,流程为描述组件之间连接关系的描述文件。每个组件基本包含三部分内容,消息接收、消息处理、消息发布。组件接受上一个组件发送来的消息,并进行逻辑处理,最后发送至下一个节点。组件可分为三类:初始组件、中间组件、结尾组件。初始组件无需接受消息,可自己生成,一般一个流程只有一个初始组件;中间组件负责接受上一组件发送的消息,处理后发送给下一个组件;结尾组件只接受消息并处理,不再向后传递,一般做数据上报功能。
尽管在上文中参考特定的实施例对本申请进行了描述,但是所属领域技术人员应当理解,在本申请公开的原理和范围内,可以针对本申请公开的配置和细节做出许多修改。本申请的保护范围由所附的权利要求来确定,并且权利要求意在涵盖权利要求中技术特征的等同物文字意义或范围所包含的全部修改。

Claims (10)

1.一种运行引擎系统,其特征在于:包括开发语言运行环境和子系统组,所述子系统组包括消息总线子系统,APP运行子系统,APP管理子系统和APP运维子系统,所述APP运行子系统与所述消息总线子系统连接,所述APP管理子系统与所述消息总线子系统连接,所述APP运维子系统与所述消息总线子系统连接;
所述开发语言运行环境用于为所述子系统组提供代码解释及线程管理;
所述运行引擎系统设置于边缘物联代理设备上,物联APP运行于所述运行引擎系统上,所述运行引擎系统与云端系统连接。
2.如权利要求1所述的运行引擎系统,其特征在于:所述开发语言为Node.js语言,c语言,java,python或者go语言。
3.如权利要求1所述的运行引擎系统,其特征在于:所述消息总线子系统采用MQTT通信协议,DDS通信协议、AMQP通信协议、XMPP通信协议、JMS通信协议、REST通信协议或者CoAP通信协议。
4.如权利要求1所述的运行引擎系统,其特征在于:所述APP运行子系统包括APP拼合模块、APP控制模块和APP执行模块;
所述APP拼合模块用于将APP组合为可运行的js代码;
所述APP控制模块用于实现物联APP的启动、暂停、恢复以及停止;
所述APP执行模块用于将多个APP封装在不同的异步函数中,实现物联APP的高性能运行。
5.如权利要求1所述的运行引擎系统,其特征在于:所述APP管理子系统包括APP版本管理模块、APP注册管理模块和APP资源管理模块;
所述APP版本管理模块用于实现同一APP不同版本下发时的管理;
所述APP注册管理模块用于在APP资源中心注册APP信息;
所述APP资源管理模块用于APP资源管理,负责存储本引擎运行中APP的节点文件和流程文件,并向APP拼合模块发送新下发或需要更新的APP的节点及流程文件。
6.如权利要求1所述的运行引擎系统,其特征在于:所述APP运维子系统包括消息回传模块、日志管理模块和运维管理模块;
所述消息回传模块用于回传APP的运行结果至云端系统;
所述日志管理模块用于生成并管理引擎日志;
所述运维管理模块用于控制运行中APP的运行状态,通过订阅消息总线子系统上特定主题,接收云端系统下发的指令。
7.如权利要求6所述的运行引擎系统,其特征在于:所述引擎日志包括引擎运行信息和APP运行信息。
8.如权利要求6所述的运行引擎系统,其特征在于:所述指令内容包括指令类型和APPID;所述指令类型包括启动、停止、暂停和恢复。
9.一种基于权利要求1~8中任一项所述的运行引擎系统的应用,其特征在于:将所述运行引擎系统应用于云编排APP。
10.如权利要求9所述的运行引擎系统,其特征在于:所述云编排APP包括组件、流程和APP描述信息;所述组件包括组件逻辑代码和组件描述信息。
CN202210013201.XA 2022-01-06 2022-01-06 一种运行引擎系统及其应用 Pending CN114356348A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210013201.XA CN114356348A (zh) 2022-01-06 2022-01-06 一种运行引擎系统及其应用

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210013201.XA CN114356348A (zh) 2022-01-06 2022-01-06 一种运行引擎系统及其应用

Publications (1)

Publication Number Publication Date
CN114356348A true CN114356348A (zh) 2022-04-15

Family

ID=81106986

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210013201.XA Pending CN114356348A (zh) 2022-01-06 2022-01-06 一种运行引擎系统及其应用

Country Status (1)

Country Link
CN (1) CN114356348A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115495148A (zh) * 2022-11-17 2022-12-20 深圳代码兄弟技术有限公司 基于低代码程序的部署包的统一构建管理方法及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115495148A (zh) * 2022-11-17 2022-12-20 深圳代码兄弟技术有限公司 基于低代码程序的部署包的统一构建管理方法及系统
CN115495148B (zh) * 2022-11-17 2023-09-22 深圳代码兄弟技术有限公司 基于低代码程序的部署包的统一构建管理方法及系统

Similar Documents

Publication Publication Date Title
US10956191B2 (en) Systems and methods for customizing and programming a cloud-based management server
CN108196915B (zh) 基于应用容器引擎的代码处理方法、设备及存储介质
CN101799751B (zh) 一种构建主机监控代理软件的方法
CN110083455B (zh) 图计算处理方法、装置、介质及电子设备
KR20200070085A (ko) 정보를 처리하기 위한 방법 및 장치
CN111459605A (zh) 一种基于Docker的边缘计算网关虚拟化方法
EP2218021A1 (en) Translating declarative models
CN114064152B (zh) 基于动态加载的嵌入式多核调试系统及其调试方法
CN108173840B (zh) 基于云平台的智能物流终端集成系统
CN111427594B (zh) 应用程序运行方法及装置
US20050055429A1 (en) System and method for providing data and services for appliances, and appliances which use the provided data and services
CN107800580B (zh) 一种大批量操作系统的安装状态监控方法、服务器和系统
CN111367804B (zh) 基于云计算及网络编程实现前端协作调试的方法
CN114356348A (zh) 一种运行引擎系统及其应用
US7043726B2 (en) Binding of processes in network systems
CN109507991B (zh) 一种双轴伺服控制平台调试系统及方法
CN109343970B (zh) 基于应用程序的操作方法、装置、电子设备及计算机介质
CN113127136A (zh) Docker镜像生成方法及装置、存储介质、电子设备
CN112860251A (zh) 一种网站前端构建的方法与系统
CN109634734A (zh) 自动编译发布方法、装置及计算机可读存储介质
CN116560801B (zh) 一种跨容器的柜面系统信创迁移方法及设备
CN117032118A (zh) 基于工业物联网的软plc系统
US11853727B2 (en) Group control and management among electronic devices
CN116436794A (zh) 基于物联网物模型的opc实时数据集成与控制方法
CN113326098B (zh) 支持kvm虚拟化与容器虚拟化的云管平台

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