pomelo源码解析之模块解析(三)

  • 1. pomelo-admin源码解析

    该模块主要是用于监控服务器的进程。日志、配置、内存等等信息,可自由扩展
    支持monitor类型或者client类型的登录,其中client类型可以额外执行3条控制命令

  • 子模块解析:

    • pomelo-admin/client

      基于pomelo-admin/protocol/mqtt/mqttClient实现的客户端
      连接指定的服务器并处理通讯
      pomelo中 node_modules/pomelo/bin/pomelo中有调用‘adminClient’

    • pomelo-admin/master

      MasterAgent是基于pomelo-admin/protocol/mqtt/mqttServer实现的服务器
      监听client以及monitor的连接并通信。支持请求其他monitor数据、给client/monitor发送数据功能
      其中在client以及monitor连接时,需要进行验证,验证接口可从外部传递进来doAuthUser\doAuthServer

    • pomelo-admin/modules

      这里提供的就是一些可以调用的模块。详见代码

    • pomelo-admin/monitor

      基于pomelo-admin/protocol/mqtt/mqttClient实现的客户端
      连接指定的服务器并处理通讯

    • pomelo-admin/protocol/mqtt

      实现有MqttClient以及MqttServer
      采用了mqtt-connnection + mqtt-package来实现的一套消息流收发功能。
      主要处理publish消息,然后转发topic+payload(json串)。额外增加了超时重连,心跳时间存储功能

    • mqtt简单介绍

      官方文档

    • pomelo-admin并没有使用该类库的实现,而是使用了自己实现的pomelo-admin/protocol/mqtt

      MQTT是基于TCP/IP封装的一套通信协议,消息封装有固定的消息头,提供16种消息类型。
      客户端有3个最基本的操作 subscribe(订阅) unsubscribe(取消订阅) publish(广播)
      服务器收到广播消息后,可以广播给所有订阅了该topic(频道)的客户端
      MQTT只是支持了16种消息类型的结构序列化,以及消息的传递,具体处理逻辑自行编写

      tips: mqtt_client的接口在’mqtt/client.js’中。
      mqtt_server的接口在’mqtt/generate.js’中。
      接口的参数格式可以参照mqtt-packet/README.md

    • mqtt库所实现的客户端和服务器详解
      • 服务器流程

      • 接收消息
        MQTT创建一个服务器(MqttServer\MqttSecureServer),当有客户端连上时生成一个
        MqttServerClient->connection->

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值