History and recovery
Центрифуга может хранить историю публикаций
История конфигурируется на уровне неймспейса
Чтобы она была включена, нужно чтобы опции history_size
и history_ttl
имели значения больше нуля
Каждая публикация в истории имеет поле offset
- это инкрементное uint64
поле
Каждый стрим (redis stream) идентифицируется по полю epoch
Центрифуга предоставляет механизм восстановления данных из истории, это полезно когда клиент находился какое-то небольшое время в автономном режиме (например мигнула сеть), вместо того чтобы клиент шел к бэкенду и получал последние данные от него, он получает их от центрифуги
Таким образом если мигнула сеть на продакшене или мигнул балансер, то все наши клиенты не ломанутся одновременно к бэкенду, а получат данные от центрифуги
Чтобы включить этот механизм нужно в конфиге проставить опцию recover
в true
(глобально или для неймспейса)
No Comments