如需使用最新稳定版本,请使用 Spring Integration 7.0.4spring-doc.cadn.net.cn

IP 配置属性

下表描述了可用于配置 IP 连接的属性:spring-doc.cadn.net.cn

表1. 连接工厂属性
属性名称 客户端? 服务器? 允许的值 属性描述

typespring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

客户端,服务器spring-doc.cadn.net.cn

确定连接工厂是客户端还是服务器。spring-doc.cadn.net.cn

hostspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Nspring-doc.cadn.net.cn

目的地的主机名或IP地址。spring-doc.cadn.net.cn

portspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

端口。spring-doc.cadn.net.cn

serializerspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

用于序列化负载的Serializer实现。 默认为ByteArrayCrLfSerializerspring-doc.cadn.net.cn

deserializerspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

用于反序列化负载的 Deserializer 实现。 默认为 ByteArrayCrLfSerializerspring-doc.cadn.net.cn

using-niospring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

连接是否使用 NIO。 有关更多信息,请参阅 java.nio 包。 查看 关于非阻塞 I/O (NIO)。 默认值:falsespring-doc.cadn.net.cn

using-direct-buffersspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Nspring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

使用 NIO 时,连接是否使用直接缓冲区。 有关更多信息,请参阅 java.nio.ByteBuffer 文档。 如果 using-niofalse,则必须为 falsespring-doc.cadn.net.cn

apply-sequencespring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

当您使用 NIO 时,可能需要重新排序消息。 当此属性设置为 truecorrelationIdsequenceNumber 时,将在接收到的消息中添加相应的头部信息。 请参阅 关于非阻塞 I/O (NIO)。 默认值:falsespring-doc.cadn.net.cn

so-timeoutspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

默认为 0(无穷大),但服务器连接工厂默认为 single-use="true"。 在这种情况下,它默认使用默认的回复超时时间(10 秒)。spring-doc.cadn.net.cn

so-send-buffer-sizespring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

查看 java.net.Socket. setSendBufferSize()spring-doc.cadn.net.cn

so-receive-buffer-sizespring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

查看 java.net.Socket. setReceiveBufferSize()spring-doc.cadn.net.cn

so-keep-alivespring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

参见 java.net.Socket.setKeepAlive()spring-doc.cadn.net.cn

so-lingerspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

linger 设置为带有提供的值的 true。 参见 java.net.Socket.setSoLinger()spring-doc.cadn.net.cn

so-tcp-no-delayspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

参见 java.net.Socket.setTcpNoDelay()spring-doc.cadn.net.cn

so-traffic-classspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

查看 java.net.Socket. setTrafficClass()spring-doc.cadn.net.cn

local-addressspring-doc.cadn.net.cn

Nspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

在多宿主系统上,指定套接字绑定的接口IP地址。spring-doc.cadn.net.cn

task-executorspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

指定用于套接字处理的特定执行器。 如果未提供,则使用内部缓存线程执行器。 在某些需要特定任务执行器的平台上是必需的,例如 WorkManagerTaskExecutorspring-doc.cadn.net.cn

single-usespring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

指定连接是否可用于多个消息。 如果为 true,则每个消息使用一个新连接。spring-doc.cadn.net.cn

pool-sizespring-doc.cadn.net.cn

Nspring-doc.cadn.net.cn

Nspring-doc.cadn.net.cn

此属性不再使用。 为了向后兼容,它设置 backlog,但您应该在服务器工厂中使用 backlog 来指定连接 backlog。spring-doc.cadn.net.cn

backlogspring-doc.cadn.net.cn

Nspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

设置服务器工厂的连接 backlog。spring-doc.cadn.net.cn

lookup-hostspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

指定是否对 IP 地址执行反向查找,将其转换为主机名以用于消息头。 如果为 false,则直接使用 IP 地址。 默认值:falsespring-doc.cadn.net.cn

interceptor-factory-chainspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

查看 TCP 连接拦截器spring-doc.cadn.net.cn

ssl-context-supportspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

参见 SSL/TLS Supportspring-doc.cadn.net.cn

socket-factory-supportspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

参见 SSL/TLS Supportspring-doc.cadn.net.cn

socket-supportspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

查看 SSL/TLS 支持spring-doc.cadn.net.cn

nio-connection-supportspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

查看 高级技术spring-doc.cadn.net.cn

read-delayspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

Yspring-doc.cadn.net.cn

