php测试执行时间,php判断时间

本文目录一览:

PHP-Fcgi下PHP的执行时间设置方法

昨天,一个程序需要导出500条数据,结果发现到150条是,Nginx报出504

Gateway

Timeout错误,原来PHP-Fcgi下的设置执行时间与isapi的不同

一般情况下设置PHP脚本执行超时的时间

一、在php.ini里面设置

max_execution_time

=

1800;

二、通过PHP的ini_set

函数设置

ini_set(“max_execution_time”,

“1800”);

三、通过set_time_limit

函数设置

set_time_limit(1800);

PHP-Fcgi下PHP的执行时间设置方法

昨天,一个程序需要导出500条数据,结果发现到150条是,Nginx报出504

Gateway

Timeout错误

经观察,发现大约30秒时超时,php.ini中执行时间配置已经是300秒:

复制代码

代码如下:

max_execution_time

=

300

再查nginx的相关配置,无果。

写了一个php的测试页再测

复制代码

代码如下:

echo

‘aaa’;

set_time_limit(0);

sleep(40);

echo

‘aa’;

依然超时,可以确定set_time_limit这个函数没生效。

再查php-fcgi的配置php-fpm.conf,下边这个设置疑似有问题

复制代码

代码如下:

VALUE

name=”request_terminate_timeout”30s/VALUE

查官方文档:

复制代码

代码如下:

request_terminate_timeout

The

timeout

(in

seconds)

for

serving

a

single

request

after

which

the

worker

process

will

be

terminated.

Should

be

used

when

‘max_execution_time’

ini

option

does

not

stop

script

execution

for

some

reason.

Default:

“5s”.

Note:

‘0s’

means

‘off’

大意是php中set_time_limit设置的时间内如果php还没执行完,则走此处的配置,也就是request_terminate_timeout=30秒。

先把这个参数改的和php中set_time_limit值一样,都是300秒,还不行,不理解为什么,如果高手知道请赐教。

最终把request_terminate_timeout关闭,程序可以正常执行了,问题解决

复制代码

代码如下:

VALUE

name=”request_terminate_timeout”0s/VALUE

补充:如果前端的nginx服务器使用了upstream负载均衡,那个负载均衡配置中以下几个参数也需要相应修改

复制代码

代码如下:

proxy_connect_timeout

300s;

proxy_send_timeout

300s;

proxy_read_timeout

300s;

如何用php获取程序执行的时间

在文件头加入$stime=microtime(true);

在文件尾加入

$etime=microtime(true);//获取程序执行结束的时间

$total=$etime-$stime; //计算差值

echo “br /[页面执行时间:{$total} ]秒”;

例如

文件头

?php

$stime=microtime(true);

?

文件尾

?php

$etime=microtime(true);//获取程序执行结束的时间

$total=$etime-$stime; //计算差值

echo “br /[页面执行时间:{$total} ]秒”;

这样就可以计算出整个PHP页面执行的时间。纯手打,望采纳。

php有没有可以检测函数执行时间的功能

PHP 中的 microtime() 函数可以实现

microtime() 函数返回当前 Unix 时间戳和微秒数。

microtime(get_as_float)

参数说明

get_as_float 如果给出了 get_as_float 参数并且其值等价于 TRUE,该函数将返回一个浮点数。

本函数仅在支持 gettimeofday() 系统调用的操作系统下可用。

例如:

?php

$start_time = microtime(true);

for($i=1;$i=1000;$i++){

echo $i.’br’;

}

$end_time = microtime(true);

echo ‘循环执行时间为:’.($end_time-$start_time).’ s’;

?

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/300819.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-29 14:18
下一篇 2024-12-29 14:18

相关推荐

  • PHP和Python哪个好找工作?

    PHP和Python都是非常流行的编程语言,它们被广泛应用于不同领域的开发中。但是,在考虑择业方向的时候,很多人都会有一个问题:PHP和Python哪个好找工作?这篇文章将从多个方…

    编程 2025-04-29
  • JDK Flux 背压测试

    本文将从多个方面对 JDK Flux 的背压测试进行详细阐述。 一、Flux 背景 Flux 是 JDK 9 对响应式编程的支持。它为响应式编程提供了一种基于推拉模型的方式,以支持…

    编程 2025-04-29
  • PHP怎么接币

    想要在自己的网站或应用中接受比特币等加密货币的支付,就需要对该加密货币拥有一定的了解,并使用对应的API进行开发。本文将从多个方面详细阐述如何使用PHP接受加密货币的支付。 一、环…

    编程 2025-04-29
  • 解决docker-compose 容器时间和服务器时间不同步问题

    docker-compose是一种工具,能够让您使用YAML文件来定义和运行多个容器。然而,有时候容器的时间与服务器时间不同步,导致一些不必要的错误和麻烦。以下是解决方法的详细介绍…

    编程 2025-04-29
  • 想把你和时间藏起来

    如果你觉得时间过得太快,每天都过得太匆忙,那么你是否曾经想过想把时间藏起来,慢慢享受每一个瞬间?在这篇文章中,我们将会从多个方面,详细地阐述如何想把你和时间藏起来。 一、一些时间管…

    编程 2025-04-28
  • 计算斐波那契数列的时间复杂度解析

    斐波那契数列是一个数列,其中每个数都是前两个数的和,第一个数和第二个数都是1。斐波那契数列的前几项为:1,1,2,3,5,8,13,21,34,…。计算斐波那契数列常用…

    编程 2025-04-28
  • 使用PHP foreach遍历有相同属性的值

    本篇文章将介绍如何使用PHP foreach遍历具有相同属性的值,并给出相应的代码示例。 一、基础概念 在讲解如何使用PHP foreach遍历有相同属性的值之前,我们需要先了解几…

    编程 2025-04-28
  • 时间戳秒级可以用int吗

    时间戳是指从某个固定的时间点开始计算的已经过去的时间。在计算机领域,时间戳通常使用秒级或毫秒级来表示。在实际使用中,我们经常会遇到需要将时间戳转换为整数类型的情况。那么,时间戳秒级…

    编程 2025-04-28
  • 如何在ACM竞赛中优化开发时间

    ACM竞赛旨在提高程序员的算法能力和解决问题的实力,然而在比赛中优化开发时间同样至关重要。 一、规划赛前准备 1、提前熟悉比赛规则和题目类型,了解常见算法、数据结构和快速编写代码的…

    编程 2025-04-28
  • Powersploit:安全评估与渗透测试的利器

    本文将重点介绍Powersploit,并给出相关的完整的代码示例,帮助安全人员更好地运用Powersploit进行安全评估和渗透测试。 一、Powersploit简介 Powers…

    编程 2025-04-28

发表回复

登录后才能评论