Eu li tudo o que posso encontrar no backlog de problemas e não vejo uma referência sobre como fazer cache de dns em vez de resolver dns todas as vezes. Já existem módulos que fazem o cache de pesquisa de dns, mas não consigo descobrir como fazer a solicitação usá-los.
Especificamente, estamos vendo chamadas dns.lookup aleatórias que podem levar segundos devido à latência da rede. O ideal é colocar algo na frente da chamada de solicitações para dns.lookup e fazer com que forneça o resultado armazenado em cache se / quando ocorrer lentidão.
Alguma ideia?
Você terá que instalar um servidor de cache DNS como dnsmasq, powerdns, unbound etc., e alterar /etc/resolv.conf
para apontar para o IP do servidor DNS.
Acabei de fazer uma manipulação local para verificar e parece que, visto que yahoo / dnscache modifica o módulo DNS global, usando-o em qualquer lugar em seu aplicativo de nó _deve_ funcionar em todas as suas solicitações HTTP, incluindo aquelas feitas por meio de requestjs
.
Portanto, a resposta é provavelmente tão simples quanto adicionar isso em qualquer lugar em seu aplicativo:
require('dnscache')({ enable: true });
... deve ser tudo o que preciso.
Este problema foi automaticamente marcado como obsoleto porque não teve atividades recentes. Ele será fechado se nenhuma outra atividade ocorrer. Obrigado por suas contribuições.
Comentários muito úteis
Acabei de fazer uma manipulação local para verificar e parece que, visto que yahoo / dnscache modifica o módulo DNS global, usando-o em qualquer lugar em seu aplicativo de nó _deve_ funcionar em todas as suas solicitações HTTP, incluindo aquelas feitas por meio de
requestjs
.Portanto, a resposta é provavelmente tão simples quanto adicionar isso em qualquer lugar em seu aplicativo:
... deve ser tudo o que preciso.