В настоящее время мы пытаемся установить Discourse через Helm-чарты в Kubernetes на GCP, см. здесь.
Поскольку это решение должно охватывать и нашу продакшн-среду, мы не должны терять никаких данных, переданных в Discourse. Конечно, мы будем использовать управляемую базу данных PostgreSQL на GCP, но не были уверены, нужна ли нам также управляемая база данных Redis.
Если потеря всех данных в Redis не повлияет на функциональность Discourse, например, если будут утеряны только кэшированные данные, то мы можем использовать Redis в Kubernetes. Однако, если потеря Redis повлечет за собой более серьезные последствия, нам понадобится управляемая база данных Redis.
накопления backlog постоянных соединений и pub/sub
Если бы я был на вашем месте, я бы выбрал управляемый сервис в GCP, при условии, что они предлагают достаточно актуальную версию Redis и не отстают слишком сильно. AWS отлично справляется с обновлением до новых версий, тогда как GCP и Azure иногда могут отставать.
Можете уточнить, что именно вы имеете в виду под «историей»?
Потеря базы данных Redis (аналогичная выполнению redis-cli flushall) — это ситуация, с которой приложение Discourse справится без серьёзных проблем. Однако вы потеряете некоторые данные, например, письма, находящиеся в очереди, и т.п. Поэтому, хотя это и не является катастрофой, если вы можете избежать этого без особых усилий, я рекомендую вам это сделать.