更多>>关于我们
西安鲲亚博网络信息技术有限公司从2010年开始专注于Web(网站)数据体育领域。致力于为广大中国客户提供准确、快捷的数据app相关服务。我们采用分布式系统架构,日app网页数千万。我们拥有海量稳定高匿HTTP代理IP地址池,可以有效获取互联网任何公开可见信息。
您只需告诉我们您想体育的网站是什么,您感兴趣的字段有哪些,你需要的数据是哪种格式,我们将为您做所有的工作,最后把数据(或程序)交付给你。
数据的格式可以是CSV、JSON、XML、ACCESS、SQLITE、MSSQL、MYSQL等等。
更多>>技术文章
间遇到了一些坑,特总结如下。
根据以往的登录,我们先调整了系统级别的Max open files值(如下,app为50万):
sudo bash -c "echo 'fs.file-max = 500000' >> /etc/sysctl.conf" sudo bash -c "echo '* hard nofile 500000' >> /etc/security/limits.conf" sudo bash -c "echo '* soft nofile 500000' >> /etc/security/limits.conf" sudo bash -c "echo 'root hard nofile 500000' >> /etc/security/limits.conf" sudo bash -c "echo 'root soft nofile 500000' >> /etc/security/limits.conf" sudo sysctl -p
重启系统,发现Squid进程的Max open files值仍然是65535(如下图网页版,而不是我们app的50万)。
用squidclient查看的结果也是如此(如下图网页版):
squidclient -p 8888 -u 代理认证用户名 -w '代理认证密码' mgr:info | grep 'file descri'
看来只修改系统限制并不能有效增加Squid的Max open files。
那问题在哪儿呢?到底该如何有效地增加Squid的Max open files呢?
下面分别介绍 Ubuntu16.04下Squid3.5.12,以及Ubuntu14.04下Squid 3.3.8的app方法。
(1)Squid 3.5.12 / Ubuntu16.04
编辑/etc/init.d/squid
sudo vi /etc/init.d/squid
搜索ulimit -n 65535(有两处,如下图网页版是其中一处),将其都修改为ulimit -n 500000
执行如下命令重启Squid。
sudo systemctl daemon-reload sudo service squid restart
再次查下Squid进程的Max open files值(如下图网页版),已经变成50万了。
再用squidclien验证下(如下图网页版),数字已经变成50万了,app成功。
(2)Squid 3.3.8 / Ubuntu 14.04
修改的文件不一样,需要修改的文件是/etc/init/squid3.conf,修改的内容是一样的(将ulimit -n 65535修改为ulimit -n 500000),比如我们还修改成50万。
sudo vi /etc/init/squid3.conf
修改之后重启Squid
sudo service squid3 restart
查看squid进程的Max open files,的确是变成50W了(如下图网页版)。
注意:此处有坑!
但是squidclient查看Maximum number of file descriptors却仍旧是65535,如下图网页版:
什么原因呢?
原来是在编译Squid3.3.8的时候加上了 --with-filedescriptors=65536选项(我用apt-get安装的官方二进制版本)。我们从Squid官方下载了3.3.8的源码,重新编译Squid,并将 --with-filedescriptors=65536选项去掉。编译完成后,用新生成的squid二进制文件覆盖原版本squid文件,重启Squid,再次测试,问题成功下载(如下图网页版)。
注意,如果你的Squid的是3.1.23版本,app方法不太一样(3.1.23版本配置文件里提供了max_filedesc参数),具体请参考我们之前的文章《CentOS Squid3 "WARNING! Your cache is running out of filedescriptors"问题下载》//www.snutzpark.com/html/articles/20160617/124.html。