@user9823
Столкнулся со следующей проблемой.
Делаю приложение которое записывает данные и потом читает их из redis
Сам redis запущен в docker контейнере.
При запросе отслеживаю запись внутри контейнера
127.0.0.1:6379> keys *
1) "-C7pZ9Dsy3:IvlhTR68"
проверяю TTL
127.0.0.1:6379> ttl -C7pZ9Dsy3:IvlhTR68
(integer) 42662
т.е. всё как бы работает хорошо, ключ должен будет закончится через 42662 сек. (около 12 часов)
Потом чтото происходит и редис чистый.
Никаких запросов к нему не отправляю, редис полностью чистый. Проверяю его.
127.0.0.1:6379> keys *
(empty array)
сервер запущен на Digital Ocean. Серверок слабый, 1 Гб озу
проверю память
# free -m
total used free shared buff/cache available
Mem: 981 700 68 14 212 114
Swap: 1023 555 468
в volume прокинут конф. файл (кусок из docker-compose)
redis:
image: redis:6.0.1
ports:
- 6379:6379
volumes:
- ./redis/redis.conf:/usr/local/etc/redis/redis.conf
- ./redis/volume/:/data
networks:
- symfony
command: [ "redis-server"]
куда копать? что смотреть?
делаю docker-compose logs redis
последние строки такие
redis_1 | 1:S 26 Jan 2021 11:50:57.299 * MASTER <-> REPLICA sync started
redis_1 | 1:S 26 Jan 2021 11:50:57.311 * Non blocking connect for SYNC fired the event.
redis_1 | 1:S 26 Jan 2021 11:50:58.392 # Module /tmp/exp_lin.so failed to load: It does not have execute permissions.
redis_1 | 1:M 26 Jan 2021 11:50:58.404 # Setting secondary replication ID to fc47e2e4f5487fa786ef9103d6033f6b393a393b, valid up to offset: 1. New replication ID is 015a93b3ff96075a9edd685787a0dea81adf88cc
redis_1 | 1:M 26 Jan 2021 11:50:58.405 * MASTER MODE enabled (user request from 'id=85 addr=188.166.115.185:12036 fd=9 name= age=5 idle=0 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=34 qbuf-free=32734 obl=0 oll=0 omem=0 events=r cmd=slaveof user=default')
redis_1 | 1:M 26 Jan 2021 12:00:16.046 * 1 changes in 3600 seconds. Saving...
redis_1 | 1:M 26 Jan 2021 12:00:16.050 * Background saving started by pid 24
redis_1 | 24:C 26 Jan 2021 12:00:16.053 * DB saved on disk
redis_1 | 24:C 26 Jan 2021 12:00:16.054 * RDB: 0 MB of memory used by copy-on-write
redis_1 | 1:M 26 Jan 2021 12:00:16.150 * Background saving terminated with success
полагаю дело в этом * RDB: 0 MB of memory used by copy-on-write
как чинить? у кого какие мысли? заранее спасибо за ответ
Решения вопроса 0
Ответы на вопрос 4
@vitaly_il1
А через какое время исчезла запись? Больше 10 минут? Есть что-то в логе контейнера за это время?
@wazza
Попробуйте в redis.conf прописать maxmemory меньше половины от имеющегося 1Гб.
@user9823
теперь при запуске
127.0.0.1:6379> config get maxmemory
1) «maxmemory»
2) «128000000»
изначально мемори уже установлен, но данные в редис не записываются
@rez0n