CN115002232B - 业务框架、数据处理方法、装置、设备及存储介质 - Google Patents
业务框架、数据处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115002232B CN115002232B CN202210435748.9A CN202210435748A CN115002232B CN 115002232 B CN115002232 B CN 115002232B CN 202210435748 A CN202210435748 A CN 202210435748A CN 115002232 B CN115002232 B CN 115002232B
- Authority
- CN
- China
- Prior art keywords
- service
- sdk
- interface
- edge application
- edge
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 39
- 230000006978 adaptation Effects 0.000 claims abstract description 144
- 238000000034 method Methods 0.000 claims abstract description 27
- 230000006870 function Effects 0.000 claims description 92
- 230000004044 response Effects 0.000 claims description 38
- 238000012545 processing Methods 0.000 claims description 29
- 238000006243 chemical reaction Methods 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 8
- 238000012546 transfer Methods 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims 2
- 238000005259 measurement Methods 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 22
- 238000011161 development Methods 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 8
- 238000004378 air conditioning Methods 0.000 description 5
- 239000012141 concentrate Substances 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- 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/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/321—Interlayer communication protocols or service data unit [SDU] definitions; Interfaces between layers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q9/00—Arrangements in telecontrol or telemetry systems for selectively calling a substation from a main station, in which substation desired apparatus is selected for applying a control signal thereto or for obtaining measured values therefrom
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/502—Proximity
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请公开了一种业务框架、数据处理方法、装置、设备及存储介质,涉及计算机技术领域,该业务框架包括:运行在同一个容器中的SDK层和适配层;通过SDK层提供与边缘主机业务对应的SDK接口;通过适配层基于预设边缘框架,将SDK接口转化为目标协议的接口;根据目标协议的接口,提供边缘主机业务对应的微服务,以使边缘应用通过调用微服务执行边缘主机业务;目标协议包括HTTP和/或MQTT协议。本申请能够实现不同边缘主机业务的解耦,提高边缘主机业务的可维护性。
Description
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种业务框架、数据处理方法、装置、设备及存储介质。
背景技术
随着物联网的快速发展,边缘计算得到越来越广泛的应用。边缘计算是指在靠近物或数据源头的一侧,采用网络、计算、存储、应用核心能力为一体的开放平台,就近提供最近端服务。基于边缘计算的边缘应用是在边缘侧发起,能够产生更快的网络服务响应,满足行业在实时业务、应用智能、安全与隐私保护等方面的基本需求。
目前,在开发边缘应用的时候,通常将边缘主机业务都集成到一个边缘应用中开发,导致边缘应用内不同边缘主机业务耦合度较高,不易维护。
发明内容
为了解决现有技术中的上述问题,即为了将边缘应用内不同边缘主机业务进行解耦,本申请提供了一种业务框架、数据处理方法、装置、设备及存储介质。
第一方面,本申请提供一种业务框架,包括:运行在同一个容器中的软件开发工具包(Software Development Kit,SDK)层和适配层;其中,
SDK层,用于提供与边缘主机业务对应的SDK接口;
适配层,用于基于预设边缘框架,将SDK接口转化为目标协议的接口;根据目标协议的接口,提供边缘主机业务对应的微服务,以使边缘应用通过调用微服务执行边缘主机业务;目标协议包括超文本运输协议(Hyper Text Transfer Protocol,HTTP)和/或消息队列遥测传输(Message Queuing Telemetry Transport,MQTT)协议。
在一种可能的实现方式中,适配层内包括:接口协议转换单元,用于若目标协议的接口为HTTP接口,则将SDK接口转换为HTTP接口;若目标协议的接口为MQTT接口,则通过注册到SDK层的回调函数,将SDK接口转换为MQTT接口,以发布MQTT消息;数据流向管理单元,用于记录对目标协议的接口的调用请求信息,以及根据调用请求信息,将调用请求信息对应的响应数据发送给边缘应用,调用请求信息至少包括边缘应用的标识和序列号;虚拟化服务管理单元,用于将SDK接口虚拟化为微服务,微服务的信息包括服务名称、服务类型、服务状态或服务信息中的至少一种;鉴权单元,用于确定边缘应用是否有权限使用微服务。
第二方面,本申请提供一种数据处理方法,包括:
响应于从边缘应用获取业务数据的请求消息,通过业务框架的SDK层根据请求消息,调用业务框架的适配层注册到SDK层的回调函数,回调函数是在边缘应用启动时适配层根据边缘应用支持的业务类型注册到SDK层的函数,业务框架为采用如本申请第一方面所述的业务框架;
通过回调函数发布MQTT消息,MQTT消息是边缘应用在启动时根据业务类型订阅的消息,MQTT消息携带有边缘应用的标识和请求消息对应的序列号。
在一种可能的实现方式中,通过回调函数发布MQTT消息,包括:通过适配层的接口协议转换单元读取回调函数,得到边缘应用的注册信息,注册信息至少包括标识和边缘应用支持的业务类型;根据注册信息,通过适配层的数据流向管理单元发布MQTT消息。
在一种可能的实现方式中,通过回调函数发布MQTT消息之后,该数据处理方法还包括:通过适配层接收标识对应的边缘应用针对MQTT消息的应答消息,应答消息携带有序列号和目标业务数据;通过适配层根据序列号,调用SDK层的SDK接口,输出目标业务数据。
第三方面,本申请提供一种数据处理方法,包括:
响应于边缘应用获取业务数据的请求消息,通过业务框架的适配层根据请求消息,调用业务框架的SDK层包含的SDK接口,请求消息携带有边缘应用的标识和请求消息求对应的序列号,业务框架为采用如本申请第一方面所述的业务框架;
通过SDK接口获取请求消息对应的目标业务数据;
通过SDK接口根据目标业务数据,调用适配层注册到SDK层的回调函数,回调函数是在边缘应用启动时适配层根据边缘应用支持的业务类型注册到SDK层的函数;
通过回调函数发布MQTT消息,MQTT消息是边缘应用在启动时根据业务类型订阅的消息,MQTT消息携带有边缘应用的标识和请求消息对应的序列号。
在一种可能的实现方式中,通过业务框架的适配层根据请求消息,调用业务框架的SDK层包含的SDK接口之前,该数据处理方法还包括:响应于边缘应用获取微服务列表的请求消息,通过适配层的虚拟化服务管理单元,将微服务列表发送给边缘应用。
在一种可能的实现方式中,将微服务列表发送给边缘应用之后,该数据处理方法还包括:响应于边缘应用获取业务数据的请求消息,通过适配层的鉴权单元确定边缘应用是否有权限使用业务数据对应的微服务;若确定边缘应用有权限使用业务数据对应的微服务,则通过适配层的接口协议转换单元根据请求消息,调用SDK接口。
在一种可能的实现方式中,通过SDK接口获取请求消息对应的目标业务数据之后,该数据处理方法还包括:通过适配层根据SDK接口,将目标业务数据发送给边缘应用。
第四方面,本申请提供一种数据处理装置,包括:
第一调用模块,用于响应于从边缘应用获取业务数据的请求消息,通过业务框架的SDK层根据请求消息,调用业务框架的适配层注册到SDK层的回调函数,回调函数是在边缘应用启动时适配层根据边缘应用支持的业务类型注册到SDK层的函数,业务框架为采用如本申请第一方面所述的业务框架;
发布模块,用于通过回调函数发布MQTT消息,MQTT消息是边缘应用在启动时根据业务类型订阅的消息,MQTT消息携带有边缘应用的标识和请求消息对应的序列号。
在一种可能的实现方式中,发布模块具体用于:通过适配层的接口协议转换单元读取回调函数,得到边缘应用的注册信息,注册信息至少包括标识和边缘应用支持的业务类型;根据注册信息,通过适配层的数据流向管理单元发布MQTT消息。
在一种可能的实现方式中,该数据处理装置还包括接收模块,用于在通过回调函数发布MQTT消息之后,通过适配层接收标识对应的边缘应用针对MQTT消息的应答消息,应答消息携带有序列号和目标业务数据;该数据处理装置还包括第二调用模块,用于通过适配层根据序列号,调用SDK层的SDK接口,输出目标业务数据。
第五方面,本申请提供一种数据处理装置,包括:
第一调用模块,用于响应于边缘应用获取业务数据的请求消息,通过业务框架的适配层根据请求消息,调用业务框架的SDK层包含的SDK接口,请求消息携带有边缘应用的标识和请求消息对应的序列号,业务框架为采用如本申请第一方面所述的业务框架;
获取模块,用于通过SDK接口获取请求消息对应的目标业务数据;
第二调用模块,用于通过SDK接口根据目标业务数据,调用适配层注册到SDK层的回调函数,回调函数是在边缘应用启动时适配层根据边缘应用支持的业务类型注册到SDK层的函数;
发布模块,用于通过回调函数发布MQTT消息,MQTT消息是边缘应用在启动时根据业务类型订阅的消息,MQTT消息携带有边缘应用的标识和请求消息对应的序列号。
在一种可能的实现方式中,该数据处理装置还包括发送模块,用于在第一调用模块通过业务框架的适配层根据请求消息,调用业务框架的SDK层包含的SDK接口之前,响应于边缘应用获取微服务列表的请求消息,通过适配层的虚拟化服务管理单元,将微服务列表发送给边缘应用。
在一种可能的实现方式中,该数据处理装置还包括鉴权模块,用于将微服务列表发送给边缘应用之后,响应于边缘应用获取业务数据的请求消息,通过适配层的鉴权单元确定边缘应用是否有权限使用业务数据对应的微服务;若确定边缘应用有权限使用业务数据对应的微服务,则第一调用模块通过适配层的接口协议转换单元根据请求消息,调用SDK接口。
在一种可能的实现方式中,发送模块还用于:在获取模块通过SDK接口获取请求消息对应的目标业务数据之后,通过适配层根据SDK接口,将目标业务数据发送给边缘应用。
第六方面,本申请提供一种计算机可读的存储介质,计算机可读的存储介质包括存储的程序,其中,程序运行时执行本申请第一方面所述的业务框架以及本申请第二方面和第三方面所述的数据处理方法。
第七方面,本申请提供一种电子设备,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为通过计算机程序执行本申请第一方面所述的业务框架以及本申请第二方面和第三方面所述的数据处理方法。
第八方面,本申请提供一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现如本申请第一方面所述的业务框架以及本申请第二方面和第三方面所述的数据处理方法。
本申请提供的业务框架、数据处理方法、装置、设备及存储介质,业务框架包括运行在同一个容器中的SDK层和适配层;通过SDK层提供与边缘主机业务对应的SDK接口;通过适配层基于预设边缘框架,将SDK接口转化为目标协议的接口;根据目标协议的接口,提供边缘主机业务对应的微服务,以使边缘应用通过调用微服务执行边缘主机业务;目标协议包括HTTP和/或MQTT协议。由于本申请通过适配层基于预设边缘框架将边缘主机业务微服务化,抽象为独立的目标协议的接口,因此,能够实现不同边缘主机业务的解耦,提高边缘主机业务的可维护性,进而能够使开发者不用关心底层的数据及服务依赖,可专注于各自边缘应用的开发部署。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一实施例提供的目前的边缘主机业务的示意图;
图2为本申请一实施例提供的应用场景示意图;
图3为本申请一实施例提供的业务框架的示意图;
图4为本申请另一实施例提供的业务框架的示意图;
图5为本申请又一实施例提供的业务框架的示意图;
图6为本申请一实施例提供的数据处理方法的流程图;
图7为本申请另一实施例提供的数据处理方法的流程图;
图8为本申请又一实施例提供的数据处理方法的流程图;
图9为本申请又一实施例提供的数据处理方法的流程图;
图10为本申请一实施例提供的程序调用的示意图;
图11为本申请一实施例提供的***架构的示意图;
图12为本申请一实施例提供的数据处理装置的结构示意图;
图13为本申请另一实施例提供的数据处理装置的结构示意图;
图14为本申请一实施例提供的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请的技术方案中,所涉及的金融数据或用户数据等信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
边缘主机业务包括设备接入业务、设备管理业务、边缘场景业务、消息推送业务、音视频业务或人工智能(Artificial Intelligence,AI)业务中的至少一种,这些业务即相互耦合又彼此独立,且需要不同的开发者开发。不同边缘主机业务都分别集成有对应的业务SDK,独立运行各自进程,可能会导致业务间端口冲突或者程序冲突,且网络资源利用冗余,也会更多的占用内存资源;不同边缘主机业务的维护与升级都不方便,对编程语言也有很大的依赖。
目前,通常将所有的边缘主机业务都集成到一个边缘应用中开发,所有的边缘主机业务都依赖于设备接入业务对应的设备接入SDK。示例性地,图1为本申请一实施例提供的目前的边缘主机业务的示意图,如图1所示,边缘主机业务包括设备接入业务、设备管理业务、边缘场景业务、消息推送业务、音视频业务和AI业务,不同的边缘主机业务有相应的边缘应用,不同的边缘应用调用相应的边缘主机业务SDK。其中,消息推送业务需要借助于设备接入SDK的远程通道完成消息的远程推送,消息推送应用也需要集成设备接入SDK;边缘场景业务的场景引擎的执行依赖于设备接入SDK的设备接入通道配置的下载,也依赖于设备管理SDK的通道,边缘场景应用也需要集成设备接入SDK;AI应用及音视频应用的开发依赖于设备接入SDK的远程通道,也需要集成设备接入SDK。
由于所有的边缘主机业务都集成到一个边缘应用上,导致该边缘应用的业务庞大及耦合度较高,主要有存在以下主要缺点:(1)所有的边缘主机业务必须一个应用开发者,若为多个不同的应用开发者,则会导致多个不同的应用开发者无法集成在一个边缘应用上;(2)所有的边缘主机业务耦合在一起,不易拆分运行;(3)边缘主机业务扩展性不高;(4)支持开发语言单一;(5)边缘应用的更新维护复杂。
基于上述问题,本申请提供一种业务框架、数据处理方法、装置、设备及存储介质,利用预设边缘框架及消息发布和消息订阅机制提供不同边缘主机业务对应的微服务,以使应用开发者通过调用微服务开发对应的边缘应用,每个边缘应用可以运行在自己的容器里,能够实现不同边缘主机业务的解耦,提高边缘主机业务的可维护性。
以下,首先对本申请提供的方案的应用场景进行示例说明。
图2为本申请一实施例提供的应用场景示意图。如图2所示,本应用场景中,边缘主机201实时采集门禁摄像头203的数据,根据该数据获取空调202的当前设置信息,比如空调202的温湿度是多少,通过网络向空调202下发执行命令,以将当前设置信息设置为目标设置信息。其中,边缘主机201、空调202和门禁摄像头203在同一网络内,且能够相互发现连接。
需要说明的是,图2仅是本申请实施例提供的一种应用场景的示意图,可以应用于智慧家庭中,本申请实施例不对图2中包括的设备进行限定,也不对图2中设备之间的位置关系进行限定。
接下来,通过具体实施例介绍本申请实施例提供的业务框架。
图3为本申请一实施例提供的业务框架的示意图。本申请实施例的业务框架300可以应用于电子设备中,该电子设备可以是服务器或服务器集群等。如图3所示,本申请实施例的业务框架300包括运行在同一个容器中的SDK层310和适配层320。其中:
SDK层310,用于提供与边缘主机业务对应的SDK接口。
适配层320,用于基于预设边缘框架,将SDK接口转化为目标协议的接口;根据目标协议的接口,提供边缘主机业务对应的微服务,以使边缘应用通过调用微服务执行边缘主机业务;目标协议包括HTTP和/或MQTT协议。
本申请实施例中,SDK层310能够提供与边缘主机业务对应的SDK接口,该SDK接口比如为C语言实现的接口。可以理解,对于不同的边缘主机业务,SDK层310均提供有对应的SDK接口。边缘主机业务比如为设备接入业务,则SDK层310能够提供与设备接入业务对应的SDK接口。
预设边缘框架比如为kubeedge框架,通过kubeedge框架能够实现功能模块的容器化管理,对于具体如何使用kubeedge框架,可参考目前相关技术,此处不再赘述。MQTT协议是基于发布/订阅范式的消息协议,能够提供一对多的消息发布。示例性地,适配层320基于kubeedge框架,根据不同的边缘主机业务,将SDK接口转化为HTTP接口或MQTT接口,进而根据HTTP接口或MQTT接口提供边缘主机业务对应的微服务。其中,HTTP接口可以理解为表现层转移应用程序编程接口(Representational state transfer ApplicationProgramming Interface,RestAPI)。边缘应用可以通过调用不同的微服务执行相应的边缘主机业务。可以理解,边缘应用开发者可以通过微服务开发对应的边缘应用,每个边缘应用运行在自己的容器里,各边缘业务之间的数据同步及处理流程可以通过HTTP接口及MQTT消息订阅发布机制实现通信;每个边缘应用程序由于分别在各自的容器里运行,所以边缘应用间的耦合就会大大减少。对于适配层320具体如何基于预设边缘框架,将SDK接口转化为目标协议的接口;根据目标协议的接口,提供边缘主机业务对应的微服务,可参考后续实施例,此处不再赘述。
本申请实施例提供的业务框架,包括运行在同一个容器中的SDK层和适配层;通过SDK层提供与边缘主机业务对应的SDK接口;通过适配层基于预设边缘框架,将SDK接口转化为目标协议的接口;根据目标协议的接口,提供边缘主机业务对应的微服务,以使边缘应用通过调用微服务执行边缘主机业务;目标协议包括HTTP和/或MQTT协议。由于本申请实施例通过适配层基于预设边缘框架将边缘主机业务微服务化,抽象为独立的目标协议的接口,因此,能够实现不同边缘主机业务的解耦,提高边缘主机业务的可维护性,进而能够使开发者不用关心底层的数据及服务依赖,可专注于各自边缘应用的开发部署。
在上述实施例的基础上,图4为本申请另一实施例提供的业务框架的示意图。如图4所示,业务框架300的适配层320内包括接口协议转换单元321、数据流向管理单元322、虚拟化服务管理单元323和鉴权单元324。其中,接口协议转换单元321,用于若目标协议的接口为HTTP接口,则将SDK接口转换为HTTP接口;若目标协议的接口为MQTT接口,则通过注册到SDK层的回调函数,将SDK接口转换为MQTT接口,以发布MQTT消息;数据流向管理单元322,用于记录对目标协议的接口的调用请求信息,以及根据调用请求信息,将调用请求信息对应的响应数据发送给边缘应用,调用请求信息至少包括边缘应用的标识和序列号;虚拟化服务管理单元323,用于将SDK接口虚拟化为微服务,微服务的信息包括服务名称、服务类型、服务状态或服务信息中的至少一种;鉴权单元324,用于确定边缘应用是否有权限使用微服务。
示例性地,以边缘应用读设备A的属性信息的操作为例,具体地,边缘应用调用HTTP接口,HTTP接口的参数至少包括设备A的设备标识(Identity,ID)和属性名;接口协议转换单元321将该HTTP接口转换为对应的SDK接口调用,并将参数传入;SDK层310根据参数向设备A发送获取属性信息的请求,设备A收到该请求后,经由接口协议转换单元321注册到SDK层的回调函数,将属性信息回调给接口协议转换单元321,通过数据流向管理单元322发布MQTT消息,边缘应用通过订阅该类消息获取到设备A的属性信息。
对于数据流向管理单元322,比如多个边缘应用同时调用读设备A的属性信息的HTTP接口,数据流向管理单元322会记录哪个边缘应用的调用请求信息,调用请求信息比如为边缘应用ID和序列号(Serial Number,SN),在返回数据时,可以根据调用请求信息,将响应数据返回给对应的边缘应用。
示例性地,适配层320调用SDK接口后,将SDK的各边缘主机业务功能启动(比如启动边缘场景业务功能),可以通过虚拟化服务管理单元323将各边缘主机业务虚拟化为各微服务,比如边缘场景微服务。适配层320调用SDK的边缘场景初始化成功后,边缘场景业务的设备接口、执行接口等都与HTTP接口映射完毕,然后将边缘场景微服务进行命名,比如用sceneService表示,该边缘场景微服务包括场景类型(sceneType)、场景状态(sceneState)、场景基本信息(sceneBaseInfo)中的至少一种。各边缘应用也可以调用获取所有微服务列表(比如用getAllServiceInfo表示)的方法来获取所有的当前运行的微服务,微服务的信息具体比如当前微服务的状态或方法等。
示例性地,可以通过鉴权单元324管理边缘应用是否有权限使用适配层320提供的微服务,比如可以通过证书或者密钥(key)机制进行权限管理。
本申请实施例提供的业务框架,通过适配层内包括的接口协议转换单元、数据流向管理单元、虚拟化服务管理单元和鉴权单元,将边缘主机业务微服务化,抽象为独立的目标协议的接口,因此,能够实现不同边缘主机业务的解耦,提高边缘主机业务的可维护性,进而能够使开发者不用关心底层的数据及服务依赖,可专注于各自边缘应用的开发部署。
在上述实施例的基础上,图5为本申请又一实施例提供的业务框架的示意图,如图5所示,容器中包括SDK层和适配层,容器以POD(容器组)的方式进行调度和运行。其中,SDK层比如包括边缘主机业务对应的设备接入SDK、设备管理SDK、边缘场景SDK、音视频SDK和AISDK。通过适配层将SDK接口转化为HTTP接口或MQTT接口,根据HTTP接口或MQTT接口,提供边缘主机业务对应的微服务,即设备接入微服务、设备管理微服务、边缘场景微服务和音视频微服务。相应地,边缘应用比如主机应用可以调用设备接入微服务、边缘场景应用可以调用设备管理微服务和边缘场景微服务以及AI应用可以调用音视频微服务。基于微服务开发的各种边缘应用可以分别运行在其它的容器内。
基于上述实施例的业务框架,图6为本申请一实施例提供的数据处理方法的流程图。本申请实施例的方法可以应用于电子设备中,该电子设备可以是服务器或服务器集群等。如图6所示,本申请实施例的方法包括:
S601、响应于从边缘应用获取业务数据的请求消息,通过业务框架的SDK层根据请求消息,调用业务框架的适配层注册到SDK层的回调函数。
其中,回调函数是在边缘应用启动时适配层根据边缘应用支持的业务类型注册到SDK层的函数,业务框架为采用如上述任一业务框架实施例获得的业务框架。
本申请实施例中,从边缘应用获取业务数据的请求消息比如为其它设备向执行本方法实施例的电子设备发送的,其他设备比如为手机。该请求消息比如为用于读设备属性的消息,在边缘应用启动的时候,边缘应用会通过业务框架的适配层将读设备属性的回调函数注册到SDK层中。其中,读设备属性可以理解为一种业务类型,业务类型比如还可以包括报警、状态上报等,不同的边缘应用支持不同的业务类型。示例性地,响应于从边缘应用读设备属性的请求消息,通过SDK层根据请求消息,调用适配层注册到SDK层的读设备属性的回调函数。
S602、通过回调函数发布MQTT消息。
其中,MQTT消息是边缘应用在启动时根据业务类型订阅的消息,MQTT消息携带有边缘应用的标识和请求消息对应的序列号。
该步骤中,边缘应用在启动时,会根据支持的业务类型订阅MQTT消息。在通过SDK层根据请求消息,调用适配层注册到SDK层的回调函数后,可以通过适配层进行回调处理后,发布MQTT消息。
进一步地,可选的,通过回调函数发布MQTT消息,可以包括:通过适配层的接口协议转换单元读取回调函数,得到边缘应用的注册信息,注册信息至少包括标识和边缘应用支持的业务类型;根据注册信息,通过适配层的数据流向管理单元发布MQTT消息。
示例性地,回调函数比如为读设备属性对应的函数,SDK层在调用该回调函数时,会将读哪个设备的属性信息对应的设备ID和SN传给适配层。通过适配层的接口协议转换单元读取该回调函数,得到边缘应用的注册信息,该注册信息比如包括业务类型为读设备属性、应用ID、设备ID及SN。根据该注册信息,通过适配层的数据流向管理单元发布读设备属性对应的MQTT消息。
本申请实施例提供的数据处理方法,通过响应于从边缘应用获取业务数据的请求消息,通过业务框架的SDK层根据请求消息,调用业务框架的适配层注册到SDK层的回调函数;通过回调函数发布MQTT消息。由于本申请实施例基于消息发布/订阅机制来实现边缘主机业务的微服务化,即通过异步回调的方式提供微服务,因此,能够实现不同边缘主机业务的解耦,提高边缘主机业务的可维护性。
在上述实施例的基础上,可选的,适配层通过回调函数发布MQTT消息之后,数据处理方法还可以包括:通过适配层接收标识对应的边缘应用针对MQTT消息的应答消息,应答消息携带有序列号和目标业务数据;通过适配层根据序列号,调用SDK层的SDK接口,输出目标业务数据。
示例性地,比如边缘应用在接收到读设备属性对应的MQTT消息后,根据设备ID和SN,调用适配层的应答HTTP接口,以响应读设备属性对应的MQTT消息。相应地,通过适配层接收边缘应用针对MQTT消息的应答消息(对应应答HTTP接口),应答消息携带有SN和设备属性;通过适配层根据SN,调用SDK层的SDK接口,输出设备属性。若从边缘应用获取业务数据的请求消息是手机发出的,则将设备属性输出给手机,以在手机上显示设备属性。
在上述实施例的基础上,图7为本申请另一实施例提供的数据处理方法的流程图。如图7所示,以边缘应用为主机应用为例,本申请实施例的方法可以包括:
701、主机应用调用HTTP接口,注册设备接入服务,以实现设备接入功能。
702、通过适配层将HTTP接口转换为SDK层的SDK接口,即调用SDK层的设备接入SDK接口,完成设备注册。
703、在完成设备注册后,通过SDK层将设备ID返回给适配层。
704、通过适配层的HTTP接口将设备ID返回给主机应用。
705、主机应用根据主机应用ID及业务类型订阅消息,业务类型比如为读写操作。
706、通过适配层将主机应用支持的业务类型对应的回调函数注册到SDK层。
707、通过手机上的应用根据设备ID和SN调用SDK层的SDK接口读设备属性。
708、SDK层的设备接入SDK根据设备ID和SN调用读设备属性对应的回调函数。
709、通过适配层根据设备ID、主机应用ID和SN发布读设备属性的MQTT消息,即触发了读设备属性的MQTT消息。
710、主机应用根据设备ID和SN调用适配层的HTTP接口应答读设备属性,即响应读设备属性。
711、通过适配层调用SDK层的设备接入SDK接口来应答读设备属性。
712、通过SDK层的设备接入SDK接口将设备属性应答给手机上的应用。
基于上述实施例的业务框架,图8为本申请又一实施例提供的数据处理方法的流程图。如图8所示,本申请实施例的方法包括:
S801、响应于边缘应用获取业务数据的请求消息,通过业务框架的适配层根据请求消息,调用业务框架的SDK层包含的SDK接口。
其中,请求消息携带有边缘应用的标识和请求消息对应的序列号,业务框架为采用如上述任一业务框架实施例获得的业务框架。
该步骤中,边缘应用获取业务数据的请求消息可以理解为边缘主机应用主动发起的获取业务数据的请求消息。示例性地,边缘应用比如为设备管理应用,响应于设备管理应用读空调设备属性的请求消息,可以通过业务框架的适配层根据请求消息,调用业务框架的SDK层包含的SDK接口。其中,请求消息携带有设备管理应用ID和请求消息对应的SN。
S802、通过SDK接口获取请求消息对应的目标业务数据。
示例性地,比如通过SDK接口从空调设备获取空调设备属性。
S803、通过SDK接口根据目标业务数据,调用适配层注册到SDK层的回调函数。
其中,回调函数是在边缘应用启动时适配层根据边缘应用支持的业务类型注册到SDK层的函数。
该步骤中,在通过SDK接口获得了目标业务数据后,可以通过SDK接口根据目标业务数据,调用适配层注册到SDK层的回调函数。示例性地,比如通过SDK接口从空调设备获得了空调设备属性,则可以通过SDK接口调用适配层注册到SDK层的空调设备属性应答对应的回调函数。
S804、通过回调函数发布MQTT消息。
其中,MQTT消息是边缘应用在启动时根据业务类型订阅的消息,MQTT消息携带有边缘应用的标识和请求消息对应的序列号。
该步骤中,参考S602步骤的相关描述,在通过SDK接口调用适配层注册到SDK层的回调函数后,可以通过适配层进行回调处理后,发布MQTT消息。示例性地,比如适配层根据发起调用请求的设备管理应用ID、调用请求对应的SN和读空调设备属性这一业务类型,发布空调设备属性应答的MQTT消息,即触发了空调设备属性应答消息。相应地,设备管理应用由于订阅了空调设备属性应答消息,因此,可以接收到空调设备属性应答消息,即获得了空调设备属性。
本申请实施例提供的数据处理方法,通过响应于边缘应用获取业务数据的请求消息,通过业务框架的适配层根据请求消息,调用业务框架的SDK层包含的SDK接口;通过SDK接口获取请求消息对应的目标业务数据;通过SDK接口根据目标业务数据,调用适配层注册到SDK层的回调函数;通过回调函数发布MQTT消息。由于本申请实施例通过消息发布/订阅机制提供微服务,因此,能够实现不同边缘主机业务的解耦,提高边缘主机业务的可维护性。
在上述实施例的基础上,可选的,通过业务框架的适配层根据请求消息,调用业务框架的SDK层包含的SDK接口之前,数据处理方法还可以包括:响应于边缘应用获取微服务列表的请求消息,通过适配层的虚拟化服务管理单元,将微服务列表发送给边缘应用。
示例性地,基于上述虚拟化服务管理单元的相关描述,响应于边缘应用获取微服务列表的请求消息,通过适配层的虚拟化服务管理单元提供的获取所有微服务列表的方法,将微服务列表发送给边缘应用。其中,微服务列表比如包括设备接入微服务、设备管理微服务、边缘场景微服务和音视频微服务中的至少一种。相应地,边缘应用在接收到微服务列表后,可以显示微服务列表。
在上述实施例的基础上,可选的,将微服务列表发送给边缘应用之后,数据处理方法还可以包括:响应于边缘应用获取业务数据的请求消息,通过适配层的鉴权单元确定边缘应用是否有权限使用业务数据对应的微服务;若确定边缘应用有权限使用业务数据对应的微服务,则通过适配层的接口协议转换单元根据请求消息,调用SDK接口。
可以理解,在边缘应用使用微服务时,需要确定边缘应用是否有权限使用微服务。若确定边缘应用有权限使用微服务,则可以通过适配层的接口协议转换单元根据请求消息,调用微服务对应的SDK接口。
在上述实施例的基础上,一种可能的实施方式中,通过SDK接口获取请求消息对应的目标业务数据之后,数据处理方法还可以包括:通过适配层根据SDK接口,将目标业务数据发送给边缘应用。
示例性地,比如通过SDK接口从空调设备获取空调设备属性后,可以不使用消息发布/订阅机制,采用消息同步的方式,直接通过适配层根据SDK接口,将空调设备属性发送给设备管理应用。
在上述实施例的基础上,图9为本申请又一实施例提供的数据处理方法的流程图,如图9所示,以边缘应用为设备管理应用为例,本申请实施例的方法可以包括:
901、设备管理应用调用适配层的设备管理HTTP接口注册设备管理服务。
902、通过适配层将HTTP接口转换为SDK层的SDK接口,即调用SDK层的设备管理SDK接口,完成设备注册。
903、设备管理应用根据设备管理应用ID和业务类型(比如读写属性)订阅消息。
904、通过适配层将设备管理应用支持的业务类型对应的回调函数注册到SDK层。
905、设备管理应用调用适配层的设备管理HTTP接口读设备属性,比如读空调设备属性,其中的参数包括SN。
906、通过适配层调用SDK层的设备管理SDK接口来读设备属性。
907、通过SDK接口从空调设备读取空调设备属性。
908、通过SDK接口调用适配层注册到SDK层的空调设备属性应答对应的回调函数;
909、适配层根据设备管理应用ID、SN和读空调设备属性这一业务类型,发布空调设备属性应答的MQTT消息,即触发了空调设备属性应答消息。相应地,设备管理应用会接收到空调设备属性应答消息。
在上述实施例的基础上,图10为本申请一实施例提供的程序调用的示意图,如图10所示,边缘应用层为开发者开发的边缘应用,可以使用HTTP接口及消息发布/订阅机制实现与各微服务的数据交互。包含在适配层中的HTTP服务,用于边缘主机业务的服务数据命令转换、参数解析及协议解析等,对外提供微服务的HTTP接口;通过适配层对SDK层的SDK接口进行接口二次封装以及接口组合调用,转化为HTTP接口,SDK接口比如为通过C语言实现的接口。包含在适配层中的MQTT服务,用于基于适配层的回调处理,对外提供发布/订阅微服务的MQTT接口。
在上述实施例的基础上,图11为本申请一实施例提供的***架构的示意图,如图11所示,该***架构图包括手机应用、云端和边缘设备侧(图11中未示出)。其中,边缘设备侧包括边缘应用层、微服务层、基础服务层以及***底层。以边缘框架kubeegde及容器技术为基础,将边缘主机业务的SDK封装为各微服务,提供RestAPI接口及消息订阅/发布接口供开发者开发使用。该***架构图中的手机应用用于移动端的业务管理、在本地与边缘主机通过网络交互来管理边缘主机的各业务功能。该***架构图中的云端用于管理边缘主机的各业务功能,如边缘应用管理、边缘应用启动、边缘应用停止或边缘应用升级等。边缘应用层中的边缘应用(比如设备接入应用、边缘场景应用、音视频应用等)是运行在边缘主机上的本地应用,开发者可以基于边缘主机的微服务开发自己需要的应用功能。微服务层中的微服务(比如设备接入微服务等)是基于不同边缘主机业务的SDK封装的服务,可以提供HTTP接口供开发者直接调用,也可以使用发布/订阅机制(对应MQTT接口)完成消息的订阅及发布通知。可以理解,微服务层的功能与上述实施例中SDK层和适配层的功能类似。基础服务层中的基础服务是***层的基础业务服务。***底层主要是边缘框架、容器技术、操作***及驱动等。
图12为本申请一实施例提供的数据处理装置的结构示意图。如图12所示,本申请实施例的数据处理装置1200包括:第一调用模块1201和发布模块1202。其中:
第一调用模块1201,用于响应于从边缘应用获取业务数据的请求消息,通过业务框架的SDK层根据请求消息,调用业务框架的适配层注册到SDK层的回调函数,回调函数是在边缘应用启动时适配层根据边缘应用支持的业务类型注册到SDK层的函数,业务框架为采用如上述任一业务框架实施例获得的业务框架。
发布模块1202,用于通过回调函数发布MQTT消息,MQTT消息是边缘应用在启动时根据业务类型订阅的消息,MQTT消息携带有边缘应用的标识和请求消息对应的序列号。
在一种可能的实现方式中,发布模块1202可以具体用于:通过适配层的接口协议转换单元读取回调函数,得到边缘应用的注册信息,注册信息至少包括标识和边缘应用支持的业务类型;根据注册信息,通过适配层的数据流向管理单元发布MQTT消息。
在一种可能的实现方式中,该数据处理装置1200还可以包括接收模块1203,用于在发布模块1202通过回调函数发布MQTT消息之后,通过适配层接收标识对应的边缘应用针对MQTT消息的应答消息,应答消息携带有序列号和目标业务数据;该数据处理装置1200还可以包括第二调用模块1204,用于通过适配层根据序列号,调用SDK层的SDK接口,输出目标业务数据。
本实施例的装置,可以用于执行上述任一所示方法实施例中从边缘应用获取业务数据的数据处理方法的技术方案,其实现原理和技术效果类似,此处不再赘述。
图13为本申请另一实施例提供的数据处理装置的结构示意图。如图13所示,本申请实施例的数据处理装置1300包括:第一调用模块1301、获取模块1302、第二调用模块1303和发布模块1304。其中:
第一调用模块1301,用于响应于边缘应用获取业务数据的请求消息,通过业务框架的适配层根据请求消息,调用业务框架的SDK层包含的SDK接口,请求消息携带有边缘应用的标识和请求消息对应的序列号,业务框架为采用如上述任一业务框架实施例获得的业务框架。
获取模块1302,用于通过SDK接口获取请求消息对应的目标业务数据。
第二调用模块1303,用于通过SDK接口根据目标业务数据,调用适配层注册到SDK层的回调函数,回调函数是在边缘应用启动时适配层根据边缘应用支持的业务类型注册到SDK层的函数。
发布模块1304,用于通过回调函数发布MQTT消息,MQTT消息是边缘应用在启动时根据业务类型订阅的消息,MQTT消息携带有边缘应用的标识和请求消息对应的序列号。
在一种可能的实现方式中,该数据处理装置1300还可以包括发送模块1305,用于在第一调用模块1301通过业务框架的适配层根据请求消息,调用业务框架的SDK层包含的SDK接口之前,响应于边缘应用获取微服务列表的请求消息,通过适配层的虚拟化服务管理单元,将微服务列表发送给边缘应用。
在一种可能的实现方式中,该数据处理装置1300还可以包括鉴权模块1306,用于在发送模块1305将微服务列表发送给边缘应用之后,响应于边缘应用获取业务数据的请求消息,通过适配层的鉴权单元确定边缘应用是否有权限使用业务数据对应的微服务;若确定边缘应用有权限使用业务数据对应的微服务,则第一调用模块1301通过适配层的接口协议转换单元根据请求消息,调用SDK接口。
在一种可能的实现方式中,发送模块1305还可以用于:在获取模块1302通过SDK接口获取请求消息对应的目标业务数据之后,通过适配层根据SDK接口,将目标业务数据发送给边缘应用。
本实施例的装置,可以用于执行上述任一所示方法实施例中边缘应用获取业务数据的数据处理方法的技术方案,其实现原理和技术效果类似,此处不再赘述。
图14为本申请一实施例提供的电子设备的结构示意图。示例性地,电子设备可以被提供为一服务器或计算机。参照图14,电子设备1400包括处理组件1401,其进一步包括一个或多个处理器,以及由存储器1402所代表的存储器资源,用于存储可由处理组件1401的执行的指令,例如应用程序。存储器1402中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1401被配置为执行指令,以执行上述业务框架以及数据处理方法的实施例。
电子设备1400还可以包括一个电源组件1403被配置为执行电子设备1400的电源管理,一个有线或无线网络接口1404被配置为将电子设备1400连接到网络,和一个输入输出(I/O)接口1405。电子设备1400可以操作基于存储在存储器1402的操作***,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本申请还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当处理器执行计算机执行指令时,实现如上业务框架以及数据处理方法的方案。
本申请还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上的业务框架以及数据处理方法的方案。
上述的计算机可读存储介质,上述可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(Application Specific IntegratedCircuits,ASIC)中。当然,处理器和可读存储介质也可以作为分立组件存在于数据处理装置中。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (12)
1.一种业务框架,其特征在于,包括:运行在同一个容器中的软件开发工具包SDK层和适配层;其中,
所述SDK层,用于提供与边缘主机业务对应的SDK接口;
所述适配层,用于基于预设边缘框架,将所述SDK接口转化为目标协议的接口;根据所述目标协议的接口,提供所述边缘主机业务对应的微服务,以使边缘应用通过调用所述微服务执行所述边缘主机业务;所述目标协议包括超文本运输协议HTTP和/或消息队列遥测传输MQTT协议;
所述适配层内包括:
接口协议转换单元,用于若所述目标协议的接口为HTTP接口,则将所述SDK接口转换为所述HTTP接口;若所述目标协议的接口为MQTT接口,则通过注册到所述SDK层的回调函数,将所述SDK接口转换为所述MQTT接口,以发布MQTT消息;其中,所述回调函数是在边缘应用启动时所述适配层根据所述边缘应用支持的业务类型注册到所述SDK层的函数;
数据流向管理单元,用于记录对所述目标协议的接口的调用请求信息,以及根据所述调用请求信息,将所述调用请求信息对应的响应数据发送给所述边缘应用,所述调用请求信息至少包括所述边缘应用的标识和序列号;
虚拟化服务管理单元,用于将所述SDK接口虚拟化为微服务,所述微服务的信息包括服务名称、服务类型、服务状态或服务信息中的至少一种;
鉴权单元,用于确定所述边缘应用是否有权限使用所述微服务。
2.一种数据处理方法,其特征在于,包括:
响应于从边缘应用获取业务数据的请求消息,通过业务框架的软件开发工具包SDK层根据所述请求消息,调用所述业务框架的适配层注册到所述SDK层的回调函数,所述回调函数是在所述边缘应用启动时所述适配层根据所述边缘应用支持的业务类型注册到所述SDK层的函数,所述业务框架为如权利要求1所述的业务框架;
通过所述回调函数发布消息队列遥测传输MQTT消息,所述MQTT消息是所述边缘应用在启动时根据所述业务类型订阅的消息,所述MQTT消息携带有所述边缘应用的标识和所述请求消息对应的序列号。
3.根据权利要求2所述的数据处理方法,其特征在于,所述通过所述回调函数发布消息队列遥测传输MQTT消息,包括:
通过所述适配层的接口协议转换单元读取所述回调函数,得到所述边缘应用的注册信息,所述注册信息至少包括所述标识和所述边缘应用支持的业务类型;
根据所述注册信息,通过所述适配层的数据流向管理单元发布MQTT消息。
4.根据权利要求2所述的数据处理方法,其特征在于,所述通过所述回调函数发布消息队列遥测传输MQTT消息之后,还包括:
通过所述适配层接收所述标识对应的边缘应用针对所述MQTT消息的应答消息,所述应答消息携带有所述序列号和目标业务数据;
通过所述适配层根据所述序列号,调用所述SDK层的SDK接口,输出所述目标业务数据。
5.一种数据处理方法,其特征在于,包括:
响应于边缘应用获取业务数据的请求消息,通过业务框架的适配层根据所述请求消息,调用所述业务框架的软件开发工具包SDK层包含的SDK接口,所述请求消息携带有所述边缘应用的标识和所述请求消息对应的序列号,所述业务框架为如权利要求1所述的业务框架;
通过所述SDK接口获取所述请求消息对应的目标业务数据;
通过所述SDK接口根据所述目标业务数据,调用所述适配层注册到所述SDK层的回调函数,所述回调函数是在所述边缘应用启动时所述适配层根据所述边缘应用支持的业务类型注册到所述SDK层的函数;
通过所述回调函数发布消息队列遥测传输MQTT消息,所述MQTT消息是所述边缘应用在启动时根据所述业务类型订阅的消息,所述MQTT消息携带有所述边缘应用的标识和所述请求消息对应的序列号。
6.根据权利要求5所述的数据处理方法,其特征在于,所述通过业务框架的适配层根据所述请求消息,调用所述业务框架的软件开发工具包SDK层包含的SDK接口之前,还包括:
响应于边缘应用获取微服务列表的请求消息,通过所述适配层的虚拟化服务管理单元,将所述微服务列表发送给所述边缘应用。
7.根据权利要求6所述的数据处理方法,其特征在于,所述将所述微服务列表发送给所述边缘应用之后,还包括:
响应于边缘应用获取业务数据的请求消息,通过所述适配层的鉴权单元确定所述边缘应用是否有权限使用所述业务数据对应的微服务;
若确定所述边缘应用有权限使用所述业务数据对应的微服务,则通过所述适配层的接口协议转换单元根据所述请求消息,调用所述SDK接口。
8.根据权利要求5至7中任一项所述的数据处理方法,其特征在于,所述通过所述SDK接口获取所述请求消息对应的目标业务数据之后,还包括:
通过所述适配层根据所述SDK接口,将所述目标业务数据发送给所述边缘应用。
9.一种数据处理装置,其特征在于,包括:
调用模块,用于响应于从边缘应用获取业务数据的请求消息,通过业务框架的软件开发工具包SDK层根据所述请求消息,调用所述业务框架的适配层注册到所述SDK层的回调函数,所述回调函数是在所述边缘应用启动时所述适配层根据所述边缘应用支持的业务类型注册到所述SDK层的函数,所述业务框架为如权利要求1所述的业务框架;
发布模块,用于通过所述回调函数发布消息队列遥测传输MQTT消息,所述MQTT消息是所述边缘应用在启动时根据所述业务类型订阅的消息,所述MQTT消息携带有所述边缘应用的标识和所述请求消息对应的序列号。
10.一种数据处理装置,其特征在于,包括:
第一调用模块,用于响应于边缘应用获取业务数据的请求消息,通过业务框架的适配层根据所述请求消息,调用所述业务框架的软件开发工具包SDK层包含的SDK接口,所述请求消息携带有所述边缘应用的标识和所述请求消息对应的序列号,所述业务框架为如权利要求1所述的业务框架;
获取模块,用于通过所述SDK接口获取所述请求消息对应的目标业务数据;
第二调用模块,用于通过所述SDK接口根据所述目标业务数据,调用所述适配层注册到所述SDK层的回调函数,所述回调函数是在所述边缘应用启动时所述适配层根据所述边缘应用支持的业务类型注册到所述SDK层的函数;发布模块,用于通过所述回调函数发布消息队列遥测传输MQTT消息,
所述MQTT消息是所述边缘应用在启动时根据所述业务类型订阅的消息,所述MQTT消息携带有所述边缘应用的标识和所述请求消息对应的序列号。
11.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行权利要求1所述的业务框架以及权利要求2至8中任一项所述的数据处理方法。
12.一种电子设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行权利要求1所述的业务框架以及权利要求2至8中任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210435748.9A CN115002232B (zh) | 2022-04-24 | 2022-04-24 | 业务框架、数据处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210435748.9A CN115002232B (zh) | 2022-04-24 | 2022-04-24 | 业务框架、数据处理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115002232A CN115002232A (zh) | 2022-09-02 |
CN115002232B true CN115002232B (zh) | 2024-03-22 |
Family
ID=83025264
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210435748.9A Active CN115002232B (zh) | 2022-04-24 | 2022-04-24 | 业务框架、数据处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115002232B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116055575A (zh) * | 2022-12-12 | 2023-05-02 | 国网河北省电力有限公司电力科学研究院 | 一种边缘代理网关 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109542537A (zh) * | 2018-11-15 | 2019-03-29 | 江苏东洲物联科技有限公司 | 一种基于微服务化架构的边缘计算网关 |
CN111756626A (zh) * | 2020-06-03 | 2020-10-09 | 西安交通大学 | 一种基于opc ua的产线边缘设备纵向集成网关及其实现方法 |
CN112764835A (zh) * | 2021-01-22 | 2021-05-07 | 国网宁夏电力有限公司信息通信公司 | 基于边缘计算的电力物联网传感设备配置微服务***及方法 |
CN112799786A (zh) * | 2021-02-02 | 2021-05-14 | 微民保险代理有限公司 | 微服务实例的退出方法、装置、设备及存储介质 |
CN113868081A (zh) * | 2021-09-22 | 2021-12-31 | 山东电力研究院 | 一种用于电网物联管理平台的边缘计算框架及其工作方法 |
CN114153605A (zh) * | 2021-11-29 | 2022-03-08 | 中国电力科学研究院有限公司 | 一种适配自主可控芯片的电力边缘计算智能框架及其部署方法 |
-
2022
- 2022-04-24 CN CN202210435748.9A patent/CN115002232B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109542537A (zh) * | 2018-11-15 | 2019-03-29 | 江苏东洲物联科技有限公司 | 一种基于微服务化架构的边缘计算网关 |
CN111756626A (zh) * | 2020-06-03 | 2020-10-09 | 西安交通大学 | 一种基于opc ua的产线边缘设备纵向集成网关及其实现方法 |
CN112764835A (zh) * | 2021-01-22 | 2021-05-07 | 国网宁夏电力有限公司信息通信公司 | 基于边缘计算的电力物联网传感设备配置微服务***及方法 |
CN112799786A (zh) * | 2021-02-02 | 2021-05-14 | 微民保险代理有限公司 | 微服务实例的退出方法、装置、设备及存储介质 |
CN113868081A (zh) * | 2021-09-22 | 2021-12-31 | 山东电力研究院 | 一种用于电网物联管理平台的边缘计算框架及其工作方法 |
CN114153605A (zh) * | 2021-11-29 | 2022-03-08 | 中国电力科学研究院有限公司 | 一种适配自主可控芯片的电力边缘计算智能框架及其部署方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115002232A (zh) | 2022-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7673029B2 (en) | Grid automation bus to integrate management frameworks for dynamic grid management | |
AU2018365860B2 (en) | Code module selection for device design | |
US9781189B2 (en) | Managed device-to-device communication in business computing systems | |
US9100345B2 (en) | Systems and/or methods for supporting a generic framework for integration of on-premises and SaaS applications with security, service mediation, administrative, and/or monitoring capabilities | |
CN109669723B (zh) | 硬件访问方法、装置、设备和机器可读介质 | |
US20130332524A1 (en) | Data service on a mobile device | |
CN112583898B (zh) | 业务流程编排方法、装置、以及可读介质 | |
CN112925647A (zh) | 云边协同***、集群资源的控制方法及装置 | |
CN102868736A (zh) | 一种云计算监控框架设计及实现方法及云计算处理设备 | |
CN106471465A (zh) | 服务启用器功能 | |
CN111258723B (zh) | 分布式***的事务处理方法、装置、***、介质及设备 | |
CN115002232B (zh) | 业务框架、数据处理方法、装置、设备及存储介质 | |
US9128886B2 (en) | Computer implemented method, computer system, electronic interface, mobile computing device and computer readable medium | |
CN114327710B (zh) | 一种函数管理方法、管理装置、终端设备及可读存储介质 | |
CN109343970B (zh) | 基于应用程序的操作方法、装置、电子设备及计算机介质 | |
EP4354315A1 (en) | Request handling in a multi-protocol cloud environment | |
US20160308991A1 (en) | Analytics system architecture | |
CN112367348A (zh) | 数据获取方法、装置、设备及介质 | |
CN114726905B (zh) | 一种Tbox网络接入Android***的方法、装置、设备及存储介质 | |
CN116527554A (zh) | 基于服务网格的监测***、方法、设备及存储介质 | |
CN113467891B (zh) | 服务处理方法、装置及存储介质 | |
CN115237481A (zh) | 驱动外接设备的方法、装置、设备及存储介质 | |
CN112667441A (zh) | 基于容错功能的业务模块调度方法、***及存储介质 | |
CN114398082B (zh) | 一种框架式区块链应用的兼容运行方法及装置 | |
CN117082017B (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 |