第 16 章 conduits
摘要
拥塞是实施出站连接的低级传输架构。其行为和生命周期可影响系统性能和处理负载。
概述
conduits 管理 Apache CXF 运行时中的客户端侧或出站传输详情。它们负责打开端口、建立出站连接、发送消息和侦听应用与单一外部端点之间的任何响应。如果应用连接到多个端点,则每个端点将有一个 conduit 实例。
每个传输类型都使用 Conduit 接口来实施自己的 conduit。这样,在应用程序级别功能和传输之间实现了标准化接口。
通常,在配置客户端传输详细信息时,您只需要担心应用程序所使用的 conduit。运行时如何处理 conduit 的基本语义,通常是开发人员需要担心的。
但是,了解相应行为可能会有帮助的情况:
- 实施自定义传输
- 高级应用程序调整以管理有限资源
conduit 生命周期
conduits 由客户端实施对象管理。创建之后,在客户端实施对象的持续时间内保持一致。conduit 的生命周期为:
-
创建客户端实施对象时,它会获得对
ConduitSelector
对象的引用。 当客户端需要发送消息是请求对 conduit 选择器的 conduit 的引用时。
如果消息用于新端点,则 conduit 选择器会创建一个新的 conduit,并将它传递到客户端实施。否则,它会把客户端对目标端点的 conduit 的引用传递。
- 在需要时,conduit 会发送消息。
- 当客户端实施对象被销毁时,与它关联的所有行为都会被销毁。
conduit weight
conduit 对象的权重取决于传输的实现。HTTP conduits 非常轻巧。JMS conduits 非常重,因为它们与 JMS Session
对象相关联,以及一个或多个 JMSListenerContainer
对象。