Java关于物联网消息引擎:EMQ X

news2024/11/27 12:17:52

1.背景

1、5G 时代,万物互联

随着5G的到来,万物互联已经成为现实,物联网行业得以蓬勃发展,催生了很多的应用,比如:物联网pass平台,车联网,面向云平台的IOT-Hub,NB-IoT蜂窝网络,新零售等等,而开发这些应用的核心要素就是物联网设备和平台之间的数据交换,并且要兼备高并发低时延,支持分布式集群等特点,因此打造一款助力构建 5G 时代物联网平台与应用的消息引擎显得尤为重要,而EMQ X则是首选方案。

2、真实的企业需求

一大批先行企业抓住了这个行业风口想做出很好的产品,因此也需要大批的技术人员来帮助他们实现,其中不乏有很多底蕴丰厚,前景广阔的平台。

3、开发人员现状

市场中具备相应能力的开发人员不多,因此需要一篇文章帮助他们来提高。

2.概述

后面的博客从物联网消息通信协议MQTT出发,从协议的原理,数据包的结构,到遵循该协议的消息引擎EMQX,完整的讲授了EMQX Broker消息处理服务器的基础功能及高级功能的使用,帮助学员快速掌握物联网消息引擎EMQX

3.特色

为什么推荐大家学习这个?

1:开源社区最受欢迎的物联网消息引擎,5G 时代大型物联网应用首选技术方案

2:EMQX 助力构建 5G 时代物联网平台与应用;海量物联网设备一站式连接;高并发低时延,大规模分布式,高可用集群架构;强大规则引擎,快速应用集成;边缘到云端,云端到跨云部署

3:完整 MQTT 协议支持,完全开放源码

4.内容

文章的目标是:

1:理解MQTT协议的设计原理和具体的数据结构

2:能够独立使用EMQX 消息服务器的基础功能和高级功能

文章大纲如下:

 

EMQX Broker中的Dashboard页面展示如下:

5.学习收获

学习完文章我们能具备以下能力:

1:能够掌握MQTT这种基于发布/订阅模式的物联网消息通信协议,理解其原理和实现方式,对协议的数据格式非常清楚,能有效应对面试及工作

2:能够搭建EMQX Broker消息服务器环境,掌握它的基本使用步骤。

3:能够使用EMQX Broker轻松连接物联网设备,完成设备端的身份认证和数据双向通信。

4:能够掌握EMQX Broker消息发布/订阅的ACL权限控制,WebHook网络钩子,集群的搭建和使用。

5:能够掌握EMQX Broker中的保留消息,共享订阅,延迟发布,代理订阅,主题重写,黑名单,速率限制,规则引擎等功能。

6.适用人群

目标人群:

1:想要从事物联网行业的技术人员

2:想要完善物联网技术体系的IT人员

3:毕业想从事java开发工作且跟物联网相关的大学生

知识储备:

1:具备一定的Java基础

2:具备基本的springboot使用能力

3:了解计算机网络的基础知识

7.环境和软件版本

1:java:8

2:EMQX Broker 4.5

3:docker/linux-centos7

4:IDEA2017以上版本

5:maven3.5.x以上版本

6:MQTTX客户端

7:Visual Studio code

8.学习方法及建议

1:多动手,课前预习,课后复习,代码一定要手动敲,避免CV,主动记笔记

2:多动眼,除了要仔细看文章提供的讲义外,还要主动阅读相关技术的操作文档

3:多动口,对于文章中不懂的知识点要主动咨询,多和同学/同事交流学习的心得

4:多动脑,对于一些技术点要主动的思考其底层的原理,要知其然还要知其所以然

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1522751.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HCIP—BGP邻居关系建立实验

BGP的邻居称为:IBGP对等体 EBGP对等体 1.EBGP对等体关系: 位于 不同自治系统 的BGP路由器之间的BGP对等体关系 EBGP对等体一般使用 直连建立 对等体关系,EBGP邻居之间的报文 TTL中值设置为1 两台路由器之间建立EBGP对等体关系&#xff0…

MacBook使用——彻底卸载并删除软件:NTFS for Mac

问题 之前因MacBook读写NTFS格式移动硬盘,我安装并使用了 Paragon NTFS for Mac ,试用期结束后将其从【应用程序】中卸载移除了。但之后每次开机启动时,系统还是会弹出【激活】通知,如下图 解决 Step1、在用户目录下的 Library 目…

学习shell脚本

文章目录 什么是shell脚本为什么要学习shell脚本第一个脚本编写与执行 简单的shell脚本练习简单案例脚本的执行方式差异(source、sh script、./script) 如何使用shell脚本的判断式利用test命令的测试功能利用判断符号[ ]shell脚本的默认变量($0、$1...) shell脚本的条件判断式利…

IDEA创建Sping项目只能勾选17和21,没有Java8?

解决办法: 替换创建项目的源 我们只知道IDEA页面创建Spring项目,其实是访问spring initializr去创建项目。故我们可以通过阿里云国服去间接创建Spring项目。将https://start.spring.io/或者http://start.springboot.io/替换为 https://start.aliyun.com/

【2024年5月备考新增】《软考真题分章练习(答案解析) - 5 项目进度管理(高项)》

1、( ) is a technique for estimating the duration or cost of an activity or a project using historical data from a similar activity or project. A.Analogous estimating B. parametric estimating C.Three-Point estimating D. Bottom estimating 【答案】A 【解析】…

MongoDB——linux中yum命令安装及配置

