erlang物联网开源项目emqtt下载,源码编译,调试工具和图形化监控相关(二)

简介: erlang物联网开源项目emqtt下载,源码编译,调试工具和图形化监控相关(二)
starting emqttd on node 'emq@192.168.83.128'
emqttd ctl is starting...[ok]
emqttd hook is starting...[ok]
emqttd router is starting...[ok]
emqttd pubsub is starting...[ok]
emqttd stats is starting...[ok]
emqttd metrics is starting...[ok]
emqttd pooler is starting...[ok]
emqttd trace is starting...[ok]
emqttd client manager is starting...[ok]
emqttd session manager is starting...[ok]
emqttd session supervisor is starting...[ok]
emqttd wsclient supervisor is starting...[ok]
emqttd broker is starting...[ok]
emqttd alarm is starting...[ok]
emqttd mod supervisor is starting...[ok]
emqttd bridge supervisor is starting...[ok]
emqttd access control is starting...[ok]
emqttd system monitor is starting...[ok]
emqttd 2.3.11 is running now
Eshell V8.3  (abort with ^G)
(emq@192.168.83.128)1> Load emq_mod_presence module successfully.
dashboard:http listen on 0.0.0.0:18083 with 4 acceptors.
http listen on 0.0.0.0:18084 with 4 acceptors.
mqtt:tcp listen on 127.0.0.1:11883 with 4 acceptors.
mqtt:tcp listen on 0.0.0.0:1883 with 16 acceptors.
mqtt:ws listen on 0.0.0.0:8083 with 4 acceptors.
mqtt:ssl listen on 0.0.0.0:8883 with 16 acceptors.
mqtt:wss listen on 0.0.0.0:8084 with 4 acceptors.
mqtt:api listen on 0.0.0.0:8080 with 4 acceptors.

注意:使用XftpPortable软件时,不要用Windows的写字板来编辑emq.conf和loaded_plugins等文件,否则编码不同,会导致emqttd的进程起不来。



在Windows操作系统使用图形化监控


在Windows安装erlang OTP,然后在cmd命令提示符输入:

werl -name firecat@127.0.0.1 -setcookie emqsecretcookie


或者werl -name firecat@172.16.6.??? -setcookie emqsecretcookie

observer:start().


然后shell输入终端命令observer:start().弹出对话框,点击菜单Nodes->Connect Node,输入Linux的节点名称


emq@172.16.6.161



如果是Linux虚拟机建议使用NAT网络模式,因为Ip地址比较固定,


在物理机Windows终端命令行输入:

werl -name firecat@127.0.0.1 -setcookie emqsecretcookie

或者werl -name firecat@192.168.83.1 -setcookie emqsecretcookie

observer:start().

然后shell输入终端命令observer:start().弹出对话框,点击菜单Nodes->Connect Node,输入Linux的节点名称emq@192.168.83.128



emq运行之后,在linux后台的进程名称是:beam.smp

[root@localhost emqx-rel-2.3.11]# netstat -tunlp|egrep "beam.smp"
tcp        0      0 127.0.0.1:11883         0.0.0.0:*               LISTEN      31483/beam.smp      
tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      31483/beam.smp      
tcp        0      0 0.0.0.0:8883            0.0.0.0:*               LISTEN      31483/beam.smp      
tcp        0      0 0.0.0.0:8083            0.0.0.0:*               LISTEN      31483/beam.smp      
tcp        0      0 0.0.0.0:8084            0.0.0.0:*               LISTEN      31483/beam.smp      
tcp        0      0 0.0.0.0:1883            0.0.0.0:*               LISTEN      31483/beam.smp      
tcp        4      0 0.0.0.0:6369            0.0.0.0:*               LISTEN      31483/beam.smp      
tcp        0      0 0.0.0.0:18083           0.0.0.0:*               LISTEN      31483/beam.smp      
tcp        0      0 0.0.0.0:18084           0.0.0.0:*               LISTEN      31483/beam.smp      
[root@localhost emqx-rel-2.3.11]# kill -9 31483

常见问题解答:


1、EMQ有kafka插件吗?


答:没,要自己写个,用erlang brod库。https://github.com/klarna/brod


或者erlang ekaf库。https://github.com/helpshift/ekaf


这里有个我自己写的完整kafka项目:


https://blog.csdn.net/libaineu2004/article/details/79542220


参考博客:


(1)https://github.com/msdevanms/emqttd_plugin_kafka_bridge


(2)http://www.cnblogs.com/wunaozai/p/8249657.html


2、EMQ是ejabberd+activemq+rabbitmq的综合体


https://www.ejabberd.im/


https://github.com/TTalkIM


http://www.rabbitmq.com/


http://activemq.apache.org/


3、EMQ的hook和session是参考了ejabberd的。


4、CentOS7默认的防火墙是firewall,关掉它


关闭firewall防火墙:sudo systemctl stop firewalld.service


关闭firewall开机启动:sudo systemctl disable firewalld.service


firewall-cmd --state #查看状态


5、如果出现域名解析出错


curl#6 - "Could not resolve host: mirrorlist.centos.org; Unknown error"


