我们设置了 3 个 Redis 节点,其中 1 个指定为主节点(处理写入),另外 2 个是从节点并充当只读副本。 我们有 3 个哨兵也配置为自动故障转移。 客户端应用程序都是使用 Lettuce 库的基于 Java 的应用程序。
我们观察到两个副本的缓存命中率存在巨大差异。其中一个副本的缓存命中率约为 96%,而另一个副本的缓存命中率约为 77%。 在任何给定点,这两个节点都具有相同数量的键。
这有什么原因吗?我们如何调试这种行为?