redis - Redis是否支持强一致性

标签 redis replication database-replication

我正在考虑将 Java 应用程序移植到 .NET,该应用程序当前大量使用 EhCache 并坚持认为它希望支持强一致性 (http://ehcache.org/documentation/get-started/consistency-options) .

我想用 Redis 代替 EhCache,但是 Redis 是支持强一致性还是只支持最终一致性?

我看到过关于 Redis 集群的讨论,但我想这离发布还有一段距离。

还是我看错了?如果 Redis 实例完全位于不同的服务器上并为两台前端服务器提供服务,那么在我们需要查看主/从式事件之前它能达到多大?

最佳答案

Redis 的单个实例是一致的。许多实例之间存在一致性选项。 @antirez(Redis 开发人员)最近写了一篇博文,Redis data model and eventual consistency ,并推荐Twemproxy用于对 Redis 进行分片,这将使您在许多情况下保持一致。

我不了解 EhCache,因此无法评论 Redis 是否是合适的替代品。 Twemproxy 的一个潜在问题(移植到 .NET)是它似乎只能在 Linux 上运行。

单个 Redis 实例可以有多大?取决于你有多少内存。 它多快会变得这么大?取决于您的数据的外观。

也就是说,根据我的经验,Redis 非常有效地存储数据。我拥有的一个应用程序在 400 MB 的 RAM 中保存了 20 万用户的信息、2 万篇文章、对象之间的所有关系、每周排行榜、统计信息等(总共 33 万个键)。

Redis 易于使用且使用起来很有趣。尝试一下,看看它是否满足您的需求。如果您确实决定使用它并且可能有一天想要分片,请从一开始就分片您的数据。

关于redis - Redis是否支持强一致性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13681565/

相关文章:

Ubuntu 16.04 systemd redis 与 ulimit 的问题

sql-server - SQL复制: Access snapshot folder is denied (SQL Server 2008)

mysql - 自己做MySQL行复制的问题

java - Postgresql 9.3 上的双向复制

sockets - Lua连接redis服务器困难

python-3.x - 将变量从主文件导入到类变量

redis - 由于 Redis,我的计算机没有关闭

sql - ORA-30372 细粒度访问策略与物化 View 冲突

amazon-web-services - AWS DynamoDB 读后写一致性 - 它在理论上是如何工作的?

mysql - Percona MySQL Server 5.7.23 是否支持多源复制?