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

本文深入解析了Pomelo框架中的四个连接器:sioconnector、hybridconnector、udpconnector和mqttconnector,详细介绍了它们各自支持的通信协议、消息处理、加密方式以及对外提供的接口。通过对比分析,展示了Pomelo如何通过封装隐藏内部细节,提供统一的对外交互接口。
摘要由CSDN通过智能技术生成

  • pomelo/lib/connectors

    4个模块都是服务器,都是继承自EventEmitter,只是支持的通信协议有差别

  • 1. sioconnector

    通信协议:基于socket.io的websocket
    消息流:json明文
    内部加密: 无
    外部加密:encode并没有实现
    支持参数:心跳,心跳超时,关闭超时等
    返回的socket: siosocket

    代码结构:
    导出的是一个函数Connector,也就是说是用该模块需要这样:
    var sio = require(‘sioconnector’)(port, host, opts);或者使用new创建
    返回的sio有如下接口:
    start();
    stop();
    encode(reqId, route, msg);
    decode(msg);

    在start中启动后,会调用socket.io创建一个http服务器,设置一些属性
    当接收到’connection’消息后,会创建一个SioSocket对象把真正的socket封装一层
    这里也会发送一次’connection’供上层调用:

var sio = require('sioconnector')(port, host, opts)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值