物联网设备数据流转之搭建环境:开源云原生分布式物联网MQTT消息服务器EMQX
背景
EMQX Broker
一开始的定位就是物联网消息中间件,目前开源版本功能已经非常强大,而企业版本与Cloud版本更是提供了高阶功能,全托管、更稳定、更可靠,技术支持更及时。开源版的 EMQX Broker
除了全面支持 MQTT5
新特性、多协议支持外,更强大的地方在于其围绕 MQTT
周边提供了一系列的 WebHook
、 HTTP API
接口以及最为核心的规则引擎。
这篇文章先完成 EMQX
的安装、运行以及简单体验,在接下来的实践项目中仅用到了其设备接入、 WebHook
功能。
系统环境
为了方便管理,我们的服务器仅用到一台虚拟主机,关于虚拟机如何安装这里就不做演示了,后续的单实例 TDengine
、 TDengine-alert
也安装到当前主机,操作系统为 CentOS7
,主机名为 iot1
。详细的系统及配置信息如下:
- 系统信息
[root@iot1 local]# uname -a
Linux iot1 3.10.0-1127.el7.x86_64 #1
物联网设备数据流转之搭建环境:开源云原生分布式物联网MQTT消息服务器EMQX相关推荐
- 物联网设备数据流转之搭建前端服务框架:Vue3.0, ElementPlus, Axios, Echarts
背景 有了后端服务接口,我们就要开始前端项目搭建啦,终于可以看到展示物联网设备数据的页面了.这篇文章搭建基于最新版 Vue 3.2.13 . ElementPlus 2.1.9 的极简前端脚手架,方便 ...
- 物联网设备数据流转之数据如何实时推送至前端:WebSocket服务端推送
背景 还记得,我们在物联网设备数据流转之实时数据从哪里来.如何转发:Node.js, MQTT, EMQX的WebHook这篇文章中,当 EMQX 的 WebHook 收到来自设备的消息时,我们当时只 ...
- 物联网设备数据流转之数据何时存储:Spring事件及监听机制, 数据入库
背景 还记得,我们在物联网设备数据流转之实时数据从哪里来.如何转发:Node.js, MQTT, EMQX的WebHook这篇文章中,当 EMQX 的 WebHook 收到来自设备的消息时,我们当时只 ...
- Java物联网开发(二) —— 开源百万级分布式 MQTT 消息服务器EMQX
开源百万级分布式 MQTT 消息服务器EMQX 一. 是什么 1. 简介 2. 分类 3. EMQ X 消息服务器功能列表 二. 安装 1. 安装方式 rpm安装 docker安装 免安装 2. 目录 ...
- TDengine极简实战:从采集到入库,从前端到后端,体验物联网设备数据流转
作者:牛晓青 背景 我们的项目涉及物联网相关业务,由于一开始的年少无知,传感器数据采用了 MySQL 进行存储,经过近两年的数据累积,目前几个核心表单表数据已过亿,虽然通过索引优化. SQL 优化以及 ...
- 物联网设备数据流转之数据如何导出:Excel文件
背景 其实,到现在为止,前面的页面已经实现了对设备数据的展现.这一篇文章中对当前的项目做一个增强: 绘制Echarts 图表展示数据变化趋势: 导出设备数据到Excel,体验TDengine的查询效率 ...
- 物联网设备数据流转之数据如何实时推送至前端:WebSocket前端接收
背景 在实现 WebSocket 前端接收前,我们先说明白一件事,为什么要使用WebSocket? 这要从 HTTP 协议说起,我们知道 HTTP 协议只能由客户端发起,而且是短链接,这就会导致我们在 ...
- 物联网设备数据流转之告警信息推送:TDengine-alert
背景 前面关于 TDengine 的使用,我们只涉及到 Server 端与 Client 端,除此之外,官方还有一个报警模块,用以根据用户定义的规则实现近实时的报警监测. 从开始到现在,我们一直在喊口 ...
- 物联网设备数据流转之数据如何存储:TDengine集成SpringBoot, MyBatisPlus实现ORM与CRUD
背景 这篇文章我们重点实现 SpringBoot 与 MyBatisPlus . TDengine 的集成,完成 ORM 以及 CRUD .我们通常说的数据表 CRUD (Create, Retrie ...
最新文章
- python游戏中调整箭头下落速度_入门 | 三行Python代码,让数据预处理速度提高2到6倍...
- linux 软件安装
- mysql五大引擎之间的区别和优劣之分
- 【博客搬家旧文】leetcode 771. Jewels and Stones
- docker安装gamit_科学网—Ubuntu系统GAMIT/GLOBK程序安装 - 陈超的博文
- AngularJS快速入门指南15:API
- 160 - 4 ajj.1
- 动画 自制弹框上滑+渐显效果
- 万能文件在线预览项目,开源!
- 华为云登顶HotpotQA多跳知识推理问答评测
- 红橙Darren视频笔记 builder设计模式+navigationBar导航条
- python 1 面向对象基础知识
- 创建dataframe_Spark原理与实战(五) Spark核心数据抽象DataFrame
- 逆水寒服务器维护能进游戏吗,逆水寒7月12日几点可以进游戏 逆水寒更新维护公告...
- 话题中的Publisher和Subscriber
- m4s转为mp4实例:使用ffmpeg和批处理将m4s转为mp4
- 村庄规划中的产业发展规划
- hbulider初学教程及html5五子棋小程序
- 关于.h文件的书写格式
- C语言的字符串输入函数gets_s()
热门文章
- Drools Runtime概念
- 定义一个基类Shape,在此基础上派生出Rectangle和Circle,二者都有getArea( )函数计算对象的面积,再使用Rectangle类创建一个派生类Square。
- 深入理解 Proxy 和 Reflect-- JavaScript
- 2021最新Java面试笔试题目分享
- 拷贝构造函数的三种使用情况
- C++课程总结——数论
- 纯前端js获取电脑本地IP地址(必用)
- 黑帽SEO主要作弊方法
- 常见博客Blog托管提供商评测
- 将遗传算法(GA)应用于指定的函数 f(x) = x*sin(x)+1,x∈[0, 2л],求其最大值和最小值