Кэширование
В скриптах есть возможность кэширования данных, получение которых может занимать время.
Данный функционал доступен начиная с октябрьской версии приложения.
Данные хранятся в кэше на сервере в течение определенного промежутка времени, по умолчанию 3600 секунд (1 час).
Работа с кэшем доступна через поле context.utils.cache
.
Запись данных в кэш:
TypeScript |
---|
| // Создаем уникальный ключ для доступа к ячейке с данными
const key = 'uniqueKey';
// Получаем значение (например, из переменной бота)
let value = context.input.variables.valueToCache;
// Запись данных в кэш
await context.utils.cache.setValue(key, value);
|
Получение данных из кеша:
TypeScript |
---|
| // Создаем уникальный ключ для доступа к ячейке с данными
const key = 'uniqueKey';
// Получаем значение из кэша
let value = await context.utils.cache.getValue(key);
// Проверяем наличие значения
if (value == null)
{
// Получаем значение из сервиса
value = 'value'; // TODO: Получить из сервиса.
// Сохраняем значение в кэш
await context.utils.cache.setValue('key', value);
}
|
Изменение времени хранения данных:
TypeScript |
---|
| // Настраиваем параметры кэширования
const options = { ttl: 3600 }; // ttl: 3600 секунд (1 час)
// Записываем значение с дополнительным параметром options
await context.utils.cache.setValue('key', value, options);
|