глупая проблема. Я получаю их от клиента, подключающегося к серверу. К сожалению, установка усложняется, что усложняет отладку - и у нас заканчиваются опции.
Среда: * Система клиент / сервер, оба работают на одном компьютере. На самом деле клиент - это служба, выполняющая некоторые манипуляции с базой данных в определенное время. * Связь исходит от C #, проходящего через OleDb, к драйверу EasySoft JDBC и специально написанному серверу JDBC, который затем размещает логику на C ++. Да, compelx, но сторонний поставщик решил раскрыть механизмы расширения для своего сервера через интерфейс JDBC. Здесь мало что можно сделать;)
Симптом: Через регулярные промежутки времени мы получаем сообщение «Адрес уже используется: подключитесь», полученный от драйвера JDBC. Кажется, они исходят от одной конкретной службы, которую мы запускаем.
Я прочитал все об исчерпании портов. Вот почему у нас сейчас работает небольшой инструмент, который ежеминутно считает порты и их состояние. В прошлый раз, когда это произошло, у нас было поразительное количество используемых портов - 370, и количество портов увеличилось примерно до 900 ПОСЛЕ ошибки. Мы уже исправили реестр (это машина с Windows), чтобы разрешить более 5000 стандартных клиентских портов, но даже в этом случае мы далеки от этого предела для начала.
Вот почему я спрашиваю здесь. Ayneone an ide, что еще может вызвать это?
Это машина с Windows 2003 Server, 64 бит. Единственное, что я вижу, что может вызвать это (но эта функция предположительно отключена), - это Symantec Endpoint Protection, установленный на сервере и способный действовать как брандмауэр, он может перехватывать сетевой трафик. Я не хочу открывать банку червей, преждевременно указывая на Symantec (если указание на Symantec может когда-либо рассматриваться как таковое). Итак, кто-нибудь знает, что еще может быть причиной?
Спасибо
Особо выделяются три вещи:
на специально написанный сервер JDBC
и
Symantec Endpoint Protection
и
Система клиент / сервер, оба работают на одном компьютере
Вопрос 1: Как сервер выбирает порты? Может ли быть так, что клиент и сервер (которые находятся на одной машине) каким-то образом синхронизируются с нерегулярными интервалами и выбирают один и тот же порт?
Вопрос 2: Вы пробовали выключить SEP? Если нет, выключите и посмотрите, что произойдет. Вам нужно исключить возможность того, что он мешает.
Вопрос 3: Что значит netstat
сказать во время ошибок?