2013-10-07 44 views
5

想看看有沒有人有任何建議或進一步閱讀診斷我的django應用程序的heroku日誌中從我的網絡dynos得到的Heroku錯誤R14(超出內存配額)錯誤。Heroku web dyno正好運行到內存限制?

一個例子日誌:

heroku[web.1]: source=web.1 dyno=heroku.16810889.deec8406-c082-445d-a047-d0026849fd5e sample#load_avg_1m=0.01 sample#load_avg_5m=0.03 sample#load_avg_15m=0.04 
heroku[web.1]: source=web.1 dyno=heroku.16810889.deec8406-c082-445d-a047-d0026849fd5e sample#memory_total=512.06MB sample#memory_rss=511.84MB sample#memory_cache=0.00MB sample#memory_swap=0.22MB sample#memory_pgpgin=380186624pages sample#memory_pgpgout=364599pages 
heroku[web.1]: Process running mem=512M(100.0%) 
heroku[web.1]: Error R14 (Memory quota exceeded) 

一些背景信息,意見和東西我已經試過:

  1. 大部分的內存是由memory_rss(谷歌搜索的Heroku消費「 memory_rss「並沒有太多的變化)
  2. 縮放或解壓縮網頁dynos沒有效果,每個新的網頁dyno很快就達到512M(100%)。它總是停在100%,但不會更高。重新啓動dynos只能緩解10-15分鐘的問題。
  3. 此問題僅影響網絡dynos。我有一個芹菜調度程序和一個芹菜工人測功機運行良好。芹菜1.內存總量在100MB左右徘徊。
  4. 下面是來自New Relic的我的實例破折號:

enter image description here

我們還運行在不同的Heroku的實例(臨時服務器)完全相同的代碼,和以上的內存160MB從來沒有,所以它似乎是服務器特定的(至少在某種程度上)。

任何建議我應該看看下一步?我可以提供哪些其他信息會有幫助?謝謝

回答

1

有點荒謬,但追溯到django-avatar應用程序正在使用的用戶配置文件頭像的問題。應用程序中任何頁面的響應時間幾乎有50%都用在了模板的{%block header%}中,這沒有任何意義,結果竟然是{avatar}標籤。

AVATAR_STORAGE_DIR配置不正確的S3在settings.py

+1

你是如何跟蹤這個問題到組件? – marzapower

+0

淘汰的過程 –