2009-05-05 36 views
3

我聽說Kevin Skoglund(lynda.com)說,養成在開發過程中頻繁重啓Webrick的習慣是一種好習慣。儘管通常您不需要重啓Webrick來查看您的更改,但他暗示有時可能需要這樣的時間?有誰知道這些情況可能是什麼?這讓人想知道Webrick是否有片狀。是否有必要重啓Webrick以查看您的更改的特定時間是否正確?

+0

如果您還沒有,請考慮切換到Mongrel - 如果你運行Rails的時間大約在1.2.6或更晚,它應該和`gem install mongrel`一樣簡單(爲* nix添加一個`sudo`),下一次啓動就應該運行它。一般來說(當然YMMV)雜種比webrick快得多。 – 2009-05-05 08:28:39

+0

謝謝。不知道那很容易。 – 2009-05-05 13:31:41

回答

8

如果您正在使用Lynda.com教程,那麼您正在使用早期版本的Rails,然後是最新版本(2.3.2)。

簡而言之,在開發環境中工作時不再需要大量重新啓動。我認爲Kevin每次更換Model對象時都會重新啓動服務器,但情況不再如此。

一般的經驗法則是:每次更改config或lib文件夾中的某些內容時重新啓動。 。 。任何其他代碼更改都不應使重新啓動成爲必要。當你改變你的routes.rb文件的時候重啓也是一個好主意,儘管今天使用它時我發現它並不是一條硬性規則。

所有服務器重新啓動的原因並不一定是因爲你的web服務器(webrick,mongrel,phusion passenger)是片狀的,但是因爲當你的Rails應用程序啓動時,某些東西加載到內存中,加載路徑,初始化程序,環境數據。當您對這些文件中的一個進行更改時,您需要重新啓動應用程序,以便進行更改(而不是舊內存仍在運行)。

0

如果更改數據庫架構,或者添加/更改常量,則需要重新啓動。

我覺得Rails現在默認使用Mongrel進行開發,但這些仍然適用。

相關問題