1. 为什么选择EMQX作为MQTT服务器在物联网和消息中间件领域MQTT协议已经成为事实上的标准协议。EMQX作为一款开源的MQTT消息服务器在5.0版本后更是实现了质的飞跃。我选择在Ubuntu 20.04上部署EMQX主要基于以下几个考虑首先是性能表现EMQX 5.x单节点可以轻松支持百万级MQTT连接集群模式下更能实现千万级设备接入。相比Mosquitto等轻量级MQTT brokerEMQX更适合企业级应用场景。其次是功能完整性EMQX原生支持MQTT 5.0协议提供规则引擎、数据桥接等高级功能可以无缝对接Kafka、MySQL等外部系统。Ubuntu 20.04 LTS作为长期支持版本系统稳定性有保障。其内置的OpenSSL 1.1.1也满足EMQX的加密通信需求。我在生产环境中实测发现这个组合的稳定性表现非常出色连续运行90天无故障。2. 环境准备与依赖检查2.1 系统更新与基础配置在开始安装前建议先执行系统更新sudo apt update sudo apt upgrade -y检查关键依赖版本openssl version # 需要1.1.1及以上 erl -version # 可选EMQX自带Erlang运行时注意如果之前安装过旧版EMQX务必先彻底卸载sudo apt remove --purge emqx rm -rf /var/lib/emqx /etc/emqx2.2 防火墙配置MQTT默认使用以下端口1883: MQTT TCP端口8883: MQTT SSL端口8083: MQTT WebSocket端口8084: MQTT WebSocket SSL端口配置UFW防火墙规则sudo ufw allow 1883/tcp sudo ufw allow 8883/tcp sudo ufw allow 8083/tcp sudo ufw allow 8084/tcp sudo ufw enable3. EMQX安装与配置3.1 通过官方仓库安装添加EMQX仓库并安装curl -s https://assets.emqx.com/scripts/install-emqx-deb.sh | sudo bash sudo apt install emqx -y启动EMQX服务sudo systemctl start emqx设置开机自启sudo systemctl enable emqx验证服务状态sudo systemctl status emqx3.2 初始访问控制台EMQX提供Web管理界面默认监听18083端口。首次访问http://服务器IP:18083默认账号admin 默认密码public安全提示首次登录后务必修改默认密码在生产环境中建议禁用默认账户创建新管理员账号。4. 核心配置调优4.1 基础参数配置编辑主配置文件sudo nano /etc/emqx/etc/emqx.conf关键参数调整建议node.name emqx服务器IP # 集群时需唯一 listeners.tcp.default 0.0.0.0:1883 listeners.ssl.default 0.0.0.0:8883 listeners.ws.default 0.0.0.0:8083 listeners.wss.default 0.0.0.0:8084 # 性能调优 zone.external.max_packet_size 10MB # 最大消息大小 zone.external.max_mqueue_len 10000 # 消息队列长度4.2 SSL证书配置生成自签名证书生产环境建议使用CA签发证书mkdir -p /etc/emqx/certs openssl req -x509 -newkey rsa:2048 -keyout /etc/emqx/certs/key.pem -out /etc/emqx/certs/cert.pem -days 365 -nodes配置SSL监听器listeners.ssl.default { bind 0.0.0.0:8883 max_connections 102400 ssl_options { keyfile /etc/emqx/certs/key.pem certfile /etc/emqx/certs/cert.pem } }5. 高级功能配置5.1 认证与ACL配置EMQX支持多种认证方式这里演示MySQL认证配置安装MySQL插件sudo emqx_ctl plugins install emqx_auth_mysql配置/etc/emqx/plugins/emqx_auth_mysql.confauth.mysql.server 数据库IP:3306 auth.mysql.username dbuser auth.mysql.password dbpassword auth.mysql.database mqtt_auth创建数据库表结构SQL脚本见官方文档5.2 规则引擎应用通过Dashboard配置规则引擎进入规则引擎 - 规则创建规则例如将温度数据存入MySQLSELECT payload.temp as temp, clientid FROM sensor/data添加动作数据持久化 - 保存数据到MySQL6. 运维与监控6.1 日志管理查看实时日志sudo journalctl -u emqx -f日志文件位置/var/log/emqx/emqx.log.N/var/log/emqx/emqx.log建议配置logrotatesudo nano /etc/logrotate.d/emqx添加/var/log/emqx/*.log { daily rotate 30 compress delaycompress missingok notifempty }6.2 监控指标EMQX提供Prometheus格式的监控指标http://服务器IP:18083/api/v5/prometheus/statsGrafana仪表板模板可从EMQX官网获取包含连接数监控消息吞吐量主题统计系统资源占用7. 常见问题排查7.1 连接问题排查客户端无法连接检查防火墙设置确认EMQX服务状态查看日志中的错误信息SSL连接失败openssl s_client -connect 服务器IP:8883 -showcerts7.2 性能问题优化高负载下连接不稳定调整/etc/emqx/etc/emqx.conf中的os_mon { mem_check_interval 60s sysmem_high_watermark 70% procmem_high_watermark 5% }消息堆积处理增加zone.external.max_mqueue_len优化客户端消费速度考虑使用共享订阅分担负载8. 生产环境建议安全加固措施禁用默认账户启用TLS 1.2配置IP访问限制定期审计ACL规则高可用部署使用3-5节点组成集群配置负载均衡器设置监控告警备份策略定期备份/etc/emqx目录导出Dashboard配置备份认证数据库在实际部署中我发现EMQX的集群功能非常稳定跨机房部署时建议使用专线连接。对于消息持久化需求可以结合Redis Streams实现消息缓冲再通过规则引擎写入数据库这种架构在日均10亿消息量的场景下表现优异。
企业数字化 ERP 产品动态
相关推荐
深度强化学习在配电网电压优化中的应用与实践 1. 项目背景与核心价值 现代配电网正面临前所未有的运行压力。随着分布式光伏、电动汽车充电桩等新型电力设备的规模化接入,传统"被动式"的电压控制方法已难以应对频繁的电压波动问题。去年某沿海城市就曾发生过因局部电压越限导致的连锁故障,… · 2026/9/21 3:40:08
OpenClaw游戏兼容性问题全面解决方案 1. 项目背景与问题定位OpenClaw作为一款经典横版动作游戏的重制版本,其Windows中文版的安装过程往往只是第一步。根据我处理过上百例游戏运行问题的经验,安装完成后的兼容性报错、控制失灵、画面异常等问题才是真正困扰玩家的"重灾区"。这些问… · 2026/10/16 8:56:32
电工证在上海哪办理电子证书怎么拿 电工证在上海哪办理电子证书怎么拿 你是不是也在愁电工证在上海哪办理?怕被中介忽悠,又怕流程复杂?别急,这篇文章就告诉你真实路径,怎么拿到电子证书,还不会被坑。… · 2026/11/12 3:12:55
高压电工证证书类型在哪考?周口房建工程从业者必看避坑指南 高压电工证证书类型在哪考?周口房建工程从业者必看避坑指南 你是不是正在找工作,但被要求必须有高压电工证?别急,这篇文章告诉你【高压电工证证书类型】在哪考,怎么考,怎么选,让你少走弯路,顺利上岗!… · 2026/11/12 3:12:55
泰无聊电工证有效期多久 你拟定的标题 30天搞定泰无聊电工证真实经历,怕考不过白交培训费?南阳卧龙区学员亲身分享 怕考不过白交培训费?这事儿我懂。去年在南阳卧龙区一家培训机构报名考泰无聊电工证,我就是怕花了几千块培训费,结果考试不过白搭。但后来通过认真准备,顺利拿… · 2026/11/12 3:12:55
电工证过期6年了怎么考?考前押题能提高通过率吗? 电工证过期6年了怎么考?考前押题能提高通过率吗? 怕考不过白交培训费?电工证过期6年了,很多老电工都在问,能不能继续考?考试难不难?有没有什么“考前押题”能用?别急,老电工来帮你把关。… · 2026/11/12 3:12:55
鞍山电工证去哪里办多久拿证?急需特种作业证才能上岗找工作 鞍山电工证去哪里办多久拿证?急需特种作业证才能上岗找工作 你是不是正在为找工作发愁?是不是听说很多岗位都要求有特种作业证?尤其是电工证,简直是很多行业的“通行证”。鞍山电工证去哪里办?多久拿证?这些问题不搞清楚,你连面试资格都可能没有。别急… · 2026/11/12 3:12:55
常德市报考电工证真实经历:学历不高怕报不上名?看过来! 常德市报考电工证真实经历:学历不高怕报不上名?看过来! 你是不是也这样想: 学历不高怕报不上名 ?其实,电工证报考对学历的要求并没有你想象中那么高,很多人 没有学历也能考… · 2026/11/12 3:11:55
电工证丢失还能补吗?千万别踩坑,丢了证等于失业 电工证丢失还能补吗?千万别踩坑,丢了证等于失业 你正在找工作,但手里的电工证突然丢了,这下怎么办?别急,先别慌, 电工证丢失还能补吗 ?答案是肯定的,但 千万别踩坑 ,补办流程如果不了解,可能会耽误你上岗、甚至影响到你的收入。… · 2026/11/11 12:18:07
电力电缆作业证直播报名入口与办理流程良心建议 电力电缆作业证直播报名入口与办理流程良心建议 你是不是也担心学历不高报不了名?别急,今天就给你讲讲 电力电缆作业证直播 的报名流程和那些你必须知道的干货, 良心建议 在这里,别错过。 电力电缆作业证直播报名需要什么条件?… · 2026/11/11 19:07:25
英德电工证报考费多少钱,怕考不过白交培训费?看完这篇别再踩坑 英德电工证报考费多少钱,怕考不过白交培训费?看完这篇别再踩坑 怕考不过白交培训费?英德电工证报考费多少钱,你真的了解吗?现在市面上培训机构五花八门,价格参差不齐,很多人一不小心就花了冤枉钱,结果还考不过。别急,今天就来给你说清楚英德电工证的… · 2026/11/11 17:14:54
电工证设年审有效期多久官方回应来了,工地太忙根本没时间复习考试 电工证设年审有效期多久官方回应来了,工地太忙根本没时间复习考试 工地太忙根本没时间复习考试,这是很多一线电工、焊工、高处作业人员的真实写照。尤其是像你这样刚毕业的鹤壁工程类毕业生,一边要找工作,一边要考证,时间紧张,复习效率低。但你可能不知… · 2026/11/12 0:00:56
新乡电工证实操怕挂科?电工作业动漫图+报考避坑全解析 新乡电工证实操怕挂科?电工作业动漫图+报考避坑全解析 实操考试心里没底怕挂科?你不是一个人。新乡的水利工程从业者,很多在报考电工证的时候都担心自己操作不熟练、考试不通过, 千万别踩坑 ,选对资料和方法真的能提高通过率。… · 2026/11/12 0:00:56
网电工证千万别踩坑:实操考试心里没底怕挂科怎么破? 网电工证千万别踩坑:实操考试心里没底怕挂科怎么破? 实操考试心里没底怕挂科,这是很多准备报考【网电工证】的学员最真实的感受。尤其是在高压电工、低压电工等工种上,操作环节的容错率极低,一旦失误就可能直接被判定不合格。很多人因为担心挂科而放弃考… · 2026/11/12 0:00:56
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/10 20:19:29
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/10 19:22:45
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/11 17:15:20