Страницы

2017-02-16

Ajax или не ajax - вот в чём вопрос

Если у кого возникнет такая же ситуация вдруг пригодится вариант решения (а может и нет)
Продолжение цикла забавные истории (прошлая тема многопотомность)

Опишу примерную ситуацию

Есть например урл на котором отображаются товары с ценами
Но цены берутся из кеш базы и это неактуальные цены с задержкой сутки (отдаётся страница за 1 секунду)
Когда начинаешь брать цены из базы то страница генерируется 5 секунд (это долго)

Допустим ускорить запрос нельзя (в реальности можно но затраты на это большие)

Я предложил решение - асинхронно отдавать данные по ценам и основную страницу

Например
http://example.org/url  -  урл с товаром
http://example.org/url?=1  -  дополнительный урл отдающий json цену

То есть - сделать отдельный контроллер который будет брать цену из базы и отдавать её

И вот этот запрос отдавать Ajax_ом

Были выдвинуты фантазии о увеличении нагрузки в 2 раза при каждой такой странице т.к. "придётся дополнительно загружать всё" и делать запрос в СУБД

И соответственно и предложение делать запрос в стандартном контроллере
Хотя это будет делать точно такую же нагрузку т.к. запрос то будет из базы

Резюмирую
В итоге я считаю что надо делать упор на асинхронной отдаче данных клиенту
Пока страница отдаётся (ajax делает запрос и потом подсовывает нужную цену)

Комментариев нет:

Отправить комментарий