• PHP curl超时问题


        今天调试一个非常老的代码时  发现nginx服务器超时  改了下nginx配置

        发现是后台脚本一直等待  排查到最后发现是curl 超时引起的等待

        具体解决方案:

    curl_setopt( $this->ch, CURLOPT_URL, $url );
    curl_setopt( $this->ch, CURLOPT_RETURNTRANSFER, 1 );
    curl_setopt( $this->ch, CURLOPT_TIMEOUT_MS,3000);      //  3秒超时
    curl_setopt( $this->ch, CURLOPT_HEADER, 0 );
    curl_setopt( $this->ch, CURLOPT_SSL_VERIFYPEER, false );
    curl_setopt( $this->ch, CURLOPT_SSL_VERIFYHOST, false );

     

        PHP curl的超时主要有4个参数 原文如下;

              There's a very distinctive difference between these two configurations within cURL. I'll try to define them for you, and then provide you a very common example which I share to people who I teach about cURL.

    CURLOPT_CONNECTTIMEOUT is designed to tell the script how long to wait to make a successful connection to the server before starting to buffer the output. A destination's server which may be overloaded, offline or crashed would probably make this setting become useful.

    CURLOPT_TIMEOUT is designed to tell the script how long to wait to receive a completely buffered output from the server. A destination's huge file, slow connection speeds or slow rendering would probably make this setting become useful.

    A good example of where these will both apply to, is when you're telling cURL to download a MP3 file. CURLOPT_CONNECTTIMEOUT would be set at about 10 seconds which would mean that if no response is provided within 10 seconds then the script will abort, and CURLOPT_TIMEOUT would be set at about 100 seconds which would mean if the MP3 has not downloaded within 100 seconds then abort the script. It's the best way of explaining it to developers.

    具体是:

       CURLOPT_CONNECTTIMEOUT 

         建立连接时候的超时设置

      CURLOPT_TIMEOUT 

         接收信息时的超时设置

       CURLOPT_CONNECTTIMEOUT_MS,   CURLOPT_TIMEOUT_MS 意思相同 只是超时单位为毫秒了。。。

  • 相关阅读:
    Cocoa如何应用设计模式
    ios 内存使用陷阱
    mac 下代码合并比较的工具(changes)
    ios NSString 字符串常用方法
    [转]PP团队圣经巨著《Application Architecture Guide2.0》12章>表现层
    ibatis hibernate 简单比较
    SharePoint安装
    ORM原理ORM目标及分层
    关于建筑与软件的思考
    [转]PP团队圣经巨著《Application Architecture Guide2.0》24章>Web程式开发向导
  • 原文地址:https://www.cnblogs.com/glory-jzx/p/4581413.html
Copyright © 2020-2023  润新知