nodejs + redis可靠吗?

时间:2016-08-07 19:33:47

标签: node.js redis

似乎nodejs + redis有一些数据丢失:

https://hallard.me/damaged-community-forum-lost-data/ https://community.nodebb.org/topic/6904/how-to-export-from-redis-to-mongodb-my-database-got-wiped/58

有人经历过同样的灾难,除了备份整个内容之外,还知道如何修复它。

1 个答案:

答案 0 :(得分:1)

在我工作的公司,我们已经使用了很长时间了,它从来没有让我们失望。

在我看来,你永远不应该使用你不熟悉的数据库,然后只有你会遇到诸如保存损坏的数据或"losing data"等问题。

如果发生崩溃,redis将丢失所有数据(如果服务器内存最大化),因此您需要使用redis持久性模块。

有两种类型的redis持久性数据模块,RDB和AOF。您应该根据您要存储的数据的性质,有意识地选择使用哪一个(或两者)。

  • RDB持久性按指定的时间间隔执行数据集的时间点快照。

  • AOF持久性记录服务器收到的每个写入操作,将在服务器启动时再次播放,重建原始数据集。使用与Redis协议本身相同的格式以仅追加方式记录命令。当Redis太大时,Redis能够重写背景。

在此处详细了解:http://redis.io/topics/persistence

这是一篇关于将redis用作主数据库的好文章的引用:

  

与其他数据库相比,Redis持久性的可靠性并不低   在大多数情况下实际上更可靠,因为Redis写道   一个仅附加模式,所以没有崩溃的表,没有奇怪的   腐败可能。

来源:https://blog.andyet.com/2012/02/09/redis-reliability-for-realtime-apps/

节点不应该影响redis的工作方式,它只用于与redis进行数据通信,你不应该担心特别使用node