如何禁用Rails 3應用程序上的控制檯輸出? 更具體地說,我想至少禁用梅勒輸出,輸出整個電子郵件內容,包括圖片,使得處理動作慢得多(發送電子郵件需要將近10秒)。如何在Rails 3開發服務器上禁用控制檯輸出?
ps:我認爲減速是因爲輸出,如果它可以從另一個來源,如慢smtp服務器(它是gmail atm,所以不是)或其他類似的請讓我知道。
如何禁用Rails 3應用程序上的控制檯輸出? 更具體地說,我想至少禁用梅勒輸出,輸出整個電子郵件內容,包括圖片,使得處理動作慢得多(發送電子郵件需要將近10秒)。如何在Rails 3開發服務器上禁用控制檯輸出?
ps:我認爲減速是因爲輸出,如果它可以從另一個來源,如慢smtp服務器(它是gmail atm,所以不是)或其他類似的請讓我知道。
通過這個,你的意思是你想隱藏輸出顯示在控制檯運行你運行rails s
(或script/server
在rails 2中)?
你在Linux或OSX上嗎?
如果是的話,那麼就請執行下列操作
$ rails server 1> /dev/null
這將來自標準輸出的所有輸出到一個黑洞。
那麼你現在試圖從你的開發機器發送電子郵件? 我試圖避免這種情況, ,因爲事故將發生 ,你會發送客戶測試數據。
嘗試Mailcatcher http://mailcatcher.me/
它可以讓你發現你所有的應用程序將被髮送 的電子郵件在一個不錯的web界面 展示他們的時間,重要的避免了意外發送實時電子郵件給客戶以隨機測試數據的風險。
SMTP服務器(甚至是Gmail)的響應確實需要一些時間。您寧願使用將所有電子郵件存儲在數據庫中的郵件隊列,然後通過獨立流程發送它們。
E.g. https://github.com/beam/action-mailer-queue
關於記錄器 - 確保您的記錄級別是:錯誤或:致命。如果沒有,運行:
config.log_level = :error
我不認爲這對我來說是個好主意,我可以使用諸如後臺處理之類的東西,但不能排隊。不管怎麼說,還是要謝謝你 – 2011-06-16 20:25:44
謝謝,這樣做的確從6提高處理時間〜7秒到4〜5秒。不多,但它有幫助。此外,我們已經使用MailInterceptor來確保沒有客戶收到任何電子郵件。 – 2011-06-16 20:23:57