Advertisement

Nats 消息总线相关介绍(三):协议相关

阅读量:

字符串协议

Nats 使用的是字符串协议,有协议头、协议体、协议结尾符, 3 部分字符串组成

协议与协议解析相关,均在 parser.go 文件里

协议定义在 parser.go:54 - parser.go:132

协议解析在 client.parse(parser.go:134)

client.parse

Nats 在高效解析字符串协议的过程中,采用了字典树作为解析工具,并逐一扫描字符以深入对应的分支结构中。

要了解发布订阅的逻辑,基本只要关注以下协议:

协议 说明 代码位置
INFO Nats 节点信息同步 parser.go:1048 - parser.go:1063
SUB 订阅 topic parser.go:624 - parser.go:659
PUB 往 topic 发布消息 parser.go:476 - parser.go:497
RS+ topic 订阅信息同步其他节点 同 SUB 。最终走进 SUB 处理逻辑

全部评论 (0)

还没有任何评论哟~