Для хранения на клиенте есть 2 АПИ в браузере (localStorage и indexedDB). Если первый - это простой key-value, то второй представляет уже более навороченный вариант (и главное, что он позволяет хранить гораздо больше), выбирай что удобнее.
По поводу обновления: можно использовать довольно простой паттерн, который используется при синхронизации реплик, а именно - штамп-версии. Это может быть хеш сумма данных, временная метка или просто некоторое целое число. Я использую совокупность: временная метка + возрастающее целое число. Т.е. если метка на клиенте не совпадает с меткой на сервере, то начинай синхронизацию.
Профит от кеширования на клиенте может быть огромным, я уже довольно давно применяю такой подход при построение веб-приложений.
Последний раз редактировалось kobezzza, 04.12.2013 в 11:19.
|