名词解释
在使用环信MQTT消息云前,需要理解该产品所涉及的基本概念和术语。
基本概念
应用(APP)
应用支持开通MQTT消息云服务,且每个应用都对应一个服务接入点,不同的应用之间服务彼此独立。注:在应用列表创建应用时,数据中心选择“国内一区”。
MQTT服务器
基于MQTT协议交互的服务端节点,用于实现MQTT客户端之间的消息传输。环信MQTT消息云为公有云MQTT服务器。
MQTT客户端
用于和MQTT服务器交互的终端节点。
主题(Topic)
MQTT协议基于Pub/Sub模型,因此任何消息都属于一个Topic。使用时,直接在代码里设置,无需创建。
连接信息
连接地址(Host)
MQTT客户端连接环信MQTT消息云的地址。每个APP应用的连接地址不同,具体值参见console下【MQTT】→【服务概览】→【服务配置】下的【连接地址】。
端口(Port)
MQTT客户端当前连接协议所对应的端口。不同接入协议端口不同,具体值参见console下【MQTT】→【服务概览】→【服务配置】下的【连接端口】。
AppID
当前应用的唯一标识ID,具体值参见console下【MQTT】→【服务概览】→【服务配置】下的【AppID】。
deviceID
每个客户端独一无二的标识,由业务方自己指定。需要保证全局唯一,例如序列号或MAC信息。
MQTT clientID(client ID)
MQTT客户端的唯一标识,使用相同的clientID会被拒绝。clientID由上述AppID与deviceID两部分组成,组织形式为“deviceID@AppID” 。
用户名(用户ID)
MQTT客户端接入环信MQTT消息云所使用的用户名,在console下【应用概览】→【用户认证】用户ID列表下创建的用户名。
密码(用户 password)
MQTT客户端接入环信MQTT消息云所使用的密码,在console下【应用概览】→【用户认证】用户ID列表下创建的密码。
token鉴权(token)
MQTT客户端接入环信MQTT时需要先获取token,使用token值进行登录。token获取方式见2.1获取鉴权
协议相关
MQTT
是一种基于发布/订阅(publish/subscribe)模式的低开销、低带宽占用的即时通讯协议,在物联网、小型设备、移动应用等方面有较广泛的应用。
QoS
发布消息的服务质量(保证消息传递的次数)。
- 0:代表最多分发一次
- 1:代表至少达到一次
- 2:代表仅分发一次
cleanSession
离线消息标志,该标志代表客户端建立TCP连接后是否关心之前状态的定义。具体语义如下:
- cleanSession=true:客户端再次上线时,将不再关心之前所有的订阅关系以及离线消息。
- cleanSession=false:客户端再次上线时,还需要处理之前的离线消息,而之前的订阅关系也会持续生效。
retain
保留消息,该标志代表服务器是否需要对该条消息做保留处理,转发给新订阅的客户端。具体语义如下:
- 0:服务器不做保留消息处理。
- 1:服务器做保留处理,并向新订阅的客户端发布该条保留消息。
Last Will
遗嘱消息,当MQTT服务器检测到客户端非正常断开连接时,就会代替客户端向遗嘱主题里面发布一条消息,其他订阅遗嘱主题的客户端就可以收到异常通知。
上行消息
发布(Publish)客户端向服务器发送的消息。
下行消息
订阅(Subscribe)客户端订阅主题后,从服务器接收该主题的消息。
统计指标
DAU
日活,当日登录的clientID数,当日一个clientID登录(不限次数)算一个日活。
消息数
包括上行数据发送和下行数据接收的消息总条数。
消息流量
包括上行数据发送和下行数据接收的消息流量总数。
峰值会话数
实时最高会话数(session数)。
峰值订阅数
实时最高订阅数。
记录查询
messageID
消息的全局唯一标识,messageID可用于查询消息收发记录,排查问题。
上行消息轨迹
发送(publish)的消息轨迹, 该记录可查看发布客户端、发布时间、messageID、QoS等级以及发布主题。
下行消息轨迹
接收(subscribe)的消息轨迹, 该记录可查看接收客户端、接收时间、QoS等级以及投递状态。