Rails 3.1 jest bardzo powolny w trybie deweloperskim ze względu na zasoby, co robić?

Po dodaniu zębatek, szyny ładują się bardzo wolno w trybie deweloperskim, co zrobić, aby przyspieszyć?

Author: Andrew Marshall, 2011-09-23

5 answers

Spójrz na https://github.com/wavii/rails-dev-tweaks .

Rails uruchamia wszystkie haki to_prepare na każdym żądaniu zasobów Sprockets w trybie deweloperskim. Obejmuje to takie rzeczy, jak automatyczne (ponowne)ładowanie kodu, i różne klejnoty sneak tam też.

Rails-dev-tweaks wyłącza to_prepare & reloading na dowolnym żądaniu zasobów (i kilka innych - odczytuje pierwszą część README). Przyspiesza środowisko programistów o ogromną ilość dla każdego przyzwoitego projekt wielkości. Jest również konfigurowalne, aby to zrobić dla wszelkich dodatkowych żądań, które lubisz

 50
Author: Nevir,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-05-09 14:33:14

Po odwołaniu się do kilku wyników Google dotyczących tego problemu, mam przybity do miejsca, gdzie znajduje się problem DNS.

Problem w tym, że Rails wykonuje wyszukiwanie odwrotne. Tak więc, jeśli żądasz z bezpośredniego IP lub nazwy hosta w /etc/hosts tylko komputera z przeglądarką, co robię często, ponieważ uruchamiam wszystko w wyrzuconych maszynach wirtualnych, a ten IP nie rozwiązuje się szybko na serwerze dev, Rails będzie czekać, na każde i każde żądanie.

Morał z historii? Dołącz wpis /etc / hosts dla każdego IP związanego z Twoim rozwojem na serwerze dev (tj. serwerze z rails). Oznacza to, aby przejść do przodu i zrobić wpis hostów dla każdego fałszywego / Wirtualnego / itp... IP na serwerze dev spodziewasz się, że będziesz zaangażowany w testowanie rails, ponieważ kiedy rejestruje żądania i takie tam, zrobi odwrotne wyszukiwanie i chcesz, aby było to szybkie.

 5
Author: Randy Wallace,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-01-21 19:14:29

Dziwne rozwiązanie, które mi pomogło. Zwykle nawigowałem do mojej aplikacji podczas rozwoju za pośrednictwem myapp.local: 3000, który został ustawiony w moim pliku hosts. Aktywa ładowały się śmiesznie wolno.

Przechodząc do mojej aplikacji przez 127.0.0.1: 3000, zasoby ładowane szybko, a ponadto, po jednorazowym użyciu lokalnego adresu ip, mogłem następnie nawigować za pomocą myapp.lokalnie: 3000, a aktywa ładowały się super szybko.

Chciałbym ci powiedzieć dlaczego, ale mam nadzieję, że to komuś pomoże. Jestem na OSX 10.7.5.

 1
Author: nelsonenzo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-08-12 17:31:58

Sprawdziłeś, jak szybko działa w produkcji? Środowisko programistyczne zachowuje się inaczej niż testowanie i produkcja, dzięki czemu uzyskuje większą wydajność. Bez większej ilości informacji nie możemy udzielić ci lepszej odpowiedzi.

 0
Author: Adam Eberlin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-09-23 07:27:13

Sprawdź również Turbo Sprokets tutaj - https://github.com/ndbroadbent/turbo-sprockets-rails3

Wygląda obiecująco.

 0
Author: trisweb,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-10-23 13:55:41