基于主题的消息

2,857 / 5,000 翻译结果

基于主题的消息传递

从根本上说,NATS 是关于发布和侦听消息的。这两者都严重依赖于_Subjects_。

什么是主题? 在最简单的情况下,主题只是形成名称的字符串,发布者和订阅者可以使用该名称来查找对方。它有助于将消息范围限定为流或主题。

主题名称允许使用字符

为了跨客户端的兼容性,我们建议使用 ASCII 字符(将来可能会更改)。

推荐字符: azAZ09(名称区分大小写,不能包含空格)。 **特殊字符:**句点.(用于分隔主题中的标记)和*以及>*>用作通配符)。 保留的主题名称: 按照惯例,以 $ 开头的主题名称保留给系统使用(例如,以 $SYS$JS$KV 开头的主题名称等...)

主题层次结构

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

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

通配符

NATS 提供了两个 通配符,它们可以代替点分隔主题中的一个或多个元素。订阅者可以使用这些通配符通过单个订阅收听多个主题,但发布者将始终使用完全指定的主题,而使用通配符。

匹配单个标记

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

译者注 单个标记,不是单个字母

匹配多个标记

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

监控和分接头

根据您的安全配置,通配符可用于通过创建有时称为 分接头 的东西进行监控。在最简单的情况下,您可以为> 创建一个订阅者。此应用程序将在安全设置的限制下接收在您的 NATS 集群上发送的所有消息。

混合通配符

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

主题标记

建议将主题中的最大标记数保持在最大 16 个的合理值。

最后更新于