我有一台 ubuntu 网络机器,其版本为 10.04.1 LTS Lucid。在这个系统上,我有 apache、postgresql 和 django。对于某些应用程序的开发,我必须安装 php 和 php-curl...由于在网络上,我已将 wmvare 机器导出到互联网,首先我升级了系统,然后在其上安装 php5 包。
全部替换到旧位置之后,我发现新的系统查询有些慢。
旧系统查询时间:140 ms
新系统查询时间:9.11 s
我检查过了/etc/network interface
,好像没有问题。我检查过了/etc/resolv.conf
,好像没问题。我检查过了,好像没问题。我检查过了/etc/nsswitch.conf
,只有主机部分与旧系统的不同hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
然后我检查了一下time host -t A services.myapp.com
,我得到了
real 0m0.355s
user 0m0.010s
sys 0m0.020s
我已经检查过 apache2 HostnameLookups:
find /etc/apache2/ -type f | xargs grep -i HostnameLookups
它返回:
/etc/apache2/apache2.conf:# HostnameLookups: Log the names of clients or just their IP addresses
/etc/apache2/apache2.conf:HostnameLookups Off
现在我需要检查什么才能像以前一样增强我的系统?
答案1
使用方法:控制并征服。
停止一个进程并查看其对给定时间的影响。如果没有变化,则继续运行直到出现这种变化。
我会先从 Django 开始,然后再使用 Apache,最后使用 PHP。
因此,首先找出可能导致问题的原因。
很明显,您的一些代码符合旧标准,而在升级某种语言(可能是 PHP 或 Python)后,情况发生了变化。
我想看看你的系统中哪个进程占用了最多的内存。那么哪个进程导致了 9.11s 的延迟?