package
0.8.1
Repository: https://github.com/zerogo-hub/zero-node.git
Documentation: pkg.go.dev

# Packages

No description provided by the author
No description provided by the author

# Functions

DefaultConfig 默认值.
NewRouter 创建一个路由器.
NewSessionManager 创建会话管理器.
RouterID 转化路由 Id.
WithCloseTimeout 关闭服务器的等待时间,超过该时间服务器直接关闭.
WithCompress 压缩与解压器.
WithCompressThreshold 压缩的阈值,当消息负载长度超过该值时才会压缩.
WithDatapack 封包与解包.
WithHost 设置监听地址.
WithLogger 设置日志.
WithLoggerLevel 设置日志级别 见 https://github.com/zerogo-hub/zero-helper/blob/main/logger/logger.go.
WithMaxConnNum 连接数量上限,超过数量则拒绝连接 负数表示不限制.
WithNetwork 可选 "tcp", "tcp4", "tcp6".
WithOnConnClose 客户端连接关闭触发,此时客户端不可以再收发消息.
WithOnConnected 客户端连接到来时触发,此时客户端已经可以开始收发消息.
WithOnServerClose 服务端关闭时触发,此时已关闭客户端连接.
WithOnServerStart 服务器启动时触发,套接字监听此时尚未启动.
WithPort 设置监听端口.
WithRecvBufferSize 在 session 中接收消息 buffer 大小.
WithRecvDeadLine 通信超时时间,最终调用 conn.SetReadDeadline.
WithRecvQueueSize 在 session 中接收到的消息队列大小,session 接收到消息后并非立即处理,而是丢到一个消息队列中,异步处理.
WithSendBufferSize 发送消息 buffer 大小.
WithSendDeadLine SendDeadline.
WithSendQueueSize 发送的消息队列大小,消息优先发送到 sesion 的消息队列,然后写入到套接字中.
WithWhetherCompress 是否需要对消息负载进行压缩.
WithWhetherCrypto 是否需要对消息负载进行加密.

# Constants

FlagCompress 负载 payload 被压缩.
FlagEncrypt 负载 payload 被加密.
FlagInit 这是初始化消息 用于连接时与客户端做一些初始化信息,例如通过 dh 协议交换密钥,用于后续的 rc4 加密.

# Variables

ErrHandlerNotFound 处理函数未找到.
ErrRouterRepeated 路由已存在.
ErrSessionNotFound Session 未找到.

# Structs

Config 一些参数配置.

# Interfaces

Client 客户端,一般用来编写测试用例.
Crypto 加密与解密接口.
Datapack 通讯数据封包与解包.
Message 通讯消息.
Peer 服务接口,比如表示 tcp 服务,udp 服务,websocket 服务.
PeerOption peer 的一些配置表设置.
Router 消息处理路由器.
Session 表示与客户端的一条连接,也称为会话.
SessionManager 会话管理器.

# Type aliases

CloseCallbackFunc 关闭会话后的回调函数.
ConnFunc 与客户端连接相关的响应函数.
HandlerFunc 路由消息处理函数.
MessageHander 处理客户端消息.
NewMessageFunc 创建一条消息.
Option 设置配置选项.
SendCallbackFunc 发送消息的回调函数.
SessionID 定义 Session id 类型.