长 > 0spring-doc.cadn.net.cn

在因线程不足导致前一次读取尝试失败后,重试读取之前的延迟(以毫秒为单位)。 默认值:100。 仅当 using-niotrue 时适用。spring-doc.cadn.net.cn

下表描述了您可以设置的属性,用于配置 UDP 入站通道适配器:spring-doc.cadn.net.cn

表2. UDP入站通道适配器属性
属性名称 允许的值 属性描述

portspring-doc.cadn.net.cn

适配器监听的端口。spring-doc.cadn.net.cn

multicastspring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

无论UDP适配器是否使用多播。spring-doc.cadn.net.cn

multicast-addressspring-doc.cadn.net.cn

当 multicast 为 true 时,适配器加入的多播地址。spring-doc.cadn.net.cn

pool-sizespring-doc.cadn.net.cn

指定可同时处理的数据包数量。 仅当未配置 task-executor 时生效。 默认值:5。spring-doc.cadn.net.cn

task-executorspring-doc.cadn.net.cn

指定用于套接字处理的特定执行器。 如果未提供,则使用内部池化执行器。 在某些需要特定任务执行器的平台上是必需的,例如 WorkManagerTaskExecutor。 有关线程要求的详细信息,请参阅 pool-size。spring-doc.cadn.net.cn

receive-buffer-sizespring-doc.cadn.net.cn

用于接收 DatagramPackets 的缓冲区大小。 通常设置为最大传输单元 (MTU) 的大小。 如果使用的缓冲区小于发送数据包的大小,则可能发生截断。 您可以通过使用 check-length 属性来检测此情况。spring-doc.cadn.net.cn

check-lengthspring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

UDP 适配器是否期望在接收到的数据包中包含数据长度字段。 用于检测数据包截断。spring-doc.cadn.net.cn

so-timeoutspring-doc.cadn.net.cn

查看 setSoTimeout() 方法以获取 java.net.DatagramSocket 的更多信息。spring-doc.cadn.net.cn

so-send-buffer-sizespring-doc.cadn.net.cn

用于 UDP 确认数据包。 有关更多信息,请参阅 java.net.DatagramSocket 中的 setSendBufferSize() 方法。spring-doc.cadn.net.cn

so-receive-buffer-sizespring-doc.cadn.net.cn

有关更多信息,请参阅 java.net.DatagramSocket.setReceiveBufferSize()spring-doc.cadn.net.cn

local-addressspring-doc.cadn.net.cn

在多宿主系统上,指定套接字绑定的接口IP地址。spring-doc.cadn.net.cn

error-channelspring-doc.cadn.net.cn

如果下游组件抛出异常,则包含该异常和失败消息的 MessagingException 消息会被发送到此通道。spring-doc.cadn.net.cn

lookup-hostspring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

指定是否对 IP 地址执行反向查找,将其转换为主机名以用于消息头。 如果设置为 false,则直接使用 IP 地址。 默认值:falsespring-doc.cadn.net.cn

下表描述了您可以设置的属性,用于配置 UDP 出站通道适配器:spring-doc.cadn.net.cn

表 3. UDP 出站通道适配器属性
属性名称 允许的值 属性描述

hostspring-doc.cadn.net.cn

目标的主机名或IP地址。 对于多播UDP适配器,即多播地址。spring-doc.cadn.net.cn

portspring-doc.cadn.net.cn

目标端口。spring-doc.cadn.net.cn

multicastspring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

无论UDP适配器是否使用多播。spring-doc.cadn.net.cn

acknowledgespring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

UDP 适配器是否需要来自目标端的确认。 启用时,需要设置以下四个属性:ack-host, ack-port, ack-timeout, 和 min-acks-for- successspring-doc.cadn.net.cn

ack-hostspring-doc.cadn.net.cn

acknowledgetrue 时,表示应发送确认的主机或 IP 地址。 通常为当前主机,但可能不同——例如,在使用网络地址转换(NAT)时。spring-doc.cadn.net.cn

ack-portspring-doc.cadn.net.cn

acknowledgetrue 时,表示应发送确认信息的端口。 适配器会在该端口监听确认信息。spring-doc.cadn.net.cn

ack-timeoutspring-doc.cadn.net.cn

acknowledgetrue 时,表示适配器等待确认的毫秒时间。 如果未在规定时间内收到确认,适配器将抛出异常。spring-doc.cadn.net.cn

min-acks-for- successspring-doc.cadn.net.cn

