redis作为app的系统配置存储

redis as app's system configuration storage

在我基于节点的应用程序中,我计划将 redis 用于多种用途,基本上是进程间 pub/sub 通信和在线用户缓存。这个应用清楚了。

我在考虑在哪里存储基本应用程序的系统配置。主要 TCP 端口、默认消息通道、数据库名称、管理员用户密码等关键元素将放在此处。

实现这种事情的传统选择是配置文件,可能是纯文本文件中的 JSON 结构。

我想知道在这里使用 redis 是否有意义。主要问题是数据可靠性和数据丢失的风险。

pros/cons是什么?

反对 Redis 可靠性的说法是因为其数据持久性和复制机制的异步性质。作为异步,这些不能保证所有更新都能承受失败——取决于您如何配置 Redis,如果发生失败,最近的更新有可能(很小)丢失。

也就是说,在配置设置存储的上下文中,这并不是真正的问题。配置数据大部分时间是不可变的,如果您由于某种奇怪的巧合而丢失了对它的最新更新,手动恢复更​​改(即重新配置)通常是微不足道的。