Кеширование

Кеширование предназначено для ускоренной загрузки запрашиваемых данных на мобильное устройство пользователя. Кеш – это сохранённая на сервере мобильной платформы копия данных, полученных из ресурса источника данных. При запросе данных с мобильного устройства сервер возвращает обновление из сохранённого кеша без обращения к источнику данных. За счёт этого сокращается время обработки запроса.

Совет. Если объем запрашиваемых данных небольшой, то используйте передачу транзакционных данных для обработки ответа при разрыве соединения.

Кеш хранит ответы источника данных с указанием версий, дату сохранения кеша, срок истечения актуальности, информацию для сопоставления запроса с кешем: для какого ресурса кеш, какие учетные данные использовались при запросе к источнику данных и входные параметры запроса. Кеш ресурса доступен для управления кешами по параметрам в подразделе «Управление кэшем».

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

Для каждой таблицы ресурса дельта содержит:

Для получения подробной информации об использовании дельты в запросах обратитесь к разделу «Обозначение версий дельты в запросах».

Помимо номера версии кеш ресурса содержит уникальный идентификатор «ETag», который передаётся вместе с данными или дельтой. При указании в запросе уникального идентификатора сервер мобильной платформы автоматически определяет, какой версии кеша соответствует запрос, рассчитывает и передаёт дельту мобильному устройству между запросом и последней версией кеша на сервере.

Обновление данных при кешировании

Взаимодействие мобильного устройства, сервера мобильной платформы и источника данных при кешировании:

Алгоритм обновления данных на мобильном устройстве:

  1. Мобильное устройство посылает запрос на обновление данных.

  2. Сервер мобильной платформы проверяет актуальность кеша по запрашиваемым данным:

  1. Дельта передается мобильному устройству с сервера мобильной платформы.

  2. Мобильное устройство восстанавливает актуальную версию из сохранённых данных и полученной дельты.

Схема использования кеша при работе с одним ресурсом:

Проверка целостности данных

Для кешируемых ресурсов производится проверка целостности данных:

  1. При получении данных от источника на сервере мобильной платформы рассчитывается хеш-сумма по идентификаторам записей запрашиваемого ресурса.

  2. Хеш-сумма, рассчитанная на сервере мобильной платформы, отправляется на мобильное устройство вместе с актуальной версией кеша или дельтой двух последних версий кеша.

  3. Данные ресурса обновляются на мобильном устройстве, после чего производится расчёт хеш-суммы на мобильном устройстве.

  4. На мобильном устройстве производится сравнение хеш-суммы, полученной с сервера мобильной платформы, с хеш-суммой, рассчитанной на мобильном устройстве:

Настройка параметров кеширования

Для использования кеширования установите флажок «Кэшировать», который доступен после импорта ресурса. При установке флажка будут отображены дополнительные параметры кеширования:

Задайте параметры кеширования:

Примечание. Без указания количества строк скорость записи в кеш будет максимальна, так же как и потребление памяти.

Примечание. Хранение старых версий потребляет память на сервере мобильной платформы.

Примечание. При использовании данного параметра учитывайте следующие особенности:
   ● размер кеша не должен превышать 512МБ;
   ● хранения последней версии кеша приводит к увеличению объёма потребления оперативной памяти.

Примечание. При использовании данного параметра учитывайте следующие особенности:
   ● количество дельт в оперативной памяти должно быть меньше или равно количеству старых версий кеша, указанных в параметре «Сколько старых версий хранить».
   ● хранение указанного количества дельт приводит к увеличению объёма потребления оперативной памяти.

Измените входные параметры ресурса для получения среза данных через запросы и нажмите кнопку «Сохранить». Ресурс будет добавлен в список содержащихся ресурсов источника данных и его входные параметры будут доступны для управления кешем ресурса.

Запросы к ресурсам источника данных приведены в разделе «Метод работы с табличными ресурсами».

См. также:

Импорт ресурсов источника данных | Параметры ресурса