我使用的是Spring2.1.1和Redis4.0.1。我已经配置了两台节点计算机,一台具有IP:192.168.20.40
主配置,另一台具有IP:192.168.20.55
从配置。我正在两个系统上使用jedis(不使用spring-jedis)运行Springboot应用程序,出现了不同的情况-
@Bean
public JedisSentinelPool jedisSentinelPool() {
Set<String> sentinels=new HashSet<>();
sentinels.add("192.168.20.40:26379");
sentinels.add("192.168.20.55:26379");
JedisSentinelPool jedisSentinelPool=new JedisSentinelPool("mymaster", sentinels);
return jedisSentinelPool;
}
>
当在另一台服务器(192.168.20.33)上运行应用程序时,redis服务器托管在“IP:192.168.20.40”和“IP:192.168.20.55”上,那么我的应用程序无法从sentinel池中获取jedis对象-
public String addToCache(@PathVariable("cacheName") String cacheName, HttpEntity<String> httpEntity, @PathVariable("key") String key) {
try (Jedis jedis = jedisPool.getResource();) {
long dataToEnter = jedis.hset(cacheName.getBytes(), key.getBytes(), httpEntity.getBody().getBytes());
if (dataToEnter == 0)
log.info("data existed in cache {} get updated ",cacheName);
else
log.info("new data inserted in cache {}",cacheName);
} catch (Exception e) {
System.out.println(e);
}
return httpEntity.getBody();
}
任何投入都是值得赞赏的。
请检查redis配置文件(redis.conf)。默认情况下,它应该启用只读模式。您需要将只读模式更改为false。
我一直在读有关Redis sentinel用于故障转移的文章。我计划有1主+1从,如果主倒下超过1分钟,把从变成主。我知道这在哨兵身上是百分之百可能的。 null 与1个哨兵相比,多个哨兵有什么好处?我的应用程序一次只能连接到1个哨兵,即使有2个哨兵,如果其中一个在应用程序层中出现复杂的逻辑,我的应用程序也不能在其中任何一个之间旋转或切换。
https://github.com/kubernetes/examples/tree/master/staging/storage/redis 它在给定的图像中工作得很好,但当我们使用Redis官方图像时,哨兵无法在第一个豆荚中连接到Redis。 它显示以下错误: 无法连接到redis,地址-P:6379 如何创建带有Redis官方图像的集群?
我试图有1个redis大师与2个redis复制品绑在一个3法定人数哨兵在Kubernetes。我对Kubernetes很陌生。 我最初的计划是让主控器在一个吊舱上运行,并绑定到一个Kubernetes SVC,而两个副本在自己的吊舱上运行,并绑定到另一个Kubernetes SVC。最后,3个哨兵吊舱将被绑在他们自己的SVC上。副本将被绑定到主SVC(因为没有SVC,ip将会改变)。sentine
在配置包中配置Jedis和Redis后。我用bean注释创建了jedisConnectionFactory和redisTemplate。但是应用程序无法运行“错误:创建名为“redisConnectionFactory”的bean。我需要做什么?
我很好奇当计算redis故障转移的多数时,是否考虑到了死掉的(不可到达的)哨兵进程。例如,如果我在节点A有三个哨兵+Redis Master,在节点B有三个哨兵+Redis Slave,如果节点A完全脱机,Redis Slave B会升为Master吗?多数票(N/2+1)将意味着4个哨兵同意,但由于节点A中的三个哨兵已经死亡,他们是否算作N的一部分?
当主人倒下的时候,它不应该被降级为奴隶吗?有了这一点,当它再次升起时,它将立即成为奴隶。我知道(自从Redis2.8?)配置重写功能使得Redis实例关闭时不能修改配置。 在一段时间内有两个主服务器对我来说是一个问题,因为在这么短的时间内,HaProxy不是向一个主服务器Redis发送请求,而是在这两个主服务器之间进行负载平衡。 有没有办法把失败的主人立即降级为奴隶?