打印

Application Services

[复制链接]
5007|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
应用程序服务基于“函数管道”的思想。函数管道是按指定顺序处理消息(在本例中为EdgeX事件/读取消息)的函数集合。管道中的第一个函数是触发器。触发器开始函数的管道执行。触发器类似于到达监视消息队列中的消息。





应用程序功能软件开发工具包(或应用程序功能SDK)可以帮助创建应用程序服务。目前唯一支持SDK的语言是Golang,未来社区将为其他语言开发和支持SDK。它目前作为一个Golang模块可用,以保持与操作系统(OS)无关,并遵循最新的EdgeX依赖管理指南。


任何构建在应用程序功能SDK之上的应用程序都被认为是应用程序服务。通过将触发器、预先存在的函数和定制函数组装成管道,提供了这个SDK来帮助构建应用程序服务。




应用程序服务的改进


提供一个直接连接到消息总线(Core Data事件通过消息总线发布)的SDK,消除了性能问题,并允许开发人员在数据可用时对数据发生的情况进行额外控制。此外,它强调配置而不是注册来消费数据。应用程序服务可以根据客户的需求进行定制,因此也不需要客户注册。






使用特权

评论回复

相关帖子

沙发
keer_zu|  楼主 | 2021-1-7 09:44 | 只看该作者
本帖最后由 keer_zu 于 2021-1-7 09:54 编辑

标准函数

如前所述,应用程序服务是一个函数管道。SDK提供了一些可以在functions管道中使用的标准函数。在未来,额外的功能将提供“标准”,换句话说,由SDK提供。此外,开发人员可以实现自己的自定义函数,并将其添加到应用程序服务函数管道中。





处理来自Core data的数据的一个最常见的用例是过滤数据,使之与给定的应用程序相关,并对其进行格式化。为了帮助实现这一点,SDK中包含了从现有服务移植过来的四个主要功能。第一个是DeviceNameFilter函数,它将删除与指定id不匹配的事件,如果没有匹配的事件,则将停止管道的执行。第二个是ValueDescriptorFilter,它表现出与DeviceNameFilter相同的行为,只是过滤值描述符inste上的事件读取


通常,在根据需要过滤和转换数据之后,导出是管道中的最后一步,以便将数据发送到需要的地方。SDK中包含了两个主要功能来帮助实现这一点。第一个是httppost函数,它将提供的数据POST到指定的端点,第二个是MQTTSecretSend()函数,它将提供的数据发布到配置中指定的MQTT代理。




使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:qq群:49734243 Email:zukeqiang@gmail.com

1352

主题

12436

帖子

53

粉丝