问询NATS协议中nats.c源码通配符主题匹配的代码位置
NATS.c 通配符主题匹配逻辑位置说明
- 通配符主题与具体主题的匹配核心逻辑在
subs.c文件中:- 对外暴露的关键匹配函数是
natsSubscription_MatchesSubject,负责接收订阅的通配符主题(如a.*.c)和发布的具体主题(如a.X.c),返回是否匹配的结果。 - 底层执行匹配的函数是
_matchSubject,它会将主题和订阅表达式按.拆分,逐段对比,处理*(匹配单段任意非空主题)和>(匹配剩余所有段)两种通配符规则。
- 对外暴露的关键匹配函数是
- 触发时机:当消息发布时,服务端会遍历对应主题关联的订阅者列表,调用上述匹配函数,筛选出所有匹配的订阅者并推送消息。
内容的提问来源于stack exchange,提问作者limx
相关产品推荐
相关产品推荐

