我正在提供 API 服务,我的网站响应很快,但是当用户同时打开 2 个相同的链接时,服务器就会打开请求并将其保留 20-50 秒...
使用WHM-Apache,mySQL。
使用 PHP 代码诊断响应时间:
// Script Start
global $start_time_2;
$start_time_2 = microtime(true);
function shutdown()
{
// This is our shutdown function,
// here we can do any last operations before the script is complete.
global $start_time_2;
$time = microtime(true)-$start_time_2;
echo "PHP Total Time at shutdown ".$time.' Sec';
}
$time_start = microtime(true);
// my code logic here
echo "Code Execution Time ".(microtime(true)-$time_start).' Sec';
//Script End
如果用户一次打开 1 个页面。
输出
Code Execution Time 0.02 Sec;
PHP Total Time at shutdown 0.022 Sec;
如果用户同时打开2个或更多页面。
Code Execution Time 0.02 Sec;
PHP Total Time at shutdown 21.5 Sec;
第二页响应
Code Execution Time 0.02 Sec;
PHP Total Time at shutdown 33.5 Sec;
有时用户会循环点击同一个页面,然后我的服务器就会宕机,然后就需要重新启动 apache。
我该如何处理这类问题?