我有一个 CPU 消耗问题的 Rails 3.0 应用程序。
该应用程序在 Debian 机器上的 Apache +passenger mod 上以生产模式运行。它是具有 6 Gb RAM 和 2 CPU(1 核 3GHz)的虚拟机。它是一个邮件应用程序,只需单击链接即可阅读邮件,需要在服务器上执行一系列操作来呈现页面。这个简单的点击在 2 到 3 秒内需要大约 50% 的 CPU(我用“top”命令看到它)。
问题是我在系统上有大约 150 个用户,并且 Postgresql 数据库安装在同一台机器上。当多个用户同时进行操作时,CPU 被 100% 使用并且 Postgresql 有足够的资源来接受请求。
我可以进行任何配置(Apache?Passenger?Rails?)以防止 CPU 增加和 Postgresql 崩溃?我可以在两个 CPU 上分配作业吗(我不知道是否已经如此)?
先感谢您。
雷米
编辑 :
似乎 ruby 进程为作业分配内存。但是当作业完成时,分配的内存似乎没有被释放。