Я прочитал все, что смог найти в списке невыполненных задач, и не вижу ссылки на то, как выполнять кеширование DNS вместо того, чтобы каждый раз разрешать DNS. Уже есть модули, которые уже выполняют кеширование поиска по DNS, но я не могу понять, как заставить запрос использовать их.
В частности, мы наблюдаем случайные вызовы dns.lookup, которые могут занять секунды из-за задержки в сети. В идеале хотелось бы поставить что-то перед вызовом запросов к dns.lookup и получить кешированный результат, если / когда произойдет замедление.
Любые идеи?
Вам нужно будет установить сервер кэширования DNS, такой как dnsmasq, powerdns, unbound и т. Д., И изменить /etc/resolv.conf
чтобы он указывал на IP-адрес DNS-сервера.
Я просто проверил это локально, и похоже, что, поскольку yahoo / dnscache изменяет глобальный модуль DNS, используя его в любом месте вашего приложения узла, _должно_ работать со всеми вашими HTTP-запросами, включая те, которые выполняются через requestjs
.
Так что ответ, вероятно, так же прост, как просто добавить это в любом месте вашего приложения:
require('dnscache')({ enable: true });
... должно быть все, что нужно.
Эта проблема была автоматически помечена как устаревшая, поскольку в последнее время не было активности. Он будет закрыт, если больше не будет активности. Спасибо за ваш вклад.
Самый полезный комментарий
Я просто проверил это локально, и похоже, что, поскольку yahoo / dnscache изменяет глобальный модуль DNS, используя его в любом месте вашего приложения узла, _должно_ работать со всеми вашими HTTP-запросами, включая те, которые выполняются через
requestjs
.Так что ответ, вероятно, так же прост, как просто добавить это в любом месте вашего приложения:
... должно быть все, что нужно.