Ще се съглася с всички останали. Трябва да профилирате. Няма смисъл да правите каквото и да е с кода си, докато не разберете какво точно причинява забавянето. Да се опитваш да отстраниш проблем, без да разбереш причината, е като да се чувстваш зле и да решиш да имаш много операции, докато не се почувстваш по-добре. Първо диагностицирайте проблема си. Може да е нещо малко като мрежова настройка или може да е един лош ред във вашия код.
Някои съвети за профилиране:
Как да профилирате вашето приложение Rails
Приложения за тестване на производителността Rails
At the Forge – Profiling Rails Applications
След като откриете пречката, можете да разберете какво да правите.
Препоръчвам тези видеоклипове:Railslab Scaling Rails
Ревизирано сега въз основа на резултатите от проф.:
ДОБРЕ. Сега, когато можете да видите, че проблемът ви е, че правите някакво изчисление, използвайки заявка, базирана на цикъл през резултатите от друга заявка за активен запис, бих ви посъветвал да разгледате създаването на персонализиран SQL израз, комбиниращ вашите първоначални критерии за избор и изчислението на цикъла, за да получите това, от което се нуждаете. Определено можете да ускорите това, като оптимизирате SQL.