[emqttd] (EMQ)
[emqttd] (EMQ)是采用Erlang语言开发,全面支持MQTT V3.1.1协议,支持集群和大规模连接的开源MQTT消息服务器。 [emqttd]致力于发布一个基于Erlang/OTP语言平台,企业级稳定可靠,完全开源免费,可集群支持大规模物联网、移动互联网连接的MQTT消息服务器。

# 完整的MQTT V3.1/V3.1.1协议支持
* 全面支持MQTT V3.1/V3.1.1协议规范
* QoS0/1/2消息发布与订阅支持
* Session管理和离线消息支持
* Last Will消息支持
* Retained消息支持
* TCP/SSL连接支持
* MQTT over WebSocket连接支持
* HTTP Publish消息发布接口
* ‘$SYS/#’系统Topic支持
* 基于ClientId、IP地址认证支持
* 基于用户名、密码认证支持
* 基于ClientId、用户名、IP地址的ACL访问控制
* 多服务器集群(Cluster)支持
* 多节点桥接(Bridge)支持
* 单节点50万+客户端连接支持
* 插件扩展架构支持
* 通过Eclipse Paho项目的服务器互操作性测试
# 完全开放源码,多节点集群支持
* 开放源码, MIT开源软件许可协议
* 多服务器集群, 大规模客户端连接支持
* 安装简便, 下载解压即可启动运行
* 插件架构, 定制或扩展服务器功能
# 快速下载安装
emqttd可跨平台运行在Linux、FreeBSD、Windows与 Mac OS X。[http://emqtt.io/downloads]页面下载程序安装包。
解压tgz格式程序包,到安装目录启动。例如:
tar xvf emqttd-ubuntu64-0.8.1-alpha-20150529.tgz && cd emqttd
控制台模式启动,用于调试。控制台可以打印所有收发的MQTT报文
./bin/emqttd console
守护进程模式启动,默认占用1883端口用于MQTT连接,8083端口用于HTTP接口
./bin/emqttd start
查看运行状态
./bin/emqttd_ctl status
停止
./bin/emqttd stop
下载源码编译:
git clone https://github.com/emqtt/emqttd.git
cd emqttd && make && make dist
HTTP消息发布接口测试
emqttd支持通过HTTP接口从应用程序向MQTT客户端发布消息:
curl -v --basic -u user:passwd -d "qos=1&retain=0&topic=/a/b/c&message=hello" -k http://localhost:8083/mqtt/publish
URL: HTTP POST http://host:8083/mqtt/publish
参数:
* qos: QoS(0, 1, 2)
* retain: Retain(0, 1)
* topic: Topic
* message: Message
[emqttd] (EMQ)的更多相关文章
- 采用MQTT协议实现android消息推送(2)MQTT服务端与客户端软件对比、android客户端示列表
1.服务端软件对比 https://github.com/mqtt/mqtt.github.io/wiki/servers 名称(点名进官网) 特性 简介 收费 支持的客户端语言 IBM MQ 完整的 ...
- emqttd学习教程(二):emqttd配置说明
一.配置文件说明emqttd消息服务器通过 etc/ 目录下配置文件进行设置,主要配置文件包括: 配置文件 说明 etc/emq.conf 消息服务器配置文件etc/acl.conf 默认ACL规则配 ...
- MQTT研究之EMQ:【EMQX使用中的一些问题记录(1)】
issue 1. EMQX的共享订阅 EMQX是一个非常强大的物联网通信消息总线,基于EMQX开展应用开发,要注意很多配置细节问题,这里要说到的就是共享订阅以及和cleanSession之间的关系问题 ...
- emqtt 试用(九)ssl认证 - 客户端 mqttfx 验证
一.代码生成证书 1.安装openssl,配置path变量 安装文件:Win64OpenSSL-1_1_0f.exe 安装openssl:C:\OpenSSL-Win64 配置path变量:C:\Op ...
- LINUX内核分析第五周学习总结——扒开应用系统的三层皮(下)
LINUX内核分析第五周学习总结——扒开应用系统的三层皮(下) 张忻(原创作品转载请注明出处) <Linux内核分析>MOOC课程http://mooc.study.163.com/cou ...
- 字典(dict)的反转
1.今天在写12306查询余票时,想给定字典(dict)的值,从而得到字典(dict)的键,但好像字典(dict)方法中没有与此相关的方法,只能退而求其次,反转字典(dict),将原字典(dict)的 ...
- MQTT(一)C#使用 MQTTnet 快速实现 MQTT 通信(文末有完整Demo下载)
https://blog.csdn.net/panwen1111/article/details/79245161 目录MQTT(一)C#使用 MQTTnet 快速实现 MQTT 通信(文末有完整De ...
- 机器学习回顾篇(12):集成学习之Bagging与随机森林
.caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px so ...
- MarkDown图文编辑系列教程(二)
一.写在前面 引言 本文是我写的MarkDown系列教程的第二篇,前一篇的地址:MarkDown图文编辑系列教程(一) 读完本篇,你将获得 学会使用markdown语法进行:区块引用(一种常用的引用格 ...
随机推荐
- ob_flush()和flush()和ob_implicit_flush(true)
http://www.jb51.net/article/16215.htm 第一: “ob_flush()和flush()的区别.前者是把数据从PHP的缓冲中释放出来,后者是把不在缓冲中的或者说是被释 ...
- [转]spring4.x注解概述
1. 背景 注解可以减少代码的开发量,spring提供了丰富的注解功能,因项目中用到不少注解,因此下定决心,经spring4.x中涉及到的注解罗列出来,供查询使用. 2. spring注解图 ...
- mysql 中添加索引的三种方法
原文:http://www.andyqian.com/2016/04/06/database/mysqleindex/ 在mysql中有多种索引,有普通索引,全文索引,唯一索引,多列索引,小伙伴们可以 ...
- Android网络通信框架LiteHttp2.0 开篇简介和大纲目录
本帖最后由 移动天宇 于 2015-10-26 10:42 编辑 LiteHttp2.0很多东东焕然一新,旧的能力也得到增强,没有使用的同学来了解一下吧. Android网络框架为什么可以选用lite ...
- Jenkins和Docker以及Kubernetes结合考虑
今天搞了一下Jenkins和Docker的结合,我在想几个问题: 构建是经常的,构建最大的目标还是生成一个包或者应用 发布应用也是频繁的,发布本质上是把这个包放到可运行的环境中便于测试 如果每次构建我 ...
- 一、Instrument之Core Animation工具
一.Instrument 三个方法: (1).按下Command + I打开Instrument; (2).Xcode->product->profile; (3).Xcode->O ...
- 远程访问ubuntu下mysql的问题
ubuntu下mysql不能用IP地址远程访问的问题解决 方法1: 1.mysql>grant all privileges on *.* to 'root'@'%' identified by ...
- [Angular] Extract Implementation Details of ngrx from an Angular Application with the Facade Pattern
Extracting away the implementation details of ngrx from your components using the facade pattern cre ...
- java.util.HashMap 解析
HashMap 是我们经常使用的一种数据结构.工作中会经常用到,面试也会总提到这个数据结构,找工作的时候,”HashTable 和HashMap的区别“被问到过没有? 本文会从原理,JDK源码,项目使 ...
- iOS程序发布测试-生成ad hoc证书
转自: http://blog.sina.com.cn/s/blog_68444e230100srdn.html iOS程序发布测试3-生成ad hoc证书 iOS证书分2种,1种是开发证书,用来给你 ...