git clone https://github.com/vguzev/flowplay.git
cd flowplay
npm install
npm start
После этого открыть в браузере страницу: http://localhost:8080
1. Кеширование в форме поиска в шапке (typeahead): реализовано "в лоб", с помощью массива, в котором ключом служит введенная фраза.
2. Оптимизация загрузки комментариев работает следующим образом:
* комментарии кешируются постранично в массиве, ключом в котором служит номер страницы;
* первая страница комментариев загружается всегда, вне зависимости от того, есть ли она в кеше или нет;
* при запросе второй страницы сразу запрашиваются данные для пяти страниц, т.к. если пользователь пошел на вторую страницу, то он скорее всего пойдет смотреть и следующие.
* при добавлении или удалении комментария кеш очищается; * при загрузке первой страницы, если выясняется что загруженные данные отличаются от того, что хранится в кеше - кеш очищается (т.к. это означает что кто-то добавил или удалил комментарий и все страницы "съехали").