У нас есть приложение, которое подключается к паре сотен баз данных с помощью ADO. Теперь я знаю, что это может быть не лучшим способом работы (наша клиентская база расширилась со времени написания приложения), и мы переписываем приложение, чтобы ограничить количество подключений. Однако пока я смотрю на порты, используемые на компьютере, на котором работает это приложение, я вижу, что локальный порт, используемый для соединения, находится в диапазоне от 2519 до 2726.
Я всегда думал, что локальные порты находятся в диапазоне 32 768, а не в младших цифрах. Использование меньших чисел вызывает конфликт с некоторыми другими серверными приложениями, которые мы запускаем.
Пример реальных значений, которые я вижу на мониторе внешнего порта:
Протокол: TCP
Локальный порт: 2582
Локальный адрес: 10.1.1.103
Удаленный порт: 1433
Удаленный адрес: 10.1.1.108
Итак, мои вопросы:
Почему ADO использует младший номер порта?
Можно ли как-нибудь запустить его с 32 768 или не использовать порты, используемые другими серверами?
Мы также видим много подключений к SQL в состоянии ожидания времени. Что определяет, когда они будут выпущены?
Большое спасибо,
Кит