私は問題のバックログで見つけることができるすべてを読みましたが、毎回DNSを解決する代わりにDNSキャッシングを行う方法への参照がありません。 DNSルックアップキャッシングを実行するモジュールはすでに出ていますが、リクエストでそれらを使用する方法がわかりません。
具体的には、ネットワーク遅延のために数秒かかる可能性のあるランダムなdns.lookup呼び出しが見られます。 理想的には、dns.lookupへのリクエスト呼び出しの前に何かを置き、速度低下が発生した場合にキャッシュされた結果を提供するようにします。
何か案は?
dnsmasq、powerdns、unboundなどのDNSキャッシングサーバーをインストールし、DNSサーバーのIPを指すように/etc/resolv.conf
を変更する必要があります。
確認のためにローカルでいじったところですが、 yahoo / dnscacheがグローバルDNSモジュールを変更しているため、ノードアプリの任意の場所で使用すると、 requestjs
介して行われたものも含め、すべてのHTTPリクエストで機能するはずです。
したがって、答えはおそらく、アプリのどこかにこれを追加するのと同じくらい簡単です。
require('dnscache')({ enable: true });
...必要なのはそれだけです。
この問題は、最近のアクティビティがないため、自動的に古いものとしてマークされています。 それ以上のアクティビティが発生しない場合は閉じられます。 貢献していただきありがとうございます。
最も参考になるコメント
確認のためにローカルでいじったところですが、 yahoo / dnscacheがグローバルDNSモジュールを変更しているため、ノードアプリの任意の場所で使用すると、
requestjs
介して行われたものも含め、すべてのHTTPリクエストで機能するはずです。したがって、答えはおそらく、アプリのどこかにこれを追加するのと同じくらい簡単です。
...必要なのはそれだけです。