位置: 编程技术 - 正文

浅谈php处理后端&接口访问超时的解决方法(php 后端)

编辑:rootadmin

推荐整理分享浅谈php处理后端&接口访问超时的解决方法(php 后端),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php后端是做什么的,浅谈php处理后端问题,浅谈php处理后端程序,php后端是做什么的,php 后端,浅谈php处理后端程序,浅谈php处理后端问题,浅谈php处理后端问题,内容如对您有帮助,希望把文章链接给更多的朋友!

【HTTP访问】

一般我们访问HTTP方式很多,主要是:curl, socket, file_get_contents() 等方法。

如果碰到对方服务器一直没有响应的时候,我们就悲剧了,很容易把整个服务器搞死,所以在访问http的时候也需要考虑超时的问题。

[ CURL 访问HTTP]

CURL 是我们常用的一种比较靠谱的访问HTTP协议接口的lib库,性能高,还有一些并发支持的功能等。

CURL:

curl_setopt($ch, opt) 可以设置一些超时的设置,主要包括:

*(重要) CURLOPT_TIMEOUT 设置cURL允许执行的最长秒数。

*(重要) CURLOPT_TIMEOUT_MS 设置cURL允许执行的最长毫秒数。 (在cURL 7..2中被加入。从PHP 5.2.3起可使用。 )

CURLOPT_CONNECTTIMEOUT 在发起连接前等待的时间,如果设置为0,则无限等待。

CURLOPT_CONNECTTIMEOUT_MS 尝试连接等待的时间,以毫秒为单位。如果设置为0,则无限等待。 在cURL 7..2中被加入。从PHP 5.2.3开始可用。

CURLOPT_DNS_CACHE_TIMEOUT 设置在内存中保存DNS信息的时间,默认为秒。

curl普通秒级超时:

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL,$url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

浅谈php处理后端&接口访问超时的解决方法(php 后端)

curl_setopt($ch, CURLOPT_TIMEOUT, ); //只需要设置一个秒的数量就可以

curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

curl_setopt($ch, CURLOPT_USERAGENT, $defined_vars['HTTP_USER_AGENT']);

curl普通秒级超时使用:

curl_setopt($ch, CURLOPT_TIMEOUT, );

curl如果需要进行毫秒超时,需要增加:

curl_easy_setopt(curl, CURLOPT_NOSIGNAL, 1L);

或者是:

curl_setopt ( $ch, CURLOPT_NOSIGNAL, true); 是可以支持毫秒级别超时设置的

curl一个毫秒级超时的例子:

其他一些技巧:

1. 按照经验总结是:cURL 版本 >= libcurl/7..0 版本,毫秒级超时是一定生效的,切记。

2. curl_multi的毫秒级超时也有问题。。单次访问是支持ms级超时的,curl_multi并行调多个会不准

[流处理方式访问HTTP]

除了curl,我们还经常自己使用fsockopen、或者是file操作函数来进行HTTP协议的处理,所以,我们对这块的超时处理也是必须的。

一般连接超时可以直接设置,但是流读取超时需要单独处理。

自己写代码处理:

或者使用内置流处理函数 stream_set_timeout() 和 stream_get_meta_data() 处理:

file_get_contents 超时:

fopen 超时:

标签: php 后端

本文链接地址:https://www.jiuchutong.com/biancheng/301431.html 转载请保留说明!

上一篇:完美解决phpexcel导出到xls文件出现乱码的问题(完美解决win10间歇性掉线)

下一篇:PHP请求远程地址设置超时时间的解决方法(php远程调用)

  • 湖南个税申报系统app
  • 印花税滞纳金应计入什么
  • 借款合同怎么做
  • 本月无销售额,但是有进项,需要认证吗
  • 无息借款账务处理
  • 融资租赁本金和租金的区别
  • 报税期能不能开发票
  • 出口货物不能退税的原因
  • 小规模开票给一般纳税人避税合法吗
  • 小规模纳税人消费税怎么计算
  • 销毁会记凭证
  • 银行汇票退回
  • 教育费附加计费单位
  • 固定资产发票未到怎么提折旧
  • 资产负债表和利润表在哪里查
  • 农产品进项税抵扣计算例题
  • 纳税额和纳税总额
  • 补付工程款会计分录
  • 税务定率征收
  • 会计实操的重要性有哪些
  • mac安装windows不能用键盘
  • 怎么远程重装win10
  • 新税法中工资薪金的规定
  • win11怎么清理电脑垃圾
  • 个体工商户税收标准2023年
  • 在vue中如果computed属性是一个异步操作怎么办?
  • redux-tookit
  • index.php怎么修改
  • 举报民间借贷利息收入所得税
  • 按25%计算应交所得税
  • 租用办公室装修费用会计分录
  • c语言中exit函数怎么用
  • 玩转mongodb4.0从入门到实践
  • 发票管理办法是法律吗
  • 去年的滞纳金没有入账怎么处理
  • 汽车报废残值如何处理
  • mysql批量处理
  • mysql提取数据语句
  • 以非现金资产抵偿债务
  • 公司注销后违法行为追究吗
  • 承兑汇票利息分录
  • 应付票据转应付账款有附件吗
  • 公户转到老板私户要多久
  • 事业单位研究开设的课题
  • 劳动关系与劳务关系的联系与区别
  • 人工安装费是几个点税税率
  • 新产品的研发费用扣除例题
  • 2021年财务报表申报
  • 工程施工发生的酒水费会计分录
  • 办公用水电费计入什么科目
  • 非营利医疗机构由谁批准
  • 公司自建的房子能买吗
  • mysql 通过拷贝数据文件的方式进行数据库迁移实例
  • 没有本地策略的网站
  • windows2008r2无线网卡不可用
  • macbook存东西一般存在哪
  • win1020h2累积更新
  • win10系统自带的浏览器叫什么
  • win7怎么操作
  • Win10 Mobile 10586正式版即将向Insider用户推送
  • cocos2dx schedule
  • 基于socket的聊天程序
  • gridview添加数据
  • python urljoin
  • 批处理结束后不关闭窗口
  • python介绍的主要内容
  • javascript刷新页面的几种方法
  • 深入浅出jquery
  • node cd
  • android中适配器
  • JavaScript实现同时调用多个函数的方法
  • jQuery Ajax 加载数据时异步显示加载动画
  • python语言中
  • javascript教程chm
  • 购房发票上的税率9%包含契税吗
  • 开票系统增值税专票税率选多少
  • 医院要交税吗
  • 城市维护建设税税率
  • 如何运用投资组合理论
  • 山东税务自然人注册怎么回事
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设