1つのモデム/ ISPを介して接続するとき、UbuntuマシンでDNS検索が非常に遅くなりました。私は指示(例えば、hereなど)に従って永続的なDNSキャッシングを使用したので、DNSルックアップを繰り返さず、すべてがはるかに高速になりました。しかし、私は水銀でレポを引っ張ったり押したりするときに、非常に小さな変更を転送するのは辛いことに気付きました。より深く見ると、私はいつも_socket.getaddrinfo
によって取られたこと、すなわちDNSルックアップが見つかりました。なぜなら、すべてのWebブラウザが古いDNS検索を使用するために/etc/pdnsd.conf
の情報を使用しても、Pythonsソケットはそうではありません。キャッシュされた参照を使用するにはどのようにして水銀を取得できますか?Pythonのsocket.getaddrinfo/mercurialで永続的なDNSキャッシングを利用していません
更新
getaddrinfo試みは、IPv4とIPv6の両方のアドレスを取得し、それがIPv6アドレスを見つけるために失敗した後に唯一の答えを返すためにので、それもあるかもしれません。私はこれをチェックする方法、すなわち、遅延がipv6、非永続性、またはその両方によるものかどうかについてはわかりません。
更新
これは、IPv6の要求に関連するかもしれないが、答えhereで提案されているように、私は私がチャンスを得ればそれをチェックする必要があります。
参照されている電子メールがhttps://mail.python.org/pipermail/python-list/2011-July/607822.htmlに移動したと思います – jamesc