【问题标题】:gethostbyname_ex(hostname) extremely slowgethostbyname_ex(hostname) 非常慢
【发布时间】:2013-09-03 20:50:29
【问题描述】:

在启动时,IPython (qtconsole) 调用socket.gethostbyname_ex(socket.gethostname())[2] 来查找指向机器的 IP 地址列表。在我管理此调用的 Linux 服务器上,非常 很慢(>20 秒)...我很难理解,因为 ip addr show 似乎几乎是瞬间给出了相同的信息。我能做些什么来加快速度吗?这可能是网络配置问题(我在路由器后面)吗?

这个问题与 IPython 无关:

$ time python -c 'import socket; print(socket.gethostbyname_ex(socket.gethostname())[2])' 
['192.168.0.102']
python -c   0.07s user 0.02s system 0% cpu 28.190 total

谢谢。

【问题讨论】:

  • 请显示更多您的代码。

标签: python sockets ip-address gethostbyname


【解决方案1】:

我遇到了类似的问题。 正好我的主机名是localhost.localdomain,安装操作系统的时候比较懒。

解决方案是通过sudo vi /etc/hostname 给它一个合理的名称并将其更改为 myname.mydomain,现在它可以在 1 秒内运行。

【讨论】:

  • 为了确保它尽可能快,我还将myname.mydomainmyname.mydomain.local添加到/etc/hosts到IP地址127.0.0.1
猜你喜欢
  • 2015-05-22
  • 1970-01-01
  • 2017-12-12
  • 2015-06-14
  • 2013-05-14
  • 2021-05-24
  • 1970-01-01
  • 2013-06-24
  • 2016-06-14
相关资源
最近更新 更多