我在我的 Ubuntu/Apache Web 服务器上运行了一些 Trac 安装,我注意到当我在访问 Trac 页面时监控 CPU 使用率时,CPU 飙升至 100% 的情况并不少见。我担心只有一个用户访问系统时会发生这种情况。
有没有一种方法可以减少访问我的 Web 服务器上的 Trac 的 CPU 密集度?
我在我的 Ubuntu/Apache Web 服务器上运行了一些 Trac 安装,我注意到当我在访问 Trac 页面时监控 CPU 使用率时,CPU 飙升至 100% 的情况并不少见。我担心只有一个用户访问系统时会发生这种情况。
有没有一种方法可以减少访问我的 Web 服务器上的 Trac 的 CPU 密集度?
我发现 mod wsgi 比 mod python 快。
我在这里发布了一篇关于如何使用 mod_wsgi 设置 Trac 的文章
有关信息:在http://trac.edgewall.org/ticket/7490上有关于这一点的讨论。他们指的是使用 mod_python 的 Apache2.x 中 KeepAlive 的性能问题。
Trac ML 上也有类似的问题,可能对您有所帮助(特别是最后一封可能配置 Apache 的邮件):ML Mail (Google Groups) "Trac 0.11 so slow!!!!!!"
编辑可能,但由于我没有这样的问题,这也可能是出于您的兴趣:性能和垃圾收集。但是,我不认为这里是这种情况......
编辑#2请记住,在下一个稳定版本中,性能问题将消失(如果是因为 mod_defleat)。另请参阅 Dev-ML: 准备下一个稳定版本(“但是...”之后的第一点)
如果您已
mod_deflate
启用,请尝试禁用它。它还取决于您的数据库。您使用的是哪个数据库服务器?它与您的 Trac 服务器在同一主机上吗?您确定 CPU 使用率来自 Apache 吗?
就我个人而言,我发现 trac 在 mod_fastcgi 上运行得更好,在 mod_wsgi 上甚至更好。我们在一个规格适中的 VM 主机上使用一个 VM 来托管我们的 Trac 实例,并且大约 20 名员工一直在使用它(例如每隔几秒刷新一次),没有任何问题。