php curl

  curl是一个非常强大的开源库,支持很多协议,包括HTTP、FTP、TELNET等,我们使用它来发送HTTP请求。它给我 们带来的好处是可以通过灵活的选项设置不同的HTTP协议参数,并且支持HTTPS。CURL可以根据URL前缀是“HTTP” 还是“HTTPS”自动选择是否加密发送内容。

  问题:今天php项目中遇到一个问题,就是php项目经常访问量一大就挂掉。发现是这段代码的问题。

  

curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);

PHP cURL 的超时设置有两个 CURLOPT_CONNECTTIMEOUT 和 CURLOPT_TIMEOUT

  • CURLOPT_CONNECTTIMEOUT 用来告诉 PHP 在成功连接服务器前等待多久(连接成功之后就会开始缓冲输出),这个参数是为了应对目标服务器的过载,下线,或者崩溃等可能状况。
  • CURLOPT_TIMEOUT 用来告诉成功 PHP 从服务器接收缓冲完成前需要等待多长时间,如果目标是个巨大的文件,生成内容速度过慢或者链路速度过慢,这个参数就会很有用。
  • PS 爬去的时候只加了CURLOPT_CONNECTTIMEOUT 经常会卡死 


由于该项目只加了

CURLOPT_CONNECTTIMEOUT参数,故有此问题。
原文地址:https://www.cnblogs.com/zhengxq21/p/10026415.html