未加星标

Python 返回 [Errno 24] Too many open files

字体大小 | |
[开发(python) 所属分类 开发(python) | 发布者 店小二03 | 时间 2016 | 作者 红领巾 ] 0人收藏点击收藏
背景

执行多线程扫描脚本的时候频繁出现下面这个错误

HTTPConnectionPool(host=‘t.tips', port=80): Max retries exceeded with url: /index.php (Caused by NewConnectionError('<requests.packages.urllib3.connection.HTTPConnection object at 0x7f29d4081150>: Failed to establish a new connection: [Errno 24] Too many open files',))

比较诡异...

分析

博主自己手上的一些小项目经常需要进行多线程的批量扫描来采集数据,像采集数据这种功能当然是线程越多越好了,所以通常情况下我都是使用 3000 个线程进行扫描,在确定带宽充足,系统硬件配置够高的情况下依然会出现上述问题,这就让我想到是不是因为系统的限制问题。

通过搜索引擎我找到了关于系统限制的介绍,执行

$ ulimit -n
1024

得到的结果是1024,系统限制为同时打开1024个文件,这显然是太少了。

解决

这个问题的解决方法很简单,直接修改下面的文件

sudo vim /etc/security/limits.conf

最这个文件的最后添加两行代码

* soft nofile 10240
* hard nofile 10240

当然这个数字根据自己的需要进行修改即可,保存后注销重新登录就好了。

参考

http://blog.csdn.net/fdipzone/article/details/34588803

如果您觉得文章有帮助到您,请点击 捐赠 进行打赏/捐赠,谢谢!

本文链接:http://t.tips/?action=show&id=23411

本文开发(python)相关术语:python基础教程 python多线程 web开发工程师 软件开发工程师 软件开发流程

主题: Python数据搜索引擎
分页:12
转载请注明
本文标题:Python 返回 [Errno 24] Too many open files
本站链接:http://www.codesec.net/view/483898.html
分享请点击:


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 开发(python) | 评论(0) | 阅读(41)