python - 运行几个小时后永久性的gaierror 'Temporary failure in name resolution'

标签 python urllib httplib getaddrinfo python-sockets

我有一个长时间运行的 python 脚本,由 upstart 启动。这个脚本提出了很多请求。一开始一切正常,但几个小时后,我开始为每个请求永久收到以下错误:

  File "/opt/a/a-env/local/lib/python2.7/site-packages/atom/client.py", line 119, in request
  File "/opt/a/a-env/local/lib/python2.7/site-packages/atom/http_core.py", line 420, in request
  File "/opt/a/a-env/local/lib/python2.7/site-packages/atom/http_core.py", line 489, in _http_request
  File "/usr/lib/python2.7/httplib.py", line 931, in endheaders
  File "/usr/lib/python2.7/httplib.py", line 794, in _send_output
  File "/usr/lib/python2.7/httplib.py", line 756, in send
  File "/usr/lib/python2.7/httplib.py", line 1134, in connect
  File "/usr/lib/python2.7/socket.py", line 553, in create_connection
gaierror: [Errno -3] Temporary failure in name resolution

这不是名称解析或 DNS 的问题,因为只需重新启动应用程序即可解决此问题。

我已经尝试了 Python 2.6 和 2.7,同样的情况发生了。

我正在运行 Linux 2.6.35-30-virtual #61-Ubuntu SMP Tue Oct 11 18:26:36 UTC 2011 x86_64 GNU/Linux

已经有一些关于这个问题的帖子,但没有一个有直接的解释或解决方案:

最佳答案

我认为当您处于“太多打开的文件”状态时会发生这种情况。下次发生这种情况时,请尝试查看您的脚本打开了多少个文件描述符。

关于python - 运行几个小时后永久性的gaierror 'Temporary failure in name resolution',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8634197/

相关文章:

python - 使带有循环的Python代码块更快

python - 格式化 pandas datetime 对象以显示从 2 月到 2 月的财政年度并格式化为 %Y?

python - 给定开始日期和结束日期,生成中间所有周的最有效方法是什么?

Python 3 网络抓取工具非常简单,无法正常工作

python - 泡沫错误 : BadStatusLine in httplib

python - 解析非预定义参数

python - urllib & cookielib - 下载图像

python - 如何在python中取消引用urlencoded unicode字符串?

python - 发送 httplib 的多个请求,引发回溯异常

Python httplib 和 POST