mqtt
猛波波
一个野人。
展开
-
emq实现向大量指定设备推送消息(九)
前言:最近完成了一个需求,向大量的指定设备推送消息。但是,实现过程中发生一些问题,导致不得不换了一种实现方式,故记录之,以供参考。先说明下背景:emq集群为2个节点,配置为4核16G,同时在线设备量大概在10W左右(即每个节点负载约5W)。需求就是:需要向这其中的某3万设备推送某个消息。解读下需求:比如我现在有设备号码是 1-100000 的这么些设备,要推送 30000-60000 ...原创 2020-04-16 17:42:42 · 2197 阅读 · 16 评论 -
物联网场景下MQTT初探(一)
前言:最近在研究车联网场景下,大量车辆会同时在线,并且会同时上传数据,这就需要能支持大量的连接数以及大量的数据吞吐的构件。MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,它比较适合于在低带宽、不可靠的网络的进行远程传感器和控制设备通讯等,正在日益成为物联网通信协议的重要组成部分。MQTT现在主要用于即时通讯,物...原创 2019-04-21 11:54:18 · 1652 阅读 · 0 评论 -
emqx服务器的集群搭建(三)
前言:前面做了emqx的单点搭建,官方的压测显示,即使单点的emqx的性能也是很能打的(EMQ XR3.0 在单机 8核/32G内存的 CentOS 云服务器,能够测试到 130万 的客户端连接数),但单点没有容错能力(如果部署emq的服务器挂了,或者emq本身挂了),一旦出现问题,后续服务将会受到影响,所以现在搭建集群。主要修改./emqx/etc/emqx.conf#集群发现模式,...原创 2019-04-21 12:24:42 · 8497 阅读 · 3 评论 -
emqx服务器的权限验证(四)
前言:emqx是默认开启匿名认证的,即客户端不需要任何认证信息即可连上emqx服务器,但生产环境这样肯定是不行的。emqx也支持很多种认证方式,这里我选着最简单的一种,用户名密码认证。生产环境肯定是不能裸奔的,所以需要权限验证。emqx支持很多种权限验证,我选最简单的一种,用户名权限验证。#先要把emq的匿名认证关了,在emqx.conf文件allow_anonymous = fa...原创 2019-04-21 12:29:26 · 7610 阅读 · 6 评论 -
emqtt_benchmark压测单台emqx服务器(五)
前言:官方说的单台连接达到百万,虽然我信,但我还是要自己玩一下。我用emqtt_benchmark进行压测,要用emqtt_benchmark需要有erlangR17版本以上的环境## 安装erlang虚拟机yum -y install ncurses-devel openssl-devel unixODBC-devel gcc-c++ cd /optwget http://er...原创 2019-04-24 15:04:15 · 3378 阅读 · 10 评论 -
emqtt_benchmark压测emqx集群(六)
前言:前面分别对单台emqx进行了压测,并且从压测结果来看,可以看出单台的能力已经很强,只要资源给够的情况下,应该是能达到官方说的百万连接。但我也说过,单节点是没有容灾能力的,所以现在来测集群。我三个emqx服务分别跑在1核4G内存的虚拟机上,并在128虚拟机上部署了nginx做负载均衡。我的代理端口是18084,先在一台机器上执行,跑30000完的连接。./emqtt_bench_...原创 2019-04-24 17:59:48 · 1764 阅读 · 0 评论 -
nginx+keepalived实现emq集群负载均衡高可用(七)
前言:压测emq集群之前需要有负载均衡服务,做负载均衡的一般常用nginx,也可以用haproxy,我这里用nginx。虽然一个nginx就可以实现负载均衡的功能,但nginx作为一个入口,如果挂了后续服务都将受到影响,nginx+keeplived能实现nginx的高可用。目前nginx+keeplived有两种搭建模式:1,主从热备 2,双机热备。我用第二种,更多利用服务器资源。部署机...原创 2019-05-04 11:00:36 · 1789 阅读 · 0 评论 -
摆脱LB服务器,自己实现emq集群的负载均衡(八)
前言:前面用nginx+keepalived做了emqx的负载均衡和高可用,但是通过观察服务器监控发现,nginx转发了tcp连接到emq后,还会占着tcp的连接数,这就导致服务器的tcp总连接数翻倍。还有个问题就是,通过nginx转发的tcp连接到emq那显示的ip全部变成了nginx服务器的内网ip,那么通过自己实现负载均衡,就没有这个问题。那如何自己实现负载均衡,话不多说,先写思路。...原创 2019-06-06 16:16:08 · 1122 阅读 · 1 评论