Apache Server需要更长的时间

时间:2015-01-12 09:33:51

标签: php mysql apache web-services ubuntu

我已经在基于Linux的服务器上部署了我的PHP API。它的用户是40000-50000。服务器的磁盘空间为20GB,其中使用了15GB。我使用MySQL进行数据库。 GZip已启用,http://example.com/getData上的响应JSON几乎等于100KB。最初,它在每次getData调用时都需要2-3秒(包括从数据表中查询和在PHP上处理),但现在单个请求需要超过15秒。我已经通过linux中的TOP命令检查了CPU的使用情况。这是CPU状态:

top - 09:30:44 up 14:44,3位用户,平均负载:1.16,2.54,2.28 任务:共222个,1个正在运行,221个睡眠,0个停止,0个僵尸 Cpu(s):6.2%us,1.5%sy,0.0%ni,92.2%id,0.0%wa,0.0%hi,0.0%si,0.2%st 内存:总计2051652k,使用1576444k,免费475208k,204408k缓冲区 交换:总共0k,0k使用,0k免费,456548k缓存

PID用户PR NI VIRT RES SHR S%CPU%MEM TIME + COMMAND
15942 www-data 20 0 320m 14m 6480 S 1 0.7 0:04.50 apache2
15356 mysql 20 0 1320m 52m 7448 S 1 2.6 1:00.19 mysqld
15973 www-data 20 0 321m 15m 6444 S 1 0.8 0:06.75 apache2
15811 www-data 20 0 318m 12m 5648 S 1 0.6 0:04.33 apache2
28989 root 20 0 96716 3928 2948 S 1 0.2 0:00.03 sshd
15806 www-data 20 0 323m 17m 6756 S 0 0.9 0:04.10 apache2
15807 www-data 20 0 321m 16m 6708 S 0 0.8 0:04.83 apache2
15817 www-data 20 0 322m 16m 6416 S 0 0.8 0:06.19 apache2
15832 www-data 20 0 320m 14m 6416 S 0 0.7 0:04.11 apache2
15838 www-data 20 0 320m 14m 6416 S 0 0.7 0:04.05 apache2
15849 www-data 20 0 321m 15m 6416 S 0 0.8 0:06.15 apache2
15851 www-data 20 0 321m 15m 6424 S 0 0.8 0:04.26 apache2
15853 www-data 20 0 320m 15m 6740 S 0 0.8 0:05.45 apache2
15856 www-data 20 0 323m 18m 6644 S 0 0.9 0:04.68 apache2

所有查询运行时间小于0.01秒,getData函数的end和start之间的micrimeime差异为0.51。

浏览器响应缓慢的原因可能是什么?

2 个答案:

答案 0 :(得分:0)

我打赌在apache日志中进行DNS查找。验证apache配置中的“HostnameLookups”是否已关闭。

答案 1 :(得分:0)

它可能是存储在系统中的日志,它保存应用程序活动的记录,包括时间,日期等等,这是系统日志中的一个主要因素,因为它会降低任何应用程序活动的性能。