#nest
#гнездо
Вопрос:
Я надеюсь, что кто-нибудь может помочь.
Я использую elasticclient, где я устанавливаю uri подключения к компьютеру в сети, например: pcname.domain.com:порт.
Когда я использую клиент в первый раз, ответ будет около 5 секунд. Второй раз тот же запрос занимает ~ 400 милисекунд.
Как только я не использую клиент в течение примерно 2 минут, это снова займет 5 секунд. Есть ли какие-либо настройки, которые я могу установить, чтобы максимально избежать этого поведения «5 секунд»?
В случае, если я использую localhost, тот же запрос продолжительностью 5 секунд будет составлять 200 милисекунд, когда я использую второй раз, менее 100 милисекунд.
Может кто-нибудь помочь, пожалуйста? Я проверил документацию, а также исходный код, к сожалению, я не нашел первопричину.
Комментарии:
1. Используете ли вы один экземпляр клиента в течение всего срока службы приложения? Если нет, рекомендуется это сделать, поскольку клиент генерирует код и кэширует данные при первоначальном использовании. Где тратится 5 секунд времени — судя по предоставленной информации, похоже, что большая часть задержек поступает из сети
2. Я сохраняю одного клиента на всю жизнь, первый запрос занимает несколько секунд, а затем несколько миллисекунд. Если я не буду прикасаться к клиенту около двух минут, это снова займет больше времени загрузки. Я ищу основную причину использования этих двух минут, если смогу продлить. Связано ли это с каким-либо DNS? связано ли это с временем ожидания? или что?:)
3. Я думаю, что единственный способ узнать это — измерить в вашей среде. Вы можете подключить EventListener для захвата DNS и связанных с ним событий, например gist.github.com/russcam/649a7d487cd6752b6e44dc196b97b52e