今天,無緣無故,我的導軌(2.1.0)應用程序非常緩慢甚至沒有響應。 它間歇性地發生。 所以有時它可以工作,但它又不起作用。導航控制檯不加載
當它不起作用時,我甚至無法加載'script/console production'。 我想知道它卡在哪裏。 如何逐步加載控制檯,以便我可以知道哪個部分導致問題?
謝謝。
山姆
今天,無緣無故,我的導軌(2.1.0)應用程序非常緩慢甚至沒有響應。 它間歇性地發生。 所以有時它可以工作,但它又不起作用。導航控制檯不加載
當它不起作用時,我甚至無法加載'script/console production'。 我想知道它卡在哪裏。 如何逐步加載控制檯,以便我可以知道哪個部分導致問題?
謝謝。
山姆
您的服務器上可能沒有足夠的內存,因此機器無法響應您的請求。如果您正在運行雜種狗,那麼請注意它以限制它可以使用的內存並在必要時重新啓動。
如果您使用的是Passenger,請嘗試限制實例的數量,並且如果您已經完成了查找腳本,該腳本在cron作業中過大時會殺死乘客實例。
如果這不是內存問題,那麼我可能需要更多的信息。
當一切都失敗了,你應該能夠使用strace的調試的腳本/應用程序實際做的事情。請注意,這應該只是最後一個度假勝地之一,因爲它會產生非常詳細的信息(並且大多限於I/O操作)。
嘗試使用「strace的腳本/控制檯生產」例如
如果你有能力,嘗試暫時刪除所有的插件/寶石,看看應用程序將啓動。其中之一可能是這個問題。
script/console
文件包含這一項。
#!/usr/bin/env ruby
require File.dirname(__FILE__) + '/../config/boot'
require 'commands/console'
您可以在Rails 2.1中找到commands/console file here。
我推薦加載irb並嘗試從那裏加載你的應用程序。
require 'config/boot'
如果這樣的作品,然後嘗試通過提到commands/console script其餘步進找出哪些部分是問題。
如果啓動文件無法加載,請查看config/boot.rb
文件,看看您是否可以確定哪個部分無法工作。祝你好運!
是的。事實證明,有人正在運行一個平均腳本,佔用了大部分服務器的資源。 – 2009-08-05 15:47:20