在访问Jedis时,我有时会遇到以下异常。
例外1:
java.lang.ClassCastException: java.lang.Long cannot be cast to [B
at redis.clients.jedis.Connection.getBinaryBulkReply(Connection.java:204)
at redis.clients.jedis.Connection.getBulkReply(Connection.java:193)
at redis.clients.jedis.Jedis.get(Jedis.java:89)
例
我已经设置了一个独立的Redis服务器(V7.0.4)。我已经使用requirepass配置为它配置了密码。我使用Jedis (v4.2.0)作为客户端。
下面是创建与Redis连接的JedisPool的代码-
public JedisConnectionPool(final JedisPoolConfig poolConfig, final String host, int port, int timeout, final String password) {
this.pool = new JedisPool(poolConfig, host, port, timeout, pas
我正在尝试探索redis键空间通知及其在springboot中的实现,以便在ttl用例中使用redis键空间通知。当我使用10k-100 k键这样的更小的音量时,我试着测试它可以工作的比例,它的工作正常,没有任何问题。但是,当我将在特定时间到期的密钥增加到500 K时,我将得到以下错误。
org.springframework.data.redis.RedisConnectionFailureException: Unexpected end of stream.; nested exception is redis.clients.jedis.exceptions.JedisConnecti
我用以下命令开始我的redis docker容器:
docker run --privileged=true -p 6379:6379 --name TestRedis -d redis
当我试图在集群模式下从Spring Redis中使用它时,我得到了错误:
Caused by: redis.clients.jedis.exceptions.JedisDataException: ERR This instance has cluster support disabled
at redis.clients.jedis.Protocol.processError(Protocol.java:1
我得到一个连接异常(最后给出),尽管我做了以下操作:
在创建Jedis实例时,我将超时字段设置为1小时(60*60*1000)。我也尝试了0,这也不起作用。
当我在7分钟后查看日志时,我注意到了它,尽管我认为异常会发生得更早( 300秒)。为什么我一直拿着它?知道为什么吗?
Exception in thread "main" redis.clients.jedis.exceptions.JedisConnectionException: It seems like server has closed the connection.
at redis.clients.u
我正在尝试执行rpush操作,但遇到以下错误:
redis.clients.jedis.exceptions.JedisConnectionException: Unexpected end of stream.
at redis.clients.util.RedisInputStream.ensureFill(RedisInputStream.java:199) ~[jedis-2.9.0.jar:na]
at redis.clients.util.RedisInputStream.readByte(RedisInputStream.java:40) ~[jedis-2.9.
我需要在Java中使用Redis作为数据源,所以我决定使用以下代码:
public class RedisService {
private static final Jedis jedis = new Jedis("host",6400);;
public static Device getDevice(String key) {
// Do something use redis.
return null;
}
}
我以为服务器会自动初始化Jedis(Redis API for Java),这是使用Jedis的好方
现在,我在我的应用程序中出现了这样一个问题:
Caused by: redis.clients.jedis.exceptions.JedisDataException: NOGROUP No such key 'pydolphin:stream:article' or consumer group 'pydolphin:stream:group:article' in XREADGROUP with GROUP option
at redis.clients.jedis.Protocol.processError(Protocol.java:135) ~
我在我的web应用中使用jdish.publish,在我的桌面应用中使用jedis.subscribe。因此两者都是独立的应用程序。
我有一个pubsub类
public class RedisNewPostListener extends JedisPubSub {
private final Jedis jedis;
private final AppInstances appInstances;
public RedisNewPostListener(AppInstances instances, Jedis jedis) {
this.jed
为了避免在我的redis通道中出现重复,我通过在Redis中设置索引来检查消息是否已经存在。下面是我的实现。然而,它给出了一个例外。
redis.clients.jedis.exceptions.JedisDataException: Please close pipeline or multi block before calling this method.
at redis.clients.jedis.Response.get(Response.java:23)
下面是实现。
Jedis jedis = pool.getResource();
我有一个3节点EC2 redis集群设置,并且我尝试用管道模式向redis添加记录(使用sadd)。
在3个节点中添加大约70/82和81个键后,我得到以下错误:
Exception in thread "main" redis.clients.jedis.exceptions.JedisMovedDataException: MOVED 1539 172.31.59.103:6379
at redis.clients.jedis.Protocol.processError(Protocol.java:93)
at redis.clients.jedis.Protoco
因此,我有一个代码,它使用Jedis客户端从Redis获取值。但在同一时间,Redis处于最大的连接状态,这些异常被抛出:
org.springframework.data.redis.RedisConnectionFailureException
Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool
at org.springframework.dat
我们使用lua脚本在更新我们的DB时执行批量删除数据。Jedis使用管道执行lua脚本。
local result = redis.call('lrange',key,0,12470)
for i,k in ipairs(result) do
redis.call('del',k)
redis.call('ltrim',key,1,k)
end
try (Jedis jedis = jedisPool.getResource()) {
Pipeline pipeline = jedis.pipelined();
我正在尝试使用Azure站点上提供的示例代码从Azure外部连接到Azure Redis缓存服务
boolean useSsl = false;
/* In this line, replace <name> with your cache name: */
JedisShardInfo shardInfo = new JedisShardInfo("HOST_NAME", 6379, useSsl);
shardInfo.setPassword(ACCESS_KEY);
在使用Jedis客户端时,我试图向Redis服务器添加一些数据,并得到以下错误:Unexpected end of stream错误。发生这种情况的原因是什么?
redis.clients.jedis.exceptions.JedisConnectionException:意料之外的流结束。
redis.clients.util.RedisInputStream.ensureFill(RedisInputStream.java:198)上的信息
redis.clients.util.RedisInputStream.readByte(RedisInputStream.java:40)上的信息
我正在使用Johm缓存和检索Redis数据库中的一些数据。但是,当我想使用JOhm.getAll(MT.class)拉取对象数据时;例如,我得到了一个异常
redis.clients.jedis.exceptions.JedisConnectionException: java.net.SocketTimeoutException: Read timed out
at redis.clients.jedis.Protocol.process(Protocol.java:85)
at redis.clients.jedis.Protocol.read(Pro
我正在学习jedis,我不能准确地找出这段代码的问题所在。任何人都可以帮助在语句tx.exec()中发生me.The异常吗?
public class JedisFactory {
public static void main (String [] args){
JedisPool pool = new JedisPool(new JedisPoolConfig(), "127.0.0.1", 6379);
Jedis jedis = pool.getResource();
Pipeline pipeline = jedis.pipelin
我的redis服务器在VMWare服务器上,我可以通过cli从telnet连接到redis服务器:
C:\Users\Administrator>redis-cli -h 192.168.0.243 -p 6379 192.168.0.243:6379> get name (error) NOAUTH Authentication required. 192.168.0.243:6379> auth root OK 192.168.0.243:6379> get name "pool zzzzqqqqq" 192.168.0.243:6379>
在
我是redis的新手,我启动了关于这个的服务器。而且起作用了。然后使用java编写代码连接redis,然后就可以了,如下所示:
Jedis jedis = new Jedis("localhost");
System.out.println("Connection to server sucessfully");
//store data in redis list
jedis.lpush("tutorial-list", "Redis");
jedis.lpush(
我正在使用jedis 2.8.0并得到以下异常:
Caused by: redis.clients.jedis.exceptions.JedisDataException: ERR Client sent AUTH, but no password is set
at redis.clients.jedis.Protocol.processError(Protocol.java:123)
at redis.clients.jedis.Protocol.process(Protocol.java:157)
at redis.clients.jedi