草庐IT

java - Redis/Jedis 无单点故障和自动故障转移

在一个简单的情况下,有3个服务器,1个主服务器和2个从服务器,没有分片。是否有一个经过验证的java和Jedis解决方案,它没有单点故障,并且会自动处理单个服务器发生故障,无论是主服务器还是从服务器(自动故障转移)。例如失败后提升主人并重置,不会丢失任何数据。在我看来,这应该是一个已解决的问题,但我找不到任何代码,只是对可能的实现方式的高级描述。谁实际负责这方面的工作并在生产中工作? 最佳答案 您可能想尝试一下RedisSentinel实现这一目标:RedisSentinelisasystemdesignedtohelpmanagi

java - Redis/Jedis 无单点故障和自动故障转移

在一个简单的情况下,有3个服务器,1个主服务器和2个从服务器,没有分片。是否有一个经过验证的java和Jedis解决方案,它没有单点故障,并且会自动处理单个服务器发生故障,无论是主服务器还是从服务器(自动故障转移)。例如失败后提升主人并重置,不会丢失任何数据。在我看来,这应该是一个已解决的问题,但我找不到任何代码,只是对可能的实现方式的高级描述。谁实际负责这方面的工作并在生产中工作? 最佳答案 您可能想尝试一下RedisSentinel实现这一目标:RedisSentinelisasystemdesignedtohelpmanagi

REDIS/jedis 更新排序集中所有成员的分数

在REDIS中递增中型排序集的最佳方法是什么?(最好使用java驱动程序JEDIS)Set中有大约100-200K条记录。我想将他们的分数增加一个给定的双数。之前1a2b3c之后(增加1)2a3b4c我想到的唯一可能的解决方案是:通过网络获取所有排序集(比如A)内容。(REDIS->应用程序)。创建一个管道,在循环中使用ZADD或ZINCRBY在同一个setA中递增它们然后执行流水线。还有其他/更好的方法吗?更新下面是如何在REDIS中使用EVAL和Lua执行for循环来递增所有排序集成员。localmembers=redis.call('zrange',KEYS[1],0,-1)fo

REDIS/jedis 更新排序集中所有成员的分数

在REDIS中递增中型排序集的最佳方法是什么?(最好使用java驱动程序JEDIS)Set中有大约100-200K条记录。我想将他们的分数增加一个给定的双数。之前1a2b3c之后(增加1)2a3b4c我想到的唯一可能的解决方案是:通过网络获取所有排序集(比如A)内容。(REDIS->应用程序)。创建一个管道,在循环中使用ZADD或ZINCRBY在同一个setA中递增它们然后执行流水线。还有其他/更好的方法吗?更新下面是如何在REDIS中使用EVAL和Lua执行for循环来递增所有排序集成员。localmembers=redis.call('zrange',KEYS[1],0,-1)fo

spring - Jedis,无法获得 Jedis 连接 : cannot get resource from pool

我在几个线程中看到了答案,但没有解决我的问题,因为我的问题偶尔会出现,如果有人有任何想法,请问这个问题。我使用的是jedis2.8.0版本,SpringDataredis1.7.5版本。和用于缓存应用程序的Redis服务器版本2.8.4。我有多个缓存保存在redis中,获取请求是从redis完成的。我正在使用springdataredisAPI来保存和获取数据。所有保存和获取工作正常,但偶尔会出现以下异常:CannotgetJedisconnection;nestedexceptionisredis.clients.jedis.exceptions.JedisConnectionExc

spring - Jedis,无法获得 Jedis 连接 : cannot get resource from pool

我在几个线程中看到了答案,但没有解决我的问题,因为我的问题偶尔会出现,如果有人有任何想法,请问这个问题。我使用的是jedis2.8.0版本,SpringDataredis1.7.5版本。和用于缓存应用程序的Redis服务器版本2.8.4。我有多个缓存保存在redis中,获取请求是从redis完成的。我正在使用springdataredisAPI来保存和获取数据。所有保存和获取工作正常,但偶尔会出现以下异常:CannotgetJedisconnection;nestedexceptionisredis.clients.jedis.exceptions.JedisConnectionExc

java - Jedis - 何时使用 returnBrokenResource()

什么时候我们应该使用这个方法。关于JedisConnectionException、JedisDataException或任何JedisException。据我所知,Jedis没有好的API文档。try{Jedisjedis=JedisFactory.getInstance();Pipelinepipe=jedis.pipelined();Response>idWithScore=pipe.zrangeWithScores(cachekey,from,to);**//somestatementwhichmaycausesomeotherexception**Responseval=pi

java - Jedis - 何时使用 returnBrokenResource()

什么时候我们应该使用这个方法。关于JedisConnectionException、JedisDataException或任何JedisException。据我所知,Jedis没有好的API文档。try{Jedisjedis=JedisFactory.getInstance();Pipelinepipe=jedis.pipelined();Response>idWithScore=pipe.zrangeWithScores(cachekey,from,to);**//somestatementwhichmaycausesomeotherexception**Responseval=pi

redis - 为什么在将 Jedis 与 Spring Data 结合使用时,数据会以奇怪的键存储在 Redis 中?

我将SpringDataRedis与Jedis结合使用。我正在尝试使用键vc:${list_id}存储散列。我能够成功插入到redis。但是,当我使用redis-cli检查key时,我没有看到keyvc:501381。相反,我看到了\xac\xed\x00\x05t\x00\tvc:501381。为什么会发生这种情况,我该如何更改? 最佳答案 好的,用谷歌搜索了一会儿,在http://java.dzone.com/articles/spring-data-redis找到了帮助.它的发生是因为Java序列化。redisTemplate

redis - 为什么在将 Jedis 与 Spring Data 结合使用时,数据会以奇怪的键存储在 Redis 中?

我将SpringDataRedis与Jedis结合使用。我正在尝试使用键vc:${list_id}存储散列。我能够成功插入到redis。但是,当我使用redis-cli检查key时,我没有看到keyvc:501381。相反,我看到了\xac\xed\x00\x05t\x00\tvc:501381。为什么会发生这种情况,我该如何更改? 最佳答案 好的,用谷歌搜索了一会儿,在http://java.dzone.com/articles/spring-data-redis找到了帮助.它的发生是因为Java序列化。redisTemplate