Необходимо ли безопасное хранилище для Redis?

В настоящее время мы пытаемся установить Discourse через Helm-чарты в Kubernetes на GCP, см. здесь.

Поскольку это решение должно охватывать и нашу продакшн-среду, мы не должны терять никаких данных, переданных в Discourse. Конечно, мы будем использовать управляемую базу данных PostgreSQL на GCP, но не были уверены, нужна ли нам также управляемая база данных Redis.

Если потеря всех данных в Redis не повлияет на функциональность Discourse, например, если будут утеряны только кэшированные данные, то мы можем использовать Redis в Kubernetes. Однако, если потеря Redis повлечет за собой более серьезные последствия, нам понадобится управляемая база данных Redis.

Не могли бы вы прояснить этот вопрос?

Я подробно описал это здесь: More details on how the Redis cache is utilized? - #2 by Falco

Redis используется для:

  • кэширования

  • очереди фоновых задач

  • накопления backlog постоянных соединений и pub/sub

Если бы я был на вашем месте, я бы выбрал управляемый сервис в GCP, при условии, что они предлагают достаточно актуальную версию Redis и не отстают слишком сильно. AWS отлично справляется с обновлением до новых версий, тогда как GCP и Azure иногда могут отставать.

@Falco Большое спасибо за ваш вклад. То есть, если Redis будет утерян, это уничтожит всю историю и т.д.?

Можете уточнить, что именно вы имеете в виду под «историей»?

Потеря базы данных Redis (аналогичная выполнению redis-cli flushall) — это ситуация, с которой приложение Discourse справится без серьёзных проблем. Однако вы потеряете некоторые данные, например, письма, находящиеся в очереди, и т.п. Поэтому, хотя это и не является катастрофой, если вы можете избежать этого без особых усилий, я рекомендую вам это сделать.

Да, под историей я имел в виду все темы и всё, как наш разговор, который мы ведём прямо сейчас здесь.

Очень важно не потерять их. :slight_smile:

Фактические данные, такие как сообщения, темы, пользователи и т. д., хранятся в PostgreSQL.

Таким образом, это касается лишь не столь критичных или более эфемерных данных.

Самое главное, что вы потеряете, — это запланированные на будущее действия. Обычно это не проблема.