1

我正在使用在这里找到的流行的 restful 身份验证应用程序/教程:http ://railsforum.com/viewtopic.php?pid=74245#p74245

我一直在广泛使用该应用程序,一切都很好。我遇到的唯一问题是系统需要 60 秒到几分钟的时间来处理新用户的创建。这显然是不可接受的。

当我通过正常的注册过程创建用户时,系统只是坐下来处理很长时间,然后最终返回注册成功的消息。

我没有收到任何错误或异常。日志也不表明有任何问题。几天来,我已经广泛使用该应用程序,这是我似乎遇到的唯一问题。

我应该在哪里寻找导致此问题的原因的任何想法?整个应用程序都列在我粘贴在这篇文章顶部的链接中,所以我认为在那里查看它更容易,而不是我粘贴大量细节。如果您需要更多信息,我很乐意为您提供问题的答案。

谢谢!

4

3 回答 3

4

我会使用newrelic gem(不用担心,将它用于开发环境是 100% 免费的)。安装后,您可以注册一个用户,然后使用 newrelic 查看每个 sql 查询花费了多长时间以及请求的哪一部分(渲染等)占用了时间。

如果我不得不做出一个疯狂的猜测,我会责怪邮件配置,但这是在黑暗中拍摄的。newrelic 应该可以帮助您追踪最大的时间槽在哪里——如果 newrelic 报告中的项目之间的时间有很大的跳跃,那么这也是一个很好的指标,表明哪里出了问题。

祝你好运。

于 2009-09-16T13:13:02.967 回答
1

我还怀疑 ActionMailer,如果它无法联系到配置的服务器,则需要很长时间才能超时。

几年前我遇到的另一个类似问题是我使用的代码使用 /dev/random 来获取随机数据,但我运行的虚拟机没有 /dev/random 但不知何故它最终会完成一个请求,但它永远。

于 2009-09-16T14:13:49.003 回答
0

我也会尝试使用 Rack::Bug gem。为您提供有关您的应用程序的大量信息,这些信息可能有助于您调试身份验证过程。

http://www.brynary.com/RackBug.mov

于 2009-09-16T14:02:01.903 回答