Rails应用程序无法处理多个用户

时间:2011-12-07 00:38:55

标签: ruby-on-rails ruby apache sqlite passenger

我有一个部署到服务器的rails应用程序。 RHEL 6.1,ruby 1.8.7,rails 3.0.9。 EC2微型实例,590MB内存(看起来很奇怪,但无论如何)。

它目前正在使用sqlite3在开发模式下运行,尽管我已经将它用于生产并连接到postgresql。这个问题一直存在。

基本上,它在本地运行良好,当我是唯一一个使用它时运行正常。我可以从网站上加载一堆标签,而不会造成太大的性能损失。我不确定我是不是只对它征税,但似乎只要第二个用户试图使用该网站,它就会减速并崩溃。我知道这个系统的内存很低,但是Rails真的很费力吗?

使用应用程序时会产生大约4-6个ruby进程,每个进程最多使用~18%的内存。他们往往会坚持几分钟。

请查看我的apache日志。请忽略ActiveRecord :: StatementInvalid行。这是一个无关的问题:http://project.touchstudios.net/error_log.txt

我不确定这是我的应用程序或配置中的问题。这是一个非常令人沮丧的问题。有人可以为我建议一个行动方案吗?我会提供任何可能有帮助的信息。

由于

1 个答案:

答案 0 :(得分:1)

嗯,它往往很简单。关于这个网站的东西,但我倾向于在问到它之后很快回答我自己的问题。

EC2 micro实例似乎并不是很好。我想这只是一定的开销。我已经启动了一个大型实例,并且ruby进程似乎没有无法控制地增长。我不愿意在这个问题上投入更多的硬件;我不想掩盖一个更深层次的问题,但我现在开始相信微型实例不会为中型轨道应用程序削减它。