上篇文章主要介绍了使用kettle平台实现文档的高效解析。通过上传文档和下载文档的方式,来对各种异构文档进行数据格式的统一。本篇文章进行介绍kettle平台的其他高级功能,即:mqtt与websocket的相互转换。
需求:物联网平台的数据处理。
大家知道,物联网平台的数据处理过程:硬件设备层——》数据收集层——》业务逻辑层——》展示层。
物联网平台的主要数据传输协议有mqtt,coap,http等,mqtt是最常见的一种。展示层一般采用websocket技术进行展示。
问题:
方案:
如果采用按照处理普通需求的方式,按照定制化逻辑进行开发,势必会导致大量的代码量,而且因为逻辑不通用,会导致一系列的问题。我就猜测有没有这样的一个中间件来解决这个问题呢?通过在互联网上一顿操作,愣是找不到任何资源。我就下决心完成开发这套中间件。
mqtt客户端:MQTTBox。
通过mqttBox向主题windows发布消息,如下图。
数据集成平台:
平台提供websocket接口,并在平台中设置mqtt的相关配置
?websocket客户端在线测试:
调用websocket接口,平台开始监听mqtt数据,若有数据进入,则会通过websocket推送出来
?通过“Get records from stream”节点来进行流处理,对每一条数据进行定制化处理。
将以上两个转换文件进行组合,便可以实现对mqtt的监听,以及对流数据的处理。
通过将上述两个文件进行上传保存后,websocket服务接口通过执行这两个文件,将mqtt数据变化转换为websocket数据变化,并最终通过websocket通道进行数据输出。
平台通过mqtt与websocket的相互转换功能,非常巧妙的解决了物联网中的数据协议转换问题,极大的简化了开发工作量。当然这个功能不仅仅支持mqtt,消息中间件都支持(如:rabbitmqt,kafka等)。
若有什么疑问,可加qq893393953。
首先按照规矩,还是先废话一番,对于刚学PHP的新手来讲,用php写九九乘法表无疑...
数据库作业6GROUP BY语句、连接查询 本文可分为以下几个部分 一、GROUP BY子句 ...
Epoll 是个很老的知识点,是后端工程师的经典必修课。这种知识具备的特点就是研...
前言 Redis是基于c语言编写的开源非关系型内存数据库,可以用作数据库、缓存、消...
2021/4/21 更新 这个设计文档签入了 repo https://codechina.csdn.net/csdn/csdn...
问题9:我有没有必要在每一个ASP文件中使用“Option Explicit”? 答:在实际应...
据外媒报道称,微软承认了一个错误,那就是在之前推出的Windows 10更新中,部分...
Linux程序员经常抱怨,自从他们使用了免费开源的系统平台后,作为一名程序员,却...
下载安装 1.从git官网下载一个git安装包,官网下载地址 http://www.git-scm.com/...
最近由于自己想做一个网站形式的代码库,自已写一个在线文本编辑器,对于现在的...