NATS中文文档:基于主题的消息传递

本质上,NATS就是消息的发布和监听。这两者在很大程度上都依赖于将消息映射为流或话题的主题。简单来说,主题只是一个字符串,作为发布者和订阅者可以用来查找彼此的名称。

NATS服务器保留了一些特殊的字符,规范规定在主题名中只能使用“字母数字”和“.”。主题区分大小写,不能包含空格。为了跨客户端的安全起见,应该使用ASCII字符,尽管将来可能会有所更改。

主题层次结构

这个.字符用于创建主题层次结构。例如,世界时钟应用程序可以定义以下内容,以逻辑方式对相关主题进行分组:

time.us
time.us.east
time.us.east.atlanta
time.eu.east
time.eu.warsaw

通配符

NATS提供了两个通配符,可以代替点分隔主题中的一个或多个元素。订阅服务器可以使用这些通配符订阅一次,就可以侦听多个主题。但发布服务器将始终使用完全指定的主题,而不能使用通配符。

匹配单个令牌

第一个通配符是*它将匹配单个令牌。例如,如果应用程序想要监听东部时区,它们可以订阅time.*.east,它将匹配time.us.east和time.eu.east。

匹配多个令牌

第二个通配符是>,它将匹配一个或多个令牌,并且只能出现在主题的末尾。例如,time.us.>将匹配time.us.east和time.us.east.atlanta,而time.us.*将只匹配time.us.east,因为它不能匹配多个令牌。

监控和窃听

根据您的安全配置,通配符可以通过创建有时称为窃听器的东西来用于监视。在最简单的情况下,您可以创建一个主题为>的订阅服务器。此应用程序将接收NATS群集上发送的所有消息(同样,这取决于您的安全设置)。

混合通配符

通配符*可以在同一主题中多次出现。两种类型都可以使用。例如,*.*.east.>将接收time.us.east.atlanta。

发布了19 篇原创文章 · 获赞 2 · 访问量 675

猜你喜欢

转载自blog.csdn.net/weixin_43465618/article/details/105111812
今日推荐