.NET Remoting - сервис не отпускает порт
От: Cadet  
Дата: 18.02.11 11:41
Оценка:
Доброго времени суток!

Столкнулся со следующей ситуацией. Есть сервисный объект который хостится в win сервисе. Клиент обращается к нему через Remoting. Конфигурация сервиса производится через RemotingConfiguration.Configure, используем tcp порт 9000:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <system.runtime.remoting>
        <application>
            <service>
                ...
            </service>
            <channels>
                <channel ref="tcp" port="9000" />
            </channels>
        </application>
    </system.runtime.remoting>
</configuration>


Запускаем сервис, через netstat видим что порт 9000 слушается процессом сервиса, клиент дергает объекты через Remoting, все счастливы.

В какой-то начала возникать такая ситуация что сервис стал падать. Но проблема пока не в этом, а в том, что порт при этом не отпускается. Т.е. прибиваем сервис (через KillProcess), пытаемся его запустить заново — говорит что не может начать слушать порт. Смотрим через netstat — порт открыт, в состоянии LISTENING и при этом его держит почему-то system! Заставить отпустить порт иначе как рестартом пока не выходит. Гугль шерстил — нашел что на форуме человек жаловался на такую же ситуацию, но ему там рассказали что такого быть не может, наверное он что-то курил и ему все кажется. Кто-нибудь сталкивался с таким, и возможно даже порешал проблему? Буду благодарен за подсказки решения.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.