Моментальные снимки устройств (кэш настроек)
Когда SberMobile Server впервые считывает значения внутренних настроек устройства, он сохраняет эти значения в базе данных. Это называется созданием моментальных снимков устройства или кэшированием настроек. Пользователи затем могут просмотреть и изменить настройки для любого устройства, даже если оно временно не подключено к SberMobile Server.
НОВЫЙ ТЕРМИН: Кэш - это набор данных, дублирующих оригинальные значения, сохраненные где-либо или обработанные ранее. Кэш используется, когда оригинальные данные трудно извлечь или обработать (обычно с точки зрения времени доступа), в то время как чтение кэша "выгоднее" (т.е. легче и быстрее). |
Когда вы просматриваете или изменяете настройки устройства, в действительности вы работаете с моментальным снимком устройства. Напрямую изменить актуальные настройки устройства невозможно (если только не включен прямой режим синхронизации). Новые настройки записываются в устройство во время следующей синхронизации. |
Кэш настроек периодически синхронизируется с устройством. Синхронизация происходит в следующих случаях:
Когда устройство подключается к SberMobile Server
Когда значения настроек изменяются в кэше (например, используя SberMobile IIoT Platform Client) при подключенном к серверу устройстве, если настройка Начать синхронизацию в период изменения настроек установлена на true (значение по умолчанию)
Периодически, как определено настройкой Период Синхронизации
Каждая настройка синхронизируется по следующему алгоритму:
Если значение настройки не существует в кэше сервера, оно кэшируется (т.е. значение считывается с устройства и сохраняется в кэше сервера)
Если значение настройки в кэше сервера было изменено позже, чем на устройстве, кэшированное значение записывается на устройство
Если значение настройки в устройстве было изменено позже, чем в кэше сервера, кэшированное значение заменяется текущим значением настройки устройства
В остальных случаях никакие действия не выполняются
Снимок устройства может постоянно храниться в базе данных или находиться в памяти. Это поведение контролируется параметром Режим кэширования настроек, расположенным в общих свойствах устройства. Если для параметра Режим кэширования настроек выбрано значение хранилище (это значение по умолчанию), каждое обновление настроек устройства приводит к обновлению базового хранилища конфигурации. Это приводит к проблемам с производительностью в высоконагруженных системах, поэтому при обработке тысяч обновлений в секунду следует изменить режим кэширования на память.