Могу ли я установить ConnectionLeaseTimeout для ServicePoint в файле конфигурации приложения? - PullRequest
0 голосов
/ 08 июня 2018

Я использую .NET HttpClient из своего приложения для доступа к веб-службе.Проблема в том, что доступ к веб-службе осуществляется через балансировщик нагрузки интернет-провайдера, и приложение уже установлено у клиента (не может быть обновлено прямо сейчас).Если балансировщик нагрузки переключается на другого интернет-провайдера, соединение сохраняется и запрос истекает.

Можно ли установить ConnectionLeaseTimeout для ServicePoint в файле конфигурации приложения?

Ответы [ 2 ]

0 голосов
/ 28 января 2019

Конечно, вы можете указать ConnectionLeaseTimeout в конфиге.Но вы также должны прочитать это значение и применить его.Вы также упомянули, что не можете обновить свое приложение, поэтому я не уверен, как эта информация поможет вам.

Пожалуйста, обратитесь к здесь для примера кода.Строка № 550 и ищите ConnectionLeaseTimeout.

0 голосов
/ 15 октября 2018

TL; DR: я думаю, вам не повезло.

Вы можете настроить некоторые глобальные значения по умолчанию, используя элемент конфигурации <servicePointManager> (configuration/system.net/settings/servicePointManager).К сожалению, время ожидания подключения не имеет изменяемого значения по умолчанию.Кроме того, кажется, что невозможно выполнить какие-либо настройки для определенных конечных точек с помощью конфигурации.

Возможно, доступ к веб-службе может ограничивать время, в течение которого соединение остается открытым.Если вы подумаете об этом, им было бы разумно контролировать эту политику, поскольку они балансируют нагрузку своего сервиса.

...