Redis RDB происходит даже с отключенными AOF и Snapshotting (и, возможно, приводит к полной потере ключа) - PullRequest
1 голос
/ 21 марта 2019

Мы запускаем Redis 5.0.3 на докере с отключенным сохранением и AOF:

127.0.0.1:6379> config get save
1) "save"
2) ""
127.0.0.1:6379> config get appendonly
1) "appendonly"
2) "no"

Все работает нормально (без резервных копий в журналах), до сегодняшнего утра, когда мы получили несколько журналов резервного копирования БД в быстрой последовательности:

21 Mar 2019 04:12:58.453 * DB saved on disk
21 Mar 2019 04:12:58.454 * DB saved on disk
21 Mar 2019 04:12:58.456 * DB saved on disk
21 Mar 2019 04:13:50.153 * DB saved on disk
21 Mar 2019 04:13:51.573 * DB saved on disk
21 Mar 2019 04:13:52.282 * DB saved on disk
21 Mar 2019 04:21:18.539 * DB saved on disk
21 Mar 2019 04:21:18.540 * DB saved on disk
21 Mar 2019 04:21:18.541 * DB saved on disk

В течение этого периода времени Redis сбрасывает все наши ключи - дважды!

Есть идеи, почему это происходит? Система не находится под нагрузкой памяти или процессора, все графики выглядят нормально.

Другие полезные вещи:

  • Использование Redis памяти увеличивается, но все еще находится в пределах границ (как и ожидалось, поскольку мы храним потоки данных)
  • Количество ключей не меняется в течение этого периода времени, пока все они не упадут
  • Задержка постоянна все время
  • Redis сообщает об отсутствии просроченных или выселенных ключей
  • Медленный журнал в течение этого периода времени увеличивается, а затем сразу после этого снова становится ровным.

EDIT

При дальнейшей отладке с использованием info commandstats кажется, что в течение этого периода времени было выполнено несколько команд flushall, что объясняет, что БД спасает от просмотра источника.

Я понятия не имею, почему происходят эти сбросы - в наших приложениях нет команд сброса. Отладка продолжается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...