【【原创】PHP超时处理全面总结】教程文章相关的互联网学习教程文章

phpinclude类文件超时问题处理_PHP

最近发现,php运行自动加载类函数时总是超时,跟踪php慢查询日志,发现程序卡在了include某个类文件时竟然超时。初步定位是io响应超时,硬盘读取有问题。通过几个命令来定位:iostat -d -x -k 1 10 // 运行10次查看iostat中wait参数很大,一般不超过5ms,await svctm这2个参数越接近,io性能越好。参考别的博客, await: 每一个IO请求的处理的平均时间(单位是微秒毫秒)。这里可以理解为IO的响应时间,一般地系统IO响应时间应该...

PHP中捕获超时事件的方法实例_PHP

set_error_handler()不能捕获致命错误(具体错误类型见手册)。 所以需要如下方法:<?php ini_set ( max_execution_time, 1 ); function shutdown() {$a = error_get_last ();print_r ( $a ); } register_shutdown_function ( shutdown ); while ( true ) { }注意:sleep()停顿时间不算在max_execution_time中。

PHP实现的带超时功能get_headers函数_PHP

代码比较多,但是比较简单,一眼就看穿的,so,文字尽量少写了。 因为众所周知的网络原因,gavatar也开始越来越慢,写了一个小东西来解决这个问题,过程中遇到了get_headers这个函数,甚是忧伤,记录下来,以免后来人踩坑。 更新记录,函数稍微改了一下,返回值基本和之前序列化后的结果一致,暂时没考虑支持子项也支持数组等(考虑细节性能,还想把没用的http头砍掉….) 需求很简单:获取图片的head信息。 调试程序的时候发现这个...

php设置页面超时时间解决方法_PHP

有时候我的页面因为网络卡,会一直转,我想是不是可以给页面设置一个超时时间,多久没反应就提示超时 比如php里的set_time_limit(300) 我想不是php页面也有个超时机制 ------解决思路---------------------- php 里不就是set_time_limit() 吗,你还可以设置php.ini中的max_execution_time来改变全局超时时间。 ------解决思路---------------------- max_execution_time ------解决思路---------------------- set_time_limit(300)...

PHP函数超时处理方法_PHP

本文实例讲述了PHP函数超时处理方法。分享给大家供大家参考,具体如下: register_shutdown_function Registers the function named by function to be executed when script processing is complete or when exit() is called. 此函数可以重复注册,然后会依次调用 当发生致命性错误或者exit时都会调用此函数error_reporting(0); register_shutdown_function ( handleShutdown ); function handleShutdown (){$error = error_get...

php脚本运行时的超时机制详解_PHP【图】

在做php开发的时候,经常会设置max_input_time、max_execution_time,用来控制脚本的超时时间。但却从来没有思考过背后的原理。 趁着这两天有空,研究一下这个问题。 超时配置php的ini配置如何起作用,这是一个老生常谈的话题了。 首先,我们在php.ini里进行配置。当php启动的时候(php_module_startup阶段),会尝试读取ini文件并解析。解析过程简单来说,是分析ini文件,提取出其中合法的键值对,并保存到configuration_hash表。...

file_get_contents超时问题及解决方案

经常会使用php中的file_get_contents()函数去抓取远程页面, 对方页面文件过大、对方页面反应时间太久或网络传输慢等原因都可能会导致file_get_contents()执行时间超过php的最大执行时间。而一 旦file_get_contents出错即会终止整个程序。 测试用例上面代码首先将php的最大执行时间设置为2秒,然后去远程读取170KB的文件,按照本人的网络环境下载170KB文件需时超过1s. 现象 Fatal error: Maximum execution time of 2 second exceed...

PHPfile_get_contents函数超时的几种解决方法_php技巧

这里就简单介绍两种: 一、增加超时的时间限制 这里需要注意:set_time_limit只是设置你的PHP程序的超时时间,而不是file_get_contents函数读取URL的超时时间。 我一开始以为set_time_limit也能影响到file_get_contents,后来经测试,是无效的。真正的修改file_get_contents延时可以用resource $context的timeout参数: 代码如下:$opts = array( ‘http'=>array( ‘method'=>”GET”, ‘timeout'=>60, ) ); $context = stream_con...

PHP字符串加密函数(在指定时间内加密还原字符串,超时无法还原)_php技巧

这样我们就可以拿此函数来做很多用途了,比如:单点登录的token加密传输啦,临时密码啦等等 代码如下:/** * @param string $string 原文或者密文 * @param string $operation 操作(ENCODE | DECODE), 默认为 DECODE * @param string $key 密钥 * @param int $expiry 密文有效期, 加密时候有效, 单位 秒,0 为永久有效 * @return string 处理后的 原文或者 经过 base64_encode 处理后的密文 * * @example * * $a = authcode(abc, E...

PHP中几种常见的超时处理全面总结_php技巧

在PHP开发中工作里非常多使用到超时处理到超时的场合,我说几个场景: 1. 异步获取数据如果某个后端数据源获取不成功则跳过,不影响整个页面展现 2. 为了保证Web服务器不会因为当个页面处理性能差而导致无法访问其他页面,则会对某些页面操作设置 3. 对于某些上传或者不确定处理时间的场合,则需要对整个流程中所有超时设置为无限,否则任何一个环节设置不当,都会导致莫名执行中断 4. 多个后端模块(MySQL、Memcached、HTTP接口)...

深入php函数file_get_contents超时处理的方法详解_php实例

一.增加超时的时间限制 这里需要注意:set_time_limit只是设置你的PHP程序的超时时间,而不是file_get_contents函数读取URL的超时时间。真正的修改 file_get_contents延时可以用resource $context的timeout参数: 代码如下:$opts = array( 'http'=>array( 'method'=>"GET", 'timeout'=>60, ) ); $context = stream_context_create($opts); $html =file_get_contents('http://www.example.com...

IIS+fastcgi下PHP运行超时问题的解决办法详解_php技巧

每在页面中上传较大的文件时遇到FastCgi的错误:“The FastCGI process exceeded configured request timeout”,几经试验,明白了需要修改FastCgi的配置文件“fcgiext.ini”,位于目录“C:/WINDOWS/system32/inetsrv”下。在“fcgiext.ini”最末php的配置内容下增加一些参数,如下:引用[Types]php=PHP[PHP]ExePath=C:/PHP/php-cgi.exeInstanceMaxRequests=10000EnvironmentVars=PHP_FCGI_MAX_REQUESTS:10000RequestTimeout=500Ac...

解析如何修改phpmyadmin中的默认登陆超时时间_php技巧

登录后1440秒未活动后总是自动退出,一天还要登录多次,终于有时间来解决这个问题了,感觉是session超时,结果在网上search了下,找到解决办法啦,哈哈哈,在此做个笔记:phpmyadmin在使用过程中经常出现“登陆超时(1440秒未活动),请重新登录”,很烦解决方法如下:修改php.ini,找到session.gc_maxlifetime = 1440将数值改大就行了,然后使之生效试验了一下,结果不好使。最终解决方案:找到 phpMyAdmin / libraries / config....

执行、获取远程代码返回:file_get_contents超时处理的问题详解_php技巧

天气终于晴了,但问题来了。在实现两个站点间用户数据同步,当使用php函数 file_get_contents抓取执行远程页面时,如果连接超时将会输出一个Fatal Error或相当的慢,结果导致下面的代码不能运行。先了解一下PHP file_get_contents() 函数 定义和用法 file_get_contents() 函数把整个文件读入一个字符串中。 和 file() 一样,不同的是 file_get_contents() 把文件读入一个字符串。 file_get_contents() 函数是用于将文件的内容读入到...

解决FastCGI进程超过了配置的活动超时时限的问题_php技巧

近日,需要满足测试需求,进行大数据并发测试时,报出【HTTP 错误 500.0 - Internal Server Error E:\PHP\php-cgi.exe - FastCGI 进程超过了配置的活动超时时限】 解决办法: IIS7->FastCGI设置->双击"php-cgi.exe"->"活动超时" 项默认是设置为70(秒),改为600(10分钟,此处根据需求设置可以略高~)