Skip to content

spajic/task-4

Repository files navigation

Задание №4

В этом задании вам предлагается оптимизировать учебное rails-приложение.

Для запуска потребуется:

  • ruby 2.6.1
  • postgres

Запуск:

  • bundle install
  • bin/setup
  • rails s
  • localhost:3000/автобусы/Самара/Москва

Описание учебного приложения

Зайдя на страницу автобусы/Самара/Москва вы увидите расписание автобусов по этому направлению.

Что оптимизировать

Импорт данных

При выполнении bin/setup в базу данных загружаются данные о рейсах из файла fixtures/small.json

Сама загрузка данных из файла делается очень наивно.

В комплекте с заданием поставляются файлы

  • example.json
  • small.json
  • medium.json
  • large.json

Нужно оптимизировать механизм перезагрузки расписания из файла так, чтобы он обрабатывал файл large.json в пределах минуты.

rake reload_json[fixtures/large.json]

Отображение расписаний

Сами страницы расписаний тоже формируются не эффективно и при росте объёмов начинают сильно тормозить.

Нужно найти и устранить проблемы, замедляющие формирование этих страниц.

Сдача задания

PR в этот репозиторий с кодом и описанием.

В описании указать:

  • за какое время выполняется импорт файла fixtures/large.json
  • за какое время рендерится страница автобусы/Самара/Москва

Перед сдачей нужно убедиться, что результат работы страницы автобусы/Самара/Москва для данных из файла fixtures/example.json не изменился, то есть не было внесено никаких функциональных изменений, только оптимизации.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published