我试图弄清楚为什么托管在具有2 2GB的VPS上的站点在大约2秒内开始显示页面,而在本地主机上最坏的情况下只需要大约200ms。我想指出的是,IIRC,这在过去是不会发生的,并且在负载和访客数量上也没有区别。顶部显示CPU使用率大部分时间为0%,可用内存为77M,使用的交换空间为4M。
我分析了一个很慢的请求,发现87%的时间花在调用MongoCursor::getNext上。所用数据库的主存是800MB,所以内存应该不是问题。操作系统为64位Ubuntu 11。
我应该采取哪些步骤来解决此问题?
发布于 2012-04-14 22:43:15
原来是由旧的mongo版本引起的-在VPS上是1.8.*,而在我本地的机器上是2.0.4。在我升级了mongo和mongorestored的数据后,我不得不运行db.repairDatabase(),因为有些数据不能用error: { "$err" : "assertion db/key.cpp:409" }来获取。现在一切都恢复正常了。
https://stackoverflow.com/questions/10154223
复制相似问题