2011-01-25 101 views
26

我使用RVM來管理環境,安裝了Ruby 1.9.2.p136(我認爲它的最新版本)和Rails 3,創建了gemsets和運行bundler。一切工作到目前爲止很好 但;Rails 3在Ruby 1.9.2上初始化速度非常慢

當運行命令,即生成,銷燬,耙等時,軌道非常緩慢地運行。 需要大約30-45秒才能完成命令。如果使用Ruby Enterprise Edition或Ruby 1.8.7,這絕不會發生。

爲什麼會發生這種情況。有什麼想法嗎? 在Ubuntu 10.10上運行,RVM,Ruby 1.9.2,Rails 3

謝謝。

+0

這是一個全新的應用程序,或在現有的應用程序? – 2011-01-25 03:56:27

+0

影響新的或現有的應用 – Harry 2011-01-25 04:09:43

+1

簽入Sytem Monitor(Ubuntu)。現在用rake db:migrate命令測試其使用%100 cpu與大約50mb內存 – Harry 2011-01-25 04:14:39

回答

3

嘗試strace(在unix上),dtruss(在mac上)你的命令(雖然可能需要「sudo」)。它會告訴你在哪裏花費時間。注意它暫停的地方。這絕對不正常。

7

有關於這on Rails的核心線程 - http://groups.google.com/group/rubyonrails-core/browse_thread/thread/88519ef5a53088a1/c01ba447c6dc0de7?lnk=raot

引述耶胡達·卡茨

「有些事情,在C需要代碼不會在1.9慢下來 的一個例子是。重新檢查$ LOAD_PATH以確保它在所有需求下都被擴展爲 。這是ruby-core應該解決的問題。 如果還沒有,我會在redmine上打開一張票。

我也遇到了這個問題,$ LOAD_PATH問題似乎是一個潛在的原因。讓我們希望它很快得到解決。