第 8 章 配置消息传递传输
本节介绍理解 JBoss EAP 消息传递传输的关键概念,特别是连接器和接收器。服务器上使用接收器来定义其如何接受连接,而客户端则使用连接器来定义其如何连接到服务器。逐个讨论每个概念,一个实用示例演示了客户端如何使用 JNDI 或核心 API 连接 JBoss EAP 消息传递服务器。
8.1. 接收器和连接器类型 复制链接链接已复制到粘贴板!
JBoss EAP 配置中定义了三种主要类型的接收器和连接器:
in-vm :In-vm 是 Intra 虚拟机的缩写。如果客户端和服务器都在同一个 JVM 中运行,例如在同一 JBoss EAP 实例中运行的 Message Driven Beans(MDB),可使用这种连接器类型。
HTTP :在不同 JVM 中运行客户端和服务器时使用。使用 undertow 子系统的默认端口 8080,因此能够通过 HTTP 进行多路消息传递通信。由于端口管理等注意事项,红帽建议在客户端和服务器在不同 JVM 中运行 http 连接器,特别是在云环境中。
远程: 远程 传输是基于 Netty 的组件,当客户端和服务器在不同 JVM 中运行时,用于原生 TCP 通信。在无法使用 http 时替代 http。
客户端必须使用与服务器接收器之一兼容的连接器。例如,只有 in-vm-connector 可以连接到 in-vm-acceptor,并且只有 http-connector 可以连接到 http-acceptor 等。
您可以使用 read-children-attributes 操作,显示管理 CLI 列表给定接收器或连接器类型的属性。例如,要查看您将输入的默认消息传递服务器的所有 http-connectors 属性:
/subsystem=messaging-activemq/server=default:read-children-resources(child-type=http-connector,include-runtime=true)
所有 http-acceptors 的属性都使用类似的命令读取:
/subsystem=messaging-activemq/server=default:read-children-resources(child-type=http-acceptor,include-runtime=true)
其他接收器和连接器类型遵循相同的语法。仅向 子类型 提供接收器或连接器类型,如 remote-connector 或 in -vm-acceptor。