У нас есть веб-служба ASP.NET на основе Azure, которая обращается к Azure KeyVault.Мы видим два случая, когда метод «зависает» с первой попытки, а затем работает примерно через минуту.
В обоих случаях происходит доступ к KeyVault.В обоих случаях проблема началась, когда мы начали использовать KeyVault в этих методах.
Мы сделали очень осторожную регистрацию в первом случае и не можем видеть в нашем коде ничего другого, что могло бы вызвать зависание.Доступ к KeyVault является основным подозреваемым.
Кроме того, если мы запускаем приложение с наших локальных серверов (из Visual Studio), доступ к KeyVault работает нормально с «первой попытки».Он выдает ошибку «зависания» только при запуске в Azure и только при этой «первой попытке».
Под «зависанием» я подразумеваю, что в одном случае, который вызывается внешним API,это занимает не менее 60 секунд (мы можем сказать, что это происходит из-за истечения времени ожидания внешнего API). В другом случае, который вызывается запросом страницы, может пройти несколько минут, и страница просто раскручивается, и в этот момент мы принимаем запрос БД.или что-то еще истекло.
Когда я говорю «минута или около того», это так же быстро, как мы рассчитали время повторной попытки.
Есть ли какая-то проблема или функция, когдаKeyVault необходимо «разогреть», прежде чем он будет работать с первой попытки?
Обновление: я смотрю на код более внимательно и вижу, по крайней мере, пару мест, куда мы можем вставить еще больше журналированиячтобы получить более точную картину того, где происходит сбой.Я собираюсь сделать это, а затем сообщу здесь.
Обновление: см. Ответ ниже - крупная ошибка новичка, была исправлена.