则修改/etc/resolv.conf,添加


nameserver 8.8.8.8

nameserver 202.106.0.20


6、压缩命令


tar -zcvf emqx-rel-2.3.11.tar.gz emqx-rel-2.3.11


解压命令


tar -xvf emqx-rel-2.3.11.tar.gz


7、erlang打印输出


io:format("Value is ~p~n", [Val]).%原生打印


io:format("Value is ~w~n", [Val]).%二进制打印


8、emq常用终端命令


./_rel/emqttd/bin/emqttd console

./_rel/emqttd/bin/emqttd start

./_rel/emqttd/bin/emqttd_ctl status

./_rel/emqttd/bin/emqttd stop


./_rel/emqttd/bin/emqttd_ctl cluster join emq@192.168.0.116

./_rel/emqttd/bin/emqttd_ctl cluster status

./_rel/emqttd/bin/emqttd_ctl cluster leave


9、netstat -nalp|grep 1883#查看1883端口的连接情况,观察TCP状态图

netstat -nalp|grep 1883|wc -l #查看1883端口的客户端连接数

ulimit -n 102400 #修改当前进程的最大文件数


10、tail -f *.log #实时查看日志内容



相关实践学习
消息队列RocketMQ版:基础消息收发功能体验
本实验场景介绍消息队列RocketMQ版的基础消息收发功能,涵盖实例创建、Topic、Group资源创建以及消息收发体验等基础功能模块。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
6月前
|
JavaScript 小程序 前端开发
【手把手教教学物联网项目】01 视频大纲
《手把手教教学物联网项目》是一系列视频教程,旨在引导初学者掌握物联网技术。视频涵盖物联网基础,如物联网概述、架构和技术;STM32微控制器的介绍、编程及外设使用;网关开发,涉及ESP8266和ESP32;物联网通信协议如TCP、MQTT、Modbus等;物联网总线协议如单总线、CAN、IIC和SPI;OLED显示原理与驱动;MQTT服务器搭建;物联网云平台介绍,包括阿里云平台的使用;微信小程序开发入门及前端VUE项目实践。此外,教程还涉及UniAPP和SpringBoot后台开发,最后通过“智能取餐柜”项目将理论知识付诸实践。视频可在B站找到,适合学生、爱好者和开发人员学习物联网技术。
295 12
【手把手教教学物联网项目】01 视频大纲
|
6月前
|
监控 物联网 应用服务中间件
流媒体方案之Nginx——实现物联网视频监控项目
流媒体方案之Nginx——实现物联网视频监控项目
流媒体方案之Nginx——实现物联网视频监控项目
|
6月前
|
监控 物联网 编解码
流媒体方案之FFmpeg——实现物联网视频监控项目
流媒体方案之FFmpeg——实现物联网视频监控项目
流媒体方案之FFmpeg——实现物联网视频监控项目
|
6月前
|
监控 JavaScript NoSQL
【开源视频联动物联网平台】写一个物联网项目捐献给Dromara组织
【开源视频联动物联网平台】写一个物联网项目捐献给Dromara组织
119 1
|
6月前
|
前端开发 NoSQL JavaScript
【开源视频联动物联网平台】开箱即用的物联网项目介绍
【开源视频联动物联网平台】开箱即用的物联网项目介绍
183 1
|
14天前
|
传感器 安全 算法
在物联网项目中使用 MicroPython 时如何确保数据安全
在物联网项目中使用MicroPython时,确保数据安全至关重要。可通过加密通信、安全固件更新、认证机制和定期审计等方法提升安全性,防止数据泄露和设备被恶意操控。
|
14天前
|
传感器 物联网 芯片
如何在物联网项目中使用 MicroPython
本指南介绍如何在物联网项目中使用MicroPython,涵盖设备选择、环境搭建、基础编程及网络通信等内容,助你快速上手MicroPython开发。
|
3月前
|
消息中间件 存储 传感器
RabbitMQ 在物联网 (IoT) 项目中的应用案例
【8月更文第28天】随着物联网技术的发展,越来越多的设备被连接到互联网上以收集和传输数据。这些设备可以是传感器、执行器或其他类型的硬件。为了有效地管理这些设备并处理它们产生的大量数据,需要一个可靠的消息传递系统。RabbitMQ 是一个流行的开源消息中间件,它提供了一种灵活的方式来处理和转发消息,非常适合用于物联网环境。
166 1
|
4月前
|
存储 传感器 监控
物联网设备的远程监控与管理:技术与实践
【7月更文挑战第5天】物联网设备的远程监控与管理技术正逐步成熟,为企业和个人带来了前所未有的便利性和洞察力。通过实现设备的实时监控、远程操作、数据分析等功能,可以显著提高设备的运行效率和安全性。然而,面对系统集成、隐私安全、用户体验等挑战,我们仍需不断探索和创新,以推动物联网技术的持续发展和应用。
|
4月前
|
消息中间件 物联网 API
消息队列 MQ使用问题之如何在物联网项目中搭配使用 MQTT、AMQP 与 RabbitMQ
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。

相关产品

  • 物联网平台