https://github.com/uriid1/ttm
Модуль для временного хранения небольших данных.
https://github.com/uriid1/ttm
tarantool tarantool-database ttl-cache
Last synced: 8 months ago
JSON representation
Модуль для временного хранения небольших данных.
- Host: GitHub
- URL: https://github.com/uriid1/ttm
- Owner: uriid1
- License: gpl-3.0
- Created: 2025-09-08T15:29:23.000Z (9 months ago)
- Default Branch: master
- Last Pushed: 2025-09-08T15:42:04.000Z (9 months ago)
- Last Synced: 2025-09-08T17:36:03.350Z (9 months ago)
- Topics: tarantool, tarantool-database, ttl-cache
- Language: Lua
- Homepage:
- Size: 20.5 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Описание
Универсальный и минималистичный модуль для временного хранения небольших данных.
Изначально был сделан в качестве кэша для телеграмм бота. В последствии расширился дополнительным функционалом.
# Пример использования
Запись и получение временных данных
```lua
local ttm = require('ttm')
-- Создает спейс temp_data для хранения временных записей
ttm.init()
-- Запускает фоновый обработчик очистки истекших записей
ttm.run()
local SEEN_TTM = 'seen_new_user'
local user_id = 1234567890
-- Если запись есть ...
if ttm.get(SEEN_TTM, user_id) then
-- ...
end
-- Добавление или обновление данных в кэше
-- ttl по умолчанию 60 сек
ttm.add(SEEN_TTM, user_id)
-- Добавление с заданны значением ttl
-- ttm.add(SEEN_TTM, user_id, true, 3600)
```