位置: 编程技术 - 正文

浅谈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远程调用)

  • 增值税开票软件ukey版
  • 开发票,对方收取税点,如何计算
  • 购入安装设备的专用材料分录
  • 电信没有基站为什么信号也很好
  • 用房子贷款印花税怎么交
  • 决算报表与账不一致怎么调账
  • 增值税专用发票是干什么用的
  • 费用报销哪些可以不用合同的
  • 抄税报税清卡怎么操作流程
  • 发票第一联需要盖章嘛
  • 个体工商户是对公账户还是个人账户
  • 股东投资款是否可以现金支付
  • 不动产转让费用咋算
  • 一般纳税人吧
  • 技术服务费属于什么税收分类编码
  • 用友填制凭证外币科目没弹出
  • 一般纳税人印花税减半征收吗
  • 如何对投资收益进行会计处理
  • 对方不开票
  • 2020年开公司优惠政策
  • 无偿取得股权账务处理
  • 土地增值税的税率和速算扣除数
  • 华为分享是什么意思关闭有影响吗
  • php调用外部接口
  • ipados15什么时候发布
  • 数字证书费用计入管理费用什么科目
  • 搜索框无法搜索内容
  • 鸿蒙系统怎么隐藏应用图标
  • 通过二手车买进套现
  • 带薪缺勤会计分录
  • 小程序常见问题
  • 限售股交易征税是多少
  • 委托加工业务要交税吗
  • 企业研发费用加计扣除最新政策
  • 合同负债和预收负债的区别
  • 即征即退增值税属于政府补助吗
  • php实现快速排序算法
  • 原生ajax和axios的区别
  • php session跨域共享
  • thinkphp模糊查询
  • python中拼接
  • 计提本月财务费用会计分录
  • 准予扣除的业务宣传费
  • 律师事务所执业证
  • springcloud分布式微服务组件
  • 个体户核定征收和查账征收哪个好
  • 带薪年假一般是什么时候
  • 公司如何交五险一金
  • 多交增值税退税抵欠怎么处理
  • 每月扣除的公积金怎么查
  • 公司没有车加油费怎么报
  • 会计中预付账款
  • 营业利润为负数表示什么
  • 新开公司费用
  • 没签劳动合同的后果
  • 处置长投其他权益变动要转损益吗
  • 员工报销材料费用会计分录
  • 现金流量补充表的应付项目是什么
  • 物流公司的会计怎么样
  • 母子公司往来款是否涉及交税
  • windowsxp错误提示
  • centos安装问题
  • ubuntu做lvm
  • windows8.1关机
  • windows的小技巧
  • mac声音怎么调大
  • win7的cpu怎么看
  • javascript entries
  • python编写人工智能
  • unity屏幕截图
  • 深入理解新发展理念
  • 冒烟测试和接口测试
  • js实现类
  • 苏州市总工会主要领导
  • 资本公积如何转增股本的流程
  • 税务处理决定书属于行政处罚吗
  • 青岛地方税务局第三分局局长
  • 可以抵扣的消费税计入什么科目
  • 企业完税证明怎么查询打印
  • 湖北省国家税务局官网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设