mqtt时序图
2017-09-15 01:54:20 0 举报
mqtt_server 本人自己画的 主要是用于学习 感觉还是可以的
作者其他创作
大纲/内容
processSubscribe()判断clientID是否存在
ClientID不存在,断开连接
访问
channelRead()、读取报文
关闭server
发送报文
:ProtocolProcessor
合法CONNECT
:NettyMQTTHandler
CONNECT不合法
processPublish()、AT_MOST_ONCEAT_LEAST_ONCEEXACTLY_ONCE
close连接
:QosPublishHandler
主题合法(不合法),确认连接
SUBSRCIBE报文
加载初始化的数据new ProtocolProcessor()
QOS = 0
:MYSQL
提交报文
CONNECT报文
publish
主题存在,拥有发布的权限,返回true
:NettyAcceptor
clientID合法,不管取消订阅的主题是否存在,都发布部确认取消订阅报文
调用close(),关闭server
isRetain = false
sql
CONNECT合法
QOS=0,PUBLISH成功
CLient不合法,连接断开
:ConnectionDescriptorStore
:APP
实例化Connection
创建server成功
InitFromMySql()、数据库中所有的client的信息
1.initialize()调用initializePlainTCPTransport()initFactory()、tcpinitializeSSLTCPTransport()initFactory()、ssl
停止服务stopServer()
addConnection()、存储连接
checkWriteOnTopic()主题是否存在是否可以发布
返回Connection连接
PUBLISH报文
返回ReSet结果集
receivedPublishQos0()
是否有订阅者有没有
加载服务startServer()
processConnect()是否是mqtt3.1.1协议是否含有clientID是否UserName,Password是否已经存在该CONNECT
UNSUNSCRIBE报文
发送订阅的主题
0 条评论
下一页