位置: 编程技术 - 正文

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

  • 向境外企业支付利息代扣代缴
  • 吸收合并的税务问题
  • 风险纳税人是指个人还是单位
  • 个人所得税累计扣除标准
  • 网上申购到发行多长时间
  • 负数发票要给购票人吗
  • 生产成本二级科目有工资吗
  • 库存商品进项税额转出分录怎么写
  • 技术转让收入是指当事人履行
  • 企业购买汽车时需要交哪些税?
  • 小规模纳税人印花税怎样计算
  • 用工和用人单位
  • 销售原材料结转会计分录
  • 进货价加多少卖不亏增值税
  • 待摊费用属于什么费用
  • 小规模季报都报哪些税种
  • 免税农产品进项抵扣计算
  • macxi
  • 退回多缴税款如何做账
  • 给客户的贴息的会计处理
  • 个体工商户与其经营者构成共同侵权吗
  • 抵押房产的保险能退吗
  • 公司开业厂商的宣传文案
  • win7为什么没有本地连接
  • 苹果a1530是什么
  • 2021最好的固态
  • 有关预收账款的会计科目
  • 开发商违法
  • thinkphp django
  • php分页思路
  • download github
  • Vite4+Pinia2+vue-router4+ElmentPlus搭建Vue3项目(组件、图标等按需引入)[保姆级]
  • 2023跨年代码大全可复制免费
  • ps怎么弄树
  • 在发生以下的情况下,可判定货物
  • 发票入账怎么做分录
  • 发票6个点怎么算收税点
  • 税率变了
  • 公允价值变动损益属于什么科目
  • 在建工程账务核算及处理
  • 税务登记需要的手续
  • 知道实发工资怎么算应发工资计算器
  • 施工企业的汇兑损失属于财务费用
  • 没有虚拟化iommu
  • 自产货物用于抵偿债务
  • 企业保持存货的必要性
  • 增值税进项发票是什么意思
  • 企业所得税和个人所得税怎么算
  • 代数分配法的优缺点和适用范围
  • 制单和审单的依据是什么
  • 上月发票冲红后怎么作废
  • 增值税发票开负数怎么做账?
  • 建筑工程公司收入来源
  • 外贸企业需要取得什么资质
  • 固定资产处置有净值怎么处理
  • 银行承兑汇票托收凭证
  • count(10,2,5)
  • sql server的实例
  • sql语句实例大全
  • 配置是什么意思
  • 迅速修复系统漏洞的方法
  • server2008开机启动项设置
  • Linux中终止某个用户的所有进程的简单方法
  • uphclean.exe - uphclean进程是什么意思
  • xp开始界面
  • webcamrt.exe - webcamrt 进程是什么意思
  • windows注册表简单应用
  • win108080端口怎么打开
  • ubuntu sudo not found
  • 怎么查显卡信息
  • win8如何使用网页版的onedrive
  • win81无线网络没有了
  • Android游戏开发pdf
  • 如何创建node项目
  • python pyb库
  • jquery绑定事件和移除事件
  • unity协程的工作原理
  • 税务总局官网投诉
  • 福建省网上税务办事大厅
  • 财税专业全称叫什么
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设