Задержка tcp / ip-подключения Spring Integration - PullRequest
0 голосов
/ 28 ноября 2018

Мы используем интеграцию Spring 4.1.3.

Иногда для запроса соединения с определенного сервера требуется более 5 секунд.

Что происходит между шагами 1 и 2?

Почему это задерживается?

Журнал клиента

step1 :▶ DEBUG 11.28 18:14:33.237  [ajp-bio-8109-exec-3] org.springframework.integration.ip.tcp.connection.TcpNetClientConnectionFactory[obtainNewConnection:98] - Opening new socket connection to 10.0.12.111:36401
step2 :▶ DEBUG 11.28 18:14:38.306  [ajp-bio-8109-exec-3] org.springframework.integration.ip.tcp.connection.TcpNetConnection[<init>:138] - New connection 10.0.12.111:36401:2701:561f3524-c421-45ba-9ea5-76a7ddf96430

Конфигурация клиента

<int:gateway id="gw-vacct-tcp-sender"
             service-interface="com.mainpay.pay.service.TcpSendVacctGateway"
             default-request-channel="vacct-input"
             default-reply-channel="vacct-reply"
             />

<int-tcp:tcp-connection-factory id="vacct-client"
                                type="client"
                                host="#{springSetting['pay.pg.ngin.vip']}"
                                port="#{springSetting['pay.pg.ngin.vacct.port']}"
                                serializer="TCPJsonSerializer8"
                                deserializer="TCPJsonDeserializer8"
                                single-use="true" 
                                so-timeout="20000"      

/>      

<int:channel id="vacct-input" />

<int-tcp:tcp-outbound-gateway id="vacct-outGateway" 
                              request-channel="vacct-input"
                              reply-channel="vacct-reply" 
                              connection-factory="vacct-client"  
                              reply-timeout="20000"
                              />

<int:channel id="vacct-reply" datatype="java.lang.String" />

1 Ответ

0 голосов
/ 28 ноября 2018

Попробуйте установить lookup-host в false;возможно, существует проблема в сети с обратным поиском хоста.Похоже, что поиск не удался, так как это IP-адрес в идентификаторе соединения.

10.0.12.111:36401:2701:561f3524-c421-45ba-9ea5-76a7ddf96430

См. документацию .

По умолчанию обратный DNSвыполняется поиск входящих пакетов для преобразования IP-адресов в имена хостов для использования в заголовках сообщений.В средах, где DNS не настроен, это может вызвать задержки соединения.Вы можете переопределить это поведение по умолчанию, установив для атрибута lookup-host значение false.

...