MQTT是一种基于发布/订阅模式的轻量级通信协议,适用于物联网设备间的通信。因为其简单、可靠、灵活等特点,越来越多的IoT设备采用MQTT协议进行通信。而MQTT服务器是实现MQTT协议的必要组件,它接收和转发通过MQTT协议发送的消息。本文将介绍如何在Linux系统上搭建轻量级MQTT服务器,并详细介绍Mosquitto、EMQ X和HiveMQ三款常用的MQTT服务器。
创新互联-专业网站定制、快速模板网站建设、高性价比涞水网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式涞水网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖涞水地区。费用合理售后完善,10年实体公司更值得信赖。
一、Mosquitto
Mosquitto是一款轻量级MQTT服务器,由Eclipse开源组织维护。它能在Linux、Windows、macOS等多个平台上运行。Mosquitto除了免费、开源,还具有如下优点:
1. 支持分布式集群
2. 数据存储方式丰富,支持内存模式及文件模式等多种方式
3. 丰富的安全选项,支持基于TLS/SSL协议的传输加密,支持基于用户名和密码的权限认证
4. 开发语言广泛,支持C、C++、Python等多种语言的客户端API
Mosquitto的安装非常简单,只需在Linux系统中执行如下命令:
sudo apt install mosquitto
安装完毕后,运行如下命令启动Mosquitto:
mosquitto -v
我们也可以通过修改配置文件来配置Mosquitto服务器,比如修改MQTT服务器的监听端口号、数据存储的方式等。同时还可以通过执行如下命令安装Mosquitto的客户端API:
sudo apt install mosquitto-clients
二、EMQ X
EMQ X是一款高度可扩展的MQTT服务器,由EMQ Technologies公司维护。它能够支持大规模MQTT集群,能够处理数百万个连接。EMQ X具有如下特点:
1. 高可扩展性,能够支持水平扩展和垂直扩展
2. 支持多种MQTT版本,包括MQTT V5.0
3. 丰富的安全选项,支持基于TLS/SSL协议的传输加密,支持基于用户名和密码的权限认证,支持CA证书管理
4. 支持多种消息存储方式,包括内存模式、SQL数据库、NoSQL数据库等
EMQ X的安装和配置比较复杂,我们需要执行如下命令下载和安装:
wget -qO- https://www.emqx.io/static/binary/emqx20_ubuntu18.04_amd64.deb | sudo dpkg -i –
安装后,执行如下命令启动EMQ X:
emqx start
同时,我们也可以通过修改配置文件来对EMQ X进行配置,例如修改MQTT服务器的监听端口号、数据存储方式等。
三、HiveMQ
HiveMQ是一款高可靠、高性能的MQTT服务器,由HiveMQ GmbH公司维护。它支持多种MQTT版本、支持集群模式、支持数据持久化等多种特性。HiveMQ具有如下特点:
1. 高可靠性,能够支持多种数据备份模式,提供丰富的故障转移机制
2. 高性能,能够支持多线程/多进程模式,优化消息传输效率
3. 支持多种MQTT版本,包括MQTT V5.0和V3.1.1
4. 丰富的安全选项,支持基于TLS/SSL协议的传输加密,支持基于用户名和密码的权限认证,支持CA证书管理
HiveMQ的安装和启动比较简单,我们可以按照如下命令进行:
wget https://www.hivemq.com/releases/hivemq-latest.zip
unzip hivemq-latest.zip
cd hivemq-x.x.x/bin/
./run.sh
同时,我们也可以修改配置文件来对HiveMQ进行配置,例如修改MQTT服务器的监听端口号、数据存储方式等。
四、
以上介绍了Mosquitto、EMQ X和HiveMQ三款常用的MQTT服务器,这些MQTT服务器都具有相应的特点,可以满足各种不同应用场景的需求。在选择MQTT服务器时,我们应该综合考虑系统的稳定性、扩展性、安全性、性能等多个方面。同时,根据实际应用场景的需求,选择具有相应特点的MQTT服务器,才能更好地满足应用需求。
相关问题拓展阅读:
把cleansession设置为true,这里如果设置为false表示服务器会仔塌保留客户端的念哪圆连接记录,这里设置为true表示每次连接到服务器都以新的身份缓枝连接
MQTT是IBM推出的一种针对移动终端设备的基于TCP/IP的发布/预订协议,敏猛棚可以连接大量的远程传感器和控制设备。
MQTT的官网见:
。其中
software
里面提供了官方推荐的各种服务器和客户端使用的各种语言版本的API。
下面以服务器Apollo 1.6为例,之前尝试过使用ActiveMQ,效果很不理想,只能实现服务器和客户端一对一的通信,从 官网
上了解到Apollo属于activemq的一个子工桥则程。先不管这些了,言归正传,以下在windows环境下。
1、在 这里
下载Apollo服务器,下载后解压,然后运行apache-apollo-1.6\bin\apollo.cmd,输入create mybroker(名字任意取,这里是根据 官网
介绍的来取的)创建服务器实例,服务器实例包含了所有的配置,运行时数据等,并且和一个服务器进程关联。
2、create
mybroker之后会在bin目录下生成mybroker文件夹,里面包含有很多信息,其中etc\apollo.xml文件下是配置服务器信息的文
件,etc\users.properties文件包含连接MQTT服务器时用到的用户名和密码,后面会介绍,可以修改原始的
admin=password,可以接着换行添加新的用户名密码。
3、打开cmd,运行…apache-apollo-1.6\bin\知雀mybroker\bin\apollo-broker.cmd run 开启服务器,可以在浏览器中输入
查看是否安装成功,该界面展示了topic,连接数等很多信息。
哇哦?!!
可以,但是你需要一个公网IP,一般终端是没有公网IP的,除非当成二道贩子,用公网IP服务器进行转发
关于mqtt server linux的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
成都网站营销推广找创新互联,全国分站站群网站搭建更好做SEO营销。
创新互联(www.cdcxhl.com)四川成都IDC基础服务商,价格厚道。提供成都服务器托管租用、绵阳服务器租用托管、重庆服务器托管租用、贵阳服务器机房服务器托管租用。
名称栏目:轻量级MQTT服务器在Linux系统的应用 (mqtt server linux)
转载注明:http://www.csdahua.cn/qtweb/news0/394100.html
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网