2014-12-09 3 views
0

Похоже, что эта точная проблема была задана и ответила автору. К сожалению, исходный форум теперь доступен только для чтения, и я больше не могу расширять этот поток или прямое сообщение автора. (dangling-ports-via-spring-in-close-wait)Висячие порты через перемычку пружины в «CLOSE_WAIT»

Моя среда:

  • апач-кот-7.0.53
  • CommonsHttpInvokerRequestExecutor
  • Spring 3.2.11.RELEASE
  • HttpClient-4.3.5

Я тоже вижу много соединений CLOSE_WAIT, висящих вокруг.

Правильный ответ «получить дескриптор httpclient и закрыть сокет из приложения»?

Если да, то кто-нибудь может предоставить фрагмент кода, как получить доступ к httpclient из приложения? Если это неправильный подход, каков правильный способ его исправить?

ответ

0

Похоже Florent Guillaume есть ответ: Using HttpClient properly

Один простой способ заключается в добавлении: method.addHeader ("Connection", "близко"); Для других способов избежать CLOSE_WAIT, пожалуйста, прочитайте его запись в блоге.

0

У меня было довольно много же вопрос: я использовал org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean для вызова методов из одного приложения в другое. Оба приложения были развернуты на одном и том же коте.

Когда мы проводили стресс-тестирование с большим количеством подключений, оно заканчивалось так, что у нас было несколько сотен соединений в netstat -a to tomcat. Большинство из них имели статус CLOSE_WAIT. И через несколько часов они все еще были там.

После прочтения некоторых документов я решил изменить HttpInvokerProxyFactoryBean. Он имеет httpInvokerRequestExecutor поле, которое по-умолчанию для org.springframework.remoting.httpinvoker.SimpleHttpInvokerRequestExecutor Однако, есть более продвинутые org.springframework.remoting.httpinvoker.HttpComponentsHttpInvokerRequestExecutor , который поддерживает проверку подлинности, Пулы соединений и т.д. И, как правило, он должен правильно управлять пулом подключений, но это не так.

Я также попытался добавить заголовок соединения заголовка заголовка, но это не помогло ни одному.

Итак, в конце дня, я решил пойти на Удаленные вызовы по RabbitMQ.

Смежные вопросы