INT-2144 Document Socket Timeout Defaults

Add note about timeouts when using collaborating
channel adapters.
This commit is contained in:
Gary Russell
2011-09-25 12:04:11 -04:00
committed by Mark Fisher
parent 4c9b37f5d0
commit d3a916f25c

View File

@@ -604,6 +604,34 @@
unless the transformed payload is a <classname>String</classname> or
<classname>byte[]</classname>,
</para>
<para>
<note>
<para>
When a <emphasis>client</emphasis> connection factory is used by
collaborating channel
adapters, the <emphasis>so-timeout</emphasis> attribute defaults
to the default reply timeout (10 seconds). This means that if
no data are received by the inbound adapter for this period of
time, the socket will be closed.
</para>
<para>
This may not be appropriate in a truly asynch environment, or
if you expect the server to take more than 10 seconds to respond
in a request/reply environment.
The timeout can be increased by setting the
<emphasis>so-timeout</emphasis> attribute on the connection
factory.
</para>
<para>
It is not currently possible to set this to an infinite value
(0); the maximum value can be set using a SpEL expression as
follows.
<programlisting>
so-timeout="#{T(java.lang.Integer).MAX_VALUE}"
</programlisting>
</para>
</note>
</para>
</section>
</section>
<section id="note_nio">
@@ -716,24 +744,28 @@
<entry>Y</entry>
<entry>Y</entry>
<entry></entry>
<entry>See <classname>java.net.Socket</classname>
setSoTimeout() methods for more information.</entry>
<entry>Defaults to 0 (infinity), except when the connection
factory is used by collaborating adapters, where it
defaults to the default reply timeout (10 seconds).
See the section about collaborating adapters above
and <classname>java.net.Socket. setSoTimeout()</classname>.
</entry>
</row>
<row>
<entry>so-send-buffer-size</entry>
<entry>Y</entry>
<entry>Y</entry>
<entry></entry>
<entry>See <classname>java.net.Socket</classname>
setSendBufferSize() methods for more information.</entry>
<entry>See <classname>java.net.Socket. setSendBufferSize()</classname>.
</entry>
</row>
<row>
<entry>so-receive-buffer- size</entry>
<entry>Y</entry>
<entry>Y</entry>
<entry></entry>
<entry>See <classname>java.net.Socket</classname>
setReceiveBufferSize() methods for more information.</entry>
<entry>See <classname>java.net.Socket. setReceiveBufferSize()</classname>.
</entry>
</row>
<row>
<entry>so-keep-alive</entry>