MQ~EMQX
文章平均质量分 63
介绍基于EMQX服务
敲代码的小小酥
上天,请赐予我平静,去接受我无法改变的;给予我勇气,去改变我能改变的;赐我智慧,分辨两者的区别
展开
-
EMQX(一)— 为什么学习EMQX服务
一、为什么要学EMQX我们学习一个新技术,无非是出于两种原因:一种是工作中需要用到该技术;另一种是该技术比较流行,是一种潮流和趋势。对我而言,学习EMQX,是综合了上面的两种原因。我在工作中要以mqtt协议发送消息给另一家厂商,初次听到mqtt协议时,也是一脸懵逼。于是,首先积累了一些关系mqtt协议的知识(点此查看mqtt协议总结)。然后,要选一款合适的mqtt服务器,作为消息中间件,来收发消息。我查阅了很多资料,对比了apache apollo、Mosquitto、HiveMQ、以及支持mqtt协议的原创 2021-06-04 10:31:18 · 9529 阅读 · 0 评论 -
EMQX(二)—目录结构讲解
1.目录结构不同安装方式得到的 EMQ X 其目录结构会有所不同,具体如下:以上目录中,用户经常接触与使用的是 bin 、 etc 、 data 、 log 目录。bin 目录emqx、emqx.cmd:EMQ X 的可执行文件emqx_ctl、emqx_ctl.cmd:EMQ X 管理命令的可执行文件etc 目录(甜点:EMQX的功能和特性,都是基于插件的形式提供的。不同的功能,就对应不同的插件。在插件的配置文件中,可以配置插件的使用。)data 目录EMQ X 将运行数据存储在 da原创 2021-06-11 17:17:24 · 1884 阅读 · 0 评论 -
EMQX(三)—Dashboard插件讲解
前言之前我们讲过,EMQX的功能和特性都是基于插件的。下面我们看EMQX提供的web管理界面插件。一、配置与访问EMQ X Dashboard 功能由 emqx-dashboard 插件实现,该插件默认处于启用状态,它将在 EMQ X 启动时自动加载。如果你希望禁用 Dashboard 功能,你可以将 data/loaded_plugins 中的 {emqx_dashboard, true} 修改为 {emqx_dashboard, false}访问地址:http://EMQX服务ip:18083,原创 2021-06-11 18:10:53 · 4359 阅读 · 12 评论 -
EMQX(四)—认证机制
一、认证简介身份认证是大多数应用的重要组成部分,MQTT 协议支持用户名密码认证,启用身份认证能有效阻止非法客户端的连接。EMQ X 中的认证指的是当一个客户端连接到 EMQ X 的时候,通过服务器端的配置来控制客户端连接服务器的权限。EMQ X 的认证支持包括两个层面:MQTT 协议本身在 CONNECT 报文中指定用户名和密码,EMQ X 以插件形式支持基于Username、ClientID、HTTP、JWT、LDAP 及各类数据库如MongoDB、MySQL、PostgreSQL、Redi原创 2021-06-13 15:02:40 · 3098 阅读 · 0 评论 -
EMQX(五)—JAVA客户端连接操作EMQX服务
前言EMQX提供了很多客户端SDK,如java,js,C++等。除此之外,只要满足MQTT协议的客户端,都可以对EMQX主题进行连接。下面我们讲解java的SDK客户端。一、Eclipse Paho JavaPaho Java客户端是用Java编写的MQTT客户端库,用于开发在JVM或其他Java兼容平台(例如Android)上运行的应用程序。Paho不仅可以对接EMQ X Broker,还可以对接满足符合MQTT协议规范的消息代理服务端,目前Paho可以支持到MQTT5.0以下版本。MQTT3原创 2021-06-13 15:16:28 · 5008 阅读 · 3 评论 -
EMQX(六)—日志与追踪
前言无论任何服务,我们都有必要研究其日志系统,通过日志系统,我们可以有效了解服务运行情况和服务出现问题后的追踪。下面我们讲解EMQX服务的日志功能。日志的基础功能这里不一一赘述,可在官网或我上传的资料里进行查看,这里只记录EMQX提供的特有或新颖的日志功能。1.控制日志输出EMQ X 支持将日志输出到控制台或者日志文件,或者同时使用两者。可在 emqx.conf 中配置 :log.to 默认值是 both,可选的值为:off: 完全关闭日志功能file: 仅将日志输出到文件console: 仅原创 2021-06-13 18:48:50 · 5260 阅读 · 3 评论 -
EMQX(七)—EMQX之订阅发布ACL机制
1.什么是订阅发布ACL发布订阅ACL是指对发布(publish)/订阅(subscribe)操作的权限控制。例如拒绝用户 emq-demo 向 testTopic/a主题发布消息。 EMQ X 支持通过客户端发布订阅 ACL 进行客户端权限的管理。2.ACL插件EMQ X 支持使用配置文件、外部主流数据库和自定义 HTTP API 作为 ACL 数据源。连接数据源、进行访问控制功能是通过插件实现的,使用前需要启用相应的插件。客户端订阅主题、发布消息时插件通过检查目标主题(Topic)是否在指定数原创 2021-06-13 22:42:39 · 3050 阅读 · 2 评论 -
EMQX(八)—集群特性及原理
1.节点间通过节点名称进行通信寻址,所有节点组成一个集群后,每个节点都会与其他节点建立一个TCP连接,每当一个新的节点加入集群时,它也会与集群中所有的节点都建立一个 TCP 连接,最终构成一个网状结构如下:Erlang 节点间通过 cookie 进行互连认证。cookie 是一个字符串,只有 cookie 相同的两个节点才能建立连接cookie 的配置在 etc/emqx.conf 配置文件中2.集群设计原理EMQ X 分布式的基本功能是将消息转发和投递给各节点上的订阅者,如下图所示:为实现此过原创 2021-06-13 23:19:20 · 2028 阅读 · 1 评论