默认为 1。 对于多播适配器,您可以将其设置为更大的值,这需要来自多个目的地的确认。spring-doc.cadn.net.cn

check-lengthspring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

无论 UDP 适配器是否在发往目标的数据包中包含数据长度字段。spring-doc.cadn.net.cn

time-to-livespring-doc.cadn.net.cn

对于多播适配器,指定 MulticastSocket 的生存时间(TTL)属性。 控制多播的范围。 有关更多信息,请参阅 Java API 文档。spring-doc.cadn.net.cn

so-timeoutspring-doc.cadn.net.cn

查看 java.net.DatagramSocket setSoTimeout() 方法以获取更多信息。spring-doc.cadn.net.cn

so-send-buffer-sizespring-doc.cadn.net.cn

查看 setSendBufferSize() 方法以获取 java.net.DatagramSocket 的更多信息。spring-doc.cadn.net.cn

so-receive-buffer-sizespring-doc.cadn.net.cn

用于 UDP 确认数据包。 有关更多信息,请参阅 setReceiveBufferSize() 中的 java.net.DatagramSocket 方法。spring-doc.cadn.net.cn

local-addressspring-doc.cadn.net.cn

在多宿主系统上,对于 UDP 适配器,指定用于回复消息的套接字所绑定的接口的 IP 地址。 对于多播适配器,它还确定多播数据包通过哪个接口发送。spring-doc.cadn.net.cn

task-executorspring-doc.cadn.net.cn

指定用于确认处理的特定执行器。 如果未提供,则使用内部单线程执行器。 在某些需要特定任务执行器的平台上是必需的,例如 WorkManagerTaskExecutor。 当一个线程专门用于处理确认时(如果 acknowledge 选项为 true)。spring-doc.cadn.net.cn

destination-expressionspring-doc.cadn.net.cn

SpEL 表达式spring-doc.cadn.net.cn

一个将被评估的 SpEL 表达式,用于确定应使用哪个 SocketAddress 作为发往 UDP 数据包的目标地址。spring-doc.cadn.net.cn

socket-expressionspring-doc.cadn.net.cn

SpEL 表达式spring-doc.cadn.net.cn

一个 SpEL 表达式,用于评估以确定发送出站 UDP 数据包时使用哪个数据报套接字。spring-doc.cadn.net.cn

下表描述了您可以设置的属性,用于配置 TCP 入站通道适配器:spring-doc.cadn.net.cn

表 4. TCP 入站通道适配器属性
属性名称 允许的值 属性描述

channelspring-doc.cadn.net.cn

发送入站消息的通道。spring-doc.cadn.net.cn

connection-factoryspring-doc.cadn.net.cn

如果连接工厂的类型为server,则该工厂由此适配器“拥有”。 如果其类型为client,则由一个出站通道适配器“拥有”,并且此适配器会接收由该出站适配器创建的连接上收到的任何传入消息。spring-doc.cadn.net.cn

error-channelspring-doc.cadn.net.cn

如果下游组件抛出异常,则包含该异常和失败消息的MessagingException消息将被发送到此通道。spring-doc.cadn.net.cn

client-modespring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

当设置为true时,入站适配器在建立连接方面充当客户端角色,随后在该连接上接收传入消息。 默认值:false。 另请参阅retry-intervalscheduler。 连接工厂的类型必须为client,且需将single-use设置为falsespring-doc.cadn.net.cn

retry-intervalspring-doc.cadn.net.cn

当值为client-mode时,指定连接尝试之间或连接失败后等待的毫秒数。 默认值:60000(60 秒)。spring-doc.cadn.net.cn

schedulerspring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

指定使用 TaskScheduler 来管理 client-mode 连接。 如果未指定,则默认为全局 Spring Integration taskScheduler Bean,其默认连接池大小为 10。 请参阅 配置任务调度器spring-doc.cadn.net.cn

下表描述了可用于配置 TCP 出站通道适配器的属性:spring-doc.cadn.net.cn

表 5. TCP 出站通道适配器属性
属性名称 允许的值 属性描述

channelspring-doc.cadn.net.cn

到达出站消息的通道。spring-doc.cadn.net.cn

connection-factoryspring-doc.cadn.net.cn

如果连接工厂的类型为client,则该工厂由此适配器“拥有”。 如果其类型为server,则由入站通道适配器“拥有”,且此适配器尝试将消息与接收到原始入站消息的连接进行关联。spring-doc.cadn.net.cn