一、创建mongodb-org-3.4.repo文件 vi /etc/yum.repos.d/mongodb-org-3.4.repo 将下面内容添加到创建的文件中 [mongodb-org-3.4] nameMongoDB Repository baseurlhttps://repo.mongodb.org/yum/amazon/2013.03/mongodb-org/3.4/x86_64/ gpgcheck1 enabled1 gpgkeyhttps://www…

Python深度学习之路:TensorFlow与PyTorch对比【第140篇—Python实现】

Python深度学习之路:TensorFlow与PyTorch对比 在深度学习领域,TensorFlow和PyTorch是两个备受青睐的框架,它们为开发人员提供了强大的工具来构建和训练神经网络模型。本文将对这两个框架进行对比,探讨它们的优势和劣势&#xff0…

vscode jupyter 如何关闭声音

网上之前搜的zen模式失败 仅仅降低sound失败 #以下是成功方式: 首先确保user和remote的声音都是0: 然后把user和remote的以下设置都设置为off就行了! 具体操作参考 https://stackoverflow.com/questions/54173462/how-to-turn-off-or-on-so…

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Web)下篇

onRequestSelected onRequestSelected(callback: () > void) 当Web组件获得焦点时触发该回调。 示例: // xxx.ets import web_webview from ohos.web.webviewEntry Component struct WebComponent {controller: web_webview.WebviewController new web_webv…

【视频异常检测】Diversity-Measurable Anomaly Detection 论文阅读

Diversity-Measurable Anomaly Detection 论文阅读 Abstract1. Introduction2. Related Work3. Diversity-Measurable Anomaly Detection3.1. The framework3.2. Information compression module3.3. Pyramid deformation module3.4. Foreground-background selection3.5. Trai…

子组件自定义事件$emit实现新页面弹窗关闭之后父界面刷新

文章目录 需求弹窗关闭之后父界面刷新展示最新数据 实现方案AVUE 大文本默认展开slotVUE 自定义事件实现 父界面刷新那么如何用呢? 思路核心代码1. 事件定义2. 帕斯卡命名组件且在父组件中引入以及注册3. 子组件被引用与父事件监听4.父组件回调函数 5.按钮弹窗事件 需求 弹窗…

wsl or 虚拟机 安装

1.wsl2安装 WSL全称Windows Subsystem for Linux,是微软开发的适用于Linux的Windows子系统 如今已经有两代了: 所以用的多的还是wsl2。 安装前需要先去设置启用或关闭Windows功能: 打开适用于linux的子系统和虚拟机平台。 Microsoft Store里…

接雨水-热题 100?-Lua 中文代码解题第4题

接雨水-热题 100?-Lua 中文代码解题第4题 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例 1: 输入:height [0,1,0,2,1,0,1,3,2,1,2,1] 输出:6 解释…

TinyEMU之Linux Kernel编译

TinyEMU之Linux Kernel编译 1 准备工作2 安装RISC-V交叉编译器3 编译Linux Kernel4 镜像格式转换 本文属于《 TinyEMU模拟器基础系列教程》之一,欢迎查看其它文章。 1 准备工作 我们需要,下载以下内容。 编译好的RISC-V交叉编译器:riscv64-…

微信小程序开发系列(三十三)·如何通过scroll-view实现上拉加载和下拉刷新

找到profile.wxml文件&#xff0c;使用 scroll-view 组件&#xff0c;实现垂直滚动的效果&#xff0c;暂时先设定为横向滚动&#xff0c;在创建一个class类&#xff1a; <scroll-view scroll-y"true" class"scroll-y"></scroll-view> ps&…

CSS3病毒病原体图形特效

CSS3病毒病原体图形特效&#xff0c;源码由HTMLCSSJS组成&#xff0c;双击html文件可以本地运行效果&#xff0c;也可以上传到服务器里面 下载地址 CSS3病毒病原体图形特效代码

3.Windows下安装MongoDB和Compass教程

Windows下安装MongoDB 总体体验下来&#xff0c;&#xff0c;要比MySQL的安装简单了许多&#xff0c;没有过多的配置&#xff0c;直接就上手了&#xff01; 1、下载 进入官方的下载页面https://www.mongodb.com/try/download/community&#xff0c;如下选择&#xff0c;我选…

论文阅读——GeoChat(cvpr2024)

GeoChat : Grounded Large Vision-Language Model for Remote Sensing 一、引言 GeoChat&#xff0c;将多模态指令调整扩展到遥感领域以训练多任务会话助理。 遥感领域缺乏多模式指令调整对话数据集。受到最近指令调优工作的启发&#xff0c;GeoChat 使用 Vicuna-v1.5和自动化…

Mr-Robot1靶场练习靶场推荐小白入门练习靶场渗透靶场bp爆破wordpress

下载链接&#xff1a; Mr-Robot: 1 ~ VulnHub 安装&#xff1a; 打开vxbox&#xff0c;菜单栏----管理----导入虚拟电脑 选择下载完的ova文件&#xff0c;并修改想要保存的位置&#xff08;也可以保持默认位置&#xff09; 导入完成后可以根据自己的情况去配置网络链接方式 完成…

【数据结构和算法初阶(C语言)】二叉树铺垫--栈帧的创建与销毁--细节全解

前言&#xff1a; 学习这么久以来&#xff0c;可能有很多疑问&#xff1a;局部变量怎么创建的&#xff1f;为什么局部变量的值是随机的&#xff1f;函数是怎么传参的&#xff1f;传参的顺序是怎么样的&#xff1f;形参和实参是什么样的关系&#xff1f;函数调用是怎么做的&…