Я вижу несколько соединений со статусом CLOSE_WAIT на моем производственном сервере, и есть несколько вопросов.Пожалуйста, совет.
TcpTimedWaitDelay в HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \Services \ Tcpip \ Parameters
Согласно материалам Microsoft (http://social.technet.microsoft.com/Forums/en-US/windowsserver2008r2networking/thread/4288d218-fbf9-4489-b869-384a05dea83d/), значение TIME_WAIT по умолчанию составляет 4 минуты. Я установил значение за 30 секунд, но выглядиткак будто ничего не изменилось. Более того, даже через 4 минуты соединения CLOSE_WAIT все еще существуют.
У меня вопрос, как мне изменить значение TIME_WAIT и увидеть его в действии? Должен ли я перезапустить свой сервер?
С уважением, Кирилл
CLOSE_WAIT означает, что узел закрыл соединение, а вы нет.Операционная система ждет, пока you (локальное приложение) закроет его.
Так что закройте его.Там, где вы пропустили.
Вы путаете CLOSE_WAIT и TIME_WAIT.Они не одинаковы.
CLOSE_WAIT
TIME_WAIT
См. Здесь: http://www.serverframework.com/asynchronousevents/2011/01/time-wait-and-its-design-implications-for-protocols-and-scalable-servers.html для некоторых деталей о TIME_WAIT и почему вы, возможно, не хотите играть с сокращением времени ожидания.
И посмотрите здесь: http://www.sunmanagers.org/pipermail/summaries/2006-January/007068.html и здесь: http://blogs.msdn.com/b/spike/archive/2008/10/09/tcp-connections-hanging-in-the-close-wait-and-fin-wait-2-state.aspx для получения подробной информации о том, почему вы можете собирать сокеты, застрявшие в CLOSE_WAIT - в общем, вы, возможно, неправильно закрываете свои сокеты.
Я предложу вам использовать Spring WS, потому что у меня возникла та же проблема в моем проекте, и я переключился на Spring Web Service, чем моя проблема решена.
См. Следующий код,
<bean id="viewCustomerInfo" class="org.springframework.remoting.jaxws.JaxWsPortProxyFactoryBean" p:serviceInterface="com.javaplex.CustomerInfoInterface" p:wsdlDocumentUrl="http://127.0.0.1:8080/portal/CustomerInfoPort?wsdl" p:namespaceUri="http://ws.customergen.com/" p:serviceName="CustomerInfo" p:portName="CustomerInfoPort">
Вот полная статья о том, как настроить бобы на основе пружины, которые обеспечивают оптимальную производительность.
http://www.javaplex.com/spring-jax-ws-client-for-best-performance/