client-modespring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

当值为true时,出站适配器在启动时尝试立即建立连接。 当值为false时,连接在发送第一条消息时建立。 默认值:false。 另请参阅retry-intervalscheduler。 连接工厂的类型必须为client,且需将single-use设置为falsespring-doc.cadn.net.cn

retry-intervalspring-doc.cadn.net.cn

当值为client-mode时,指定连接尝试之间或连接失败后等待的毫秒数。 默认值:60000(60 秒)。spring-doc.cadn.net.cn

schedulerspring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

指定使用 TaskScheduler 来管理 client-mode 连接。 如果未指定,则默认为全局 Spring Integration taskScheduler Bean,其默认连接池大小为 10。 请参阅 配置任务调度器spring-doc.cadn.net.cn

下表描述了您可以设置的属性,用于配置 TCP 入站网关:spring-doc.cadn.net.cn

表 6. TCP 入站网关属性
属性名称 允许的值 属性描述

connection-factoryspring-doc.cadn.net.cn

连接工厂必须是服务器类型。spring-doc.cadn.net.cn

request-channelspring-doc.cadn.net.cn

接收传入消息的通道。spring-doc.cadn.net.cn

reply-channelspring-doc.cadn.net.cn

用于接收回复消息的通道。 通常,回复会到达添加到入站消息头部的临时回复通道。spring-doc.cadn.net.cn

reply-timeoutspring-doc.cadn.net.cn

网关等待回复的毫秒数。 默认值:1000(1 秒)。spring-doc.cadn.net.cn

error-channelspring-doc.cadn.net.cn

如果下游组件抛出异常,则包含该异常和失败消息的 MessagingException 消息将被发送到该通道。 随后,来自该流程的任何回复都将作为网关的响应返回。spring-doc.cadn.net.cn

client-modespring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

当为true时,入站网关在建立连接方面充当客户端角色,随后在该连接上接收(并回复)传入消息。 默认值:false。 另见retry-intervalscheduler。 连接工厂的类型必须为client,且需将single-use设置为falsespring-doc.cadn.net.cn

retry-intervalspring-doc.cadn.net.cn

当值为client-mode时,指定连接尝试之间或连接失败后等待的毫秒数。 默认值:60000(60 秒)。spring-doc.cadn.net.cn

schedulerspring-doc.cadn.net.cn

true, falsespring-doc.cadn.net.cn

指定使用 TaskScheduler 来管理 client-mode 连接。 如果未指定,则默认为全局 Spring Integration taskScheduler Bean,其默认连接池大小为 10。 请参阅 配置任务调度器spring-doc.cadn.net.cn

下表描述了可用于配置 TCP 出站网关的属性:spring-doc.cadn.net.cn

表 7. TCP 出站网关属性
属性名称 允许的值 属性描述

connection-factoryspring-doc.cadn.net.cn

连接工厂的类型必须为 clientspring-doc.cadn.net.cn

request-channelspring-doc.cadn.net.cn

传出消息到达的通道。spring-doc.cadn.net.cn

reply-channelspring-doc.cadn.net.cn

可选。 发送回复消息的通道。spring-doc.cadn.net.cn

remote-timeoutspring-doc.cadn.net.cn

网关等待远程系统回复的毫秒数。 与 remote-timeout-expression 互斥。 默认值:10000(10 秒)。 注意:在 4.2 之前的版本中,如果设置了该值,则默认为 reply-timeoutspring-doc.cadn.net.cn

remote-timeout-expressionspring-doc.cadn.net.cn

针对消息求值的 SpEL 表达式,用于确定网关等待远程系统回复的毫秒数。 与 remote-timeout 互斥。spring-doc.cadn.net.cn

request-timeoutspring-doc.cadn.net.cn

如果不使用一次性连接工厂,则网关等待获取共享连接的毫秒数。spring-doc.cadn.net.cn

reply-timeoutspring-doc.cadn.net.cn

网关在将回复发送到回复通道时等待的毫秒时间。 仅当回复通道可能阻塞时适用(例如,当前已满的有界 QueueChannel)。spring-doc.cadn.net.cn

asyncspring-doc.cadn.net.cn

发送后释放发送线程;回复(或错误)将在接收线程上发送。spring-doc.cadn.net.cn

unsolicited MessageChannelspring-doc.cadn.net.cn

一个用于发送非请求消息和迟回复的通道。spring-doc.cadn.net.cn