跳到主要内容

在PubSub+ JCSMP API中检测事件代理功能

在客户端成功连接到事件代理后,对事件代理功能产生影响的配置更改不会异步通知客户端。客户端只有在断开连接并重新连接到事件代理时,才会了解到更改后的功能。

在 PubSub+ JCSMP API 中,要获取特定事件代理的功能和值,请使用以下方法:

  • JCSMPSession.getCapability(...) — 返回当前连接会话的 CapabilityType 中指定类型的对象。

  • JCSMPSession.isCapable(...) — 如果当前连接会话设置了指定的 CapabilityType,则返回 true

有关如何获取特定事件代理功能和值的示例,请参阅 Solace 开发者中心中的 eventMonitor 示例。

下表列出了一些可能对 Solace 消息传递 API 处理消息可用的事件代理功能。它还指示如何在事件代理上启用这些功能,以便这些功能可以被 API 使用。要查看完整的事件代理功能列表,请参阅 PubSub+ 消息传递 API。

功能如果满足以下条件,则对客户端可用...
JNDI — 事件代理允许客户端执行 Java 命名和目录接口(JNDI)查询。在客户端连接到的消息 VPN 上启用了 JNDI。
压缩 — 事件代理允许客户端发送和接收压缩数据。有关 API 详细信息,请参阅在 PubSub+ JCSMP API 中启用通道压缩。事件代理运行软件版本 4.4 或更高版本。
保证订阅流 — 事件代理允许客户端将流绑定到端点以接收保证消息。有关详细信息,请参阅在 PubSub+ JCSMP API 中创建流。- 在事件代理上启用了保证消息传递和消息池化。
  • 分配给客户端的客户端配置文件允许通过启用的消息池接收保证消息。 | | 临时端点 — 事件代理允许客户端创建临时端点。有关 API 详细信息,请参阅在 PubSub+ JCSMP API 中创建临时端点。 | - 在事件代理上启用了保证消息传递和消息池化。
  • 分配给客户端的客户端配置文件允许它们创建保证主题端点或队列。 | | 保证发布流 — 事件代理允许客户端发布保证消息。有关 API 详细信息,请参阅在 PubSub+ JCSMP API 中发布保证消息。 | - 在事件代理上启用了保证消息传递和消息池化。
  • 分配给客户端的客户端配置文件允许它们发布保证消息。 | | 队列浏览器 — 事件代理允许客户端使用队列浏览器。有关 API 详细信息,请参阅在 PubSub+ JCSMP API 中浏览保证消息。 | - 事件代理运行软件版本 4.6 或更高版本。
  • 在事件代理上启用了保证消息传递和消息池化。 | | 端点管理 — 事件代理允许客户端动态创建和删除持久端点。有关 API 详细信息,请参阅在 PubSub+ JCSMP API 中定义端点属性。 | - 事件代理运行软件版本 4.6 或更高版本。
  • 在事件代理上启用了保证消息传递和消息池化。
  • 分配给客户端的客户端配置文件允许它们创建队列或主题端点。 | | 选择器 — 事件代理允许客户端在流上使用消息选择器。有关 API 详细信息,请参阅在 PubSub+ JCSMP API 中使用选择器。 | - 事件代理运行软件版本 4.6 或更高版本。
  • 在事件代理上启用了保证消息传递和消息池化。 | | 端点消息 TTL — 事件代理允许客户端使用保证消息的生存时间(TTL)值和死信队列(DMQ)。有关 API 详细信息,请参阅在 PubSub+ JCSMP API 中设置消息属性和定义端点属性。 | - 事件代理运行软件版本 4.6.1 或更高版本。
  • 在事件代理上启用了保证消息传递、消息池化、消息过期和 DMQ。 | | 队列的主题订阅 — 事件代理允许客户端向队列端点添加主题订阅。有关 API 详细信息,请参阅在 PubSub+ JCSMP API 中向端点添加订阅。 | - 事件代理运行软件版本 4.6 或更高版本。
  • 在事件代理上启用了保证消息传递和消息池化。 | | 订阅管理器 — 事件代理允许客户端代表其他客户端添加或删除主题订阅。有关 API 详细信息,请参阅代表其他客户端管理主题订阅。 | - 事件代理运行软件版本 5.0 或更高版本。
  • 客户端用户名允许客户端充当订阅管理器。 | | 省略 — 事件代理允许客户端使用消息省略。有关 API 详细信息,请参阅消息省略资格。 | - 使用的是运行软件版本 4.6 或更高版本的 3560 或 3260,或者运行软件版本 5.4 或更高版本的 3230。

消息省略不支持在带有网络加速刀片-0401EM 的设备上,因为 NAB-0401EM 不支持省略。

  • 使用的 PubSub+ 软件事件代理是版本 7.2.2 或更高版本。
  • 分配给客户端的客户端配置文件允许消息省略。 | | 事务会话 — 事件代理允许客户端使用本地事务会话和 XA 事务(仅限 JMS)。
    对于 Java、Java RTO、C 和 .NET API,请参阅在 PubSub+ JCSMP API 中使用本地事务。
    对于 JMS API,请参阅使用事务会话和使用 XA 事务。 | - 事件代理运行软件版本 5.1 或更高版本。
  • 在事件代理上启用了保证消息传递和消息池化。
  • 分配给客户端的客户端配置文件允许它们使用 PubSub+ JCSMP API 的事务会话。 | | 无本地 — 事件代理允许直接消息和保证消息的无本地 API 属性。
    对于直接消息传递,请参阅在 PubSub+ JCSMP API 中为会话启用无本地投递。
    对于保证消息传递,请参阅无本地投递。 | 事件代理运行软件版本 5.1 或更高版本。 | | 顺序主题 — 事件代理允许按主题对保证消息进行序列编号。客户端可以通过 Get 调用来获取主题序列号。有关 API 详细信息,请参阅获取消息属性。 | - 事件代理运行软件版本 5.2 或更高版本。
  • 在事件代理上启用了保证消息传递和消息池化。
  • 创建了一个或多个顺序主题。 | | 丢弃行为 — 事件代理允许客户端在配置端点时设置消息丢弃行为。有关 API 详细信息,请参阅在 PubSub+ JCSMP API 中定义端点属性。 | - 事件代理运行软件版本 5.3 或更高版本。
  • 在事件代理上启用了保证消息传递和消息池化。 | | 系统信息功能 — 某些事件代理功能提供系统信息,例如最大保证和直接消息大小、使用的软件版本、软件发布日期以及客户端连接到的事件代理端口的类型和速度。
    要查看提供系统信息的完整事件代理功能列表,请参阅 PubSub+ 消息传递 API。 | 始终提供。 |

PubSub+ 消息传递 API 的可能事件代理功能