Rails 3 инициализирует чрезвычайно медленный ход на Ruby 1.9.2
Я использую RVM для управления средой, установленную Ruby 1.9.2.p136 (я думаю, ее последняя версия.) и Rails 3, создали gemset и запустят пакет. все работает до сих пор
но;
Рельсы сильно активируются при запуске команд, т.е. генерируют, уничтожают, грабли и т.д.
Для завершения команды требуется около 30-45 секунд. Это никогда не произойдет, если использовать Ruby Enterprise Edition или Ruby 1.8.7
Почему это происходит. Есть предположения?
Работает на Ubuntu 10.10, RVM, Ruby 1.9.2, Rails 3
Спасибо.
Ответы
Ответ 1
В Rails-Core есть поток - http://groups.google.com/group/rubyonrails-core/browse_thread/thread/88519ef5a53088a1/c01ba447c6dc0de7?lnk=raot
Процитировать Yehuda Katz
"Есть вещи, которые C требует кода в 1.9, что замедляет работу.
Одним из таких примеров является повторная проверка $LOAD_PATH, чтобы убедиться, что все это расширено
по каждому требованию. Это то, что должно быть рассмотрено рубиновым ядром.
Я открою билет на redmine, если его уже нет ".
Я также испытываю эту проблему, и проблема $LOAD_PATH кажется потенциальной причиной. Позволяет надеяться, что он будет исправлен в ближайшее время.
Ответ 2
Попробуйте привязать (в unix), dtruss (на mac) вашу команду (возможно, нужно "sudo" ). Он покажет вам, где процесс тратит свое время. Обратите внимание, где он приостанавливается. Это определенно не нормально.