Тайм-аут клиента Mule ESB - PullRequest
       50

Тайм-аут клиента Mule ESB

0 голосов
/ 11 сентября 2018

У меня есть esb, с которого я звоню через веб-сервис. Вызов веб-сервиса хорошо работает внутри организации. Мы обновили версию Mule ESB с 3.2.2 до 3.8.5. Обе версии хорошо работают для нас, однако, когда продавец вызывает веб-сервис, он получает ошибку Socket Time out. Мы включили TLSv1.2 в Mule ESB. Тайм-аут происходит ровно через 20 секунд. Однако у нас нет тайм-аута на 20 секунд, для WS он установлен на 60 секунд. Клиент использует .net технологию. Когда мы используем почтальон для локального вызова WS, у нас не возникает никаких проблем. Вызов WS - это простой запрос POST, который принимает xml. Сначала клиент получает информацию заголовка, но затем происходит тайм-аут до получения полного ответа. Это связано с данными формы Multipart? Дайте мне знать ваши мысли.

Ответы [ 2 ]

0 голосов
/ 23 июня 2019

Обновляя Mule до версии 3.8, вы также должны перенести поток на новые компоненты.Замените http:outbound-endpoint на http:request.Настройте свойство responseTimeout.У меня были такие ситуации раньше.Попробуйте изменить parseResponse или / и requestStreamingMode.В зависимости от WS, Mule может столкнуться с ожиданием.

<http:request-config name="requestConfig" ... responseTimeout="120000"  />

<http:request path="/api/v1/orders" method="POST" config-ref="requestConfig">
   <!-- configure the elements you need -->
</http:request>

Кстати, Mule также имеет компонент для потребления Webservice (SOAP).Если вам нужна помощь при переходе с Mule 3.3 (или другой версии) на любую версию, просто дайте мне знать.

0 голосов
/ 12 сентября 2018

По умолчанию период времени равен 1000 миллисекунд в муле, но вы можете установить другое значение через параметр responseTimeout.

 <http:outbound-endpoint address="http://test.com/ws" method="post" exchange-pattern="request-response" responseTimeout="5000"/> 

Но в идеале для потребления Web-сервиса, когда вы настраиваете Consumer Consermer Webservice, идите -> Ссылки -> Ссылка Http Configuration -> Нажмите Edit -> Other settings -> Response Time outкак 60000 (что составляет 60 секунд). Тогда ваш ESB-вызов может подождать до 60 секунд. В зависимости от времени отклика вы можете увеличить или уменьшить время ожидания. Надеюсь, это поможет ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...