Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.08.2015, 01:34
Аватар для Sanu0074
Аспирант
Отправить личное сообщение для Sanu0074 Посмотреть профиль Найти все сообщения от Sanu0074
 
Регистрация: 16.12.2012
Сообщений: 80

Грамотное кэширование в NodeJS проекте
Планируется highload-проект с использованием NodeJS, MySQL, Redis, NGINX.
За основу взят nodejs фреймворк express, и для работы с сокетами (может это и не хорошее решение) socket.io. Проект представляет собой Single page application, предполагается что сокет-соединение будет открыто повсеместно. Будет большое количество страниц, которые являются статистично-информативными, и не щадят бд тяжелыми запросами.
Собственно ближе к делу, есть несколько вопросов и том как построить кэширование данных и где лучше применять Redis, а где использовать другие способы.
1. Например, есть запрос к БД, результат его мы можем сохранить в Redis в виде JSON, при следующих обращениях уже будем брать его из redis и когда необходимо - делать инвалидацию данного кэша. - На сколько правильно это? и стоит ли именно в JSON хранить данные?
2. Нам иногда нужна закешерованная страница не только в JSON, а кусок или целяком HTML. - Правильно ли, хранить эти куски в redis?
3. Есть идея реализовать session-storage в redis, как это сделать правильно? например ключом будет id сессии, а значением - массив данных о клиенте. - Это правильно или нет? как лучше будет?
4. В каких случаях стоит записывать кэш в файлы на диск?
5. Стоит ли вообще пихать все что выше описано в redis?

Я не имею опыта в highload, поэтому мне интересно все что вы скажете, очень нужны грамотные советы в построении проекта на перечисленных компонентах. Может есть какие-то рекомендации по работе с сокетами в highload, либо еще что-то, что касается основ такого проекта.

Признателен за ваши полезные советы, благодарю за внимание!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Кэширование данных на nodejs cyber Node.JS 7 04.10.2014 23:42
WebSocket - nodejs SVARAI AJAX и COMET 2 17.02.2014 08:41
Senior JavaScript developer (NodeJS + MongoDB) Украина oversun Работа 0 14.03.2013 17:13
немного об nodejs qwermjk AJAX и COMET 5 15.02.2013 10:57
Comet: NodeJS - с чего начать разработку? Vulkan AJAX и COMET 13 27.11.2010 19:25