解决PHP超时问题_php技术文章_php_网站开发

2008/12/23 1:14:27    发布:walf_man

当PHP页面处理大事务时,页面往往会发生超时的错误,我解决此问题的方法如下:

1.优化程序代码:

这种方法可能有时立竿见影,但对一些已经很优化或者第三方开发的程序,可能用处不大,但我个人觉得这个办法还是应该优先考虑,这个一个优秀程序员必需有的工作美德。

2.对多个任务进行拆分:

对于一些程序,可能问题并不出现在代码效率上,如Paypal的SOAP调用,大量时间花费在网络的数据传递上了,(此问题在Web Services的远程调用时经常发生),我们当然不能等将来网速的提高来解决这个问题。其实我们可以查看一下在一个POST动作中是否包含了多个任务,如付费、发Email、发货等等。如是这样其实可以对这些任务进行拆分,把这个工作拆分成多个子工作来实现。如执行完付费任务时,使用PHP的Header函数重定向到发送Email的页面,完成后再定向到其他页面,采用redirect页面的方式来接力地完成任务。

3.进行PHP设定值的修改

如果以上两种方法仍然无法解决,代码已经最优话,同时只有一个单任务的工作需要完成。针对这样的情况,只能修改PHP的设定值了。不过建议不要直接修改PHP.ini,这样会延长所有PHP执行的最大时间。简单的方法就是使用init_set函数,以下的代码把PHP最大执行时间设定为180秒。

ini_set(''max_execution_time'', ''180'');

同时可以使用ini_get把原来设置的max_execution_time保存下来,在进行完操作时回复原来的设定值。

来源URL:http://www.diybl.com/course/4_webprogram/php/phpjs/200863/121145.html

发表评论:

即刻认识你所在地区的8万帅哥美女
免费注册,简单容易!匿名电邮,既隐秘又安
全!注意:绝不含有或容许任何色情成份!
chinesefriendfinder.com

[评论最长字数:1000,查看结果请刷新]

◎请在这里发表您的看法,发言请遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。