starter jedisconnectionfactory example data cache java spring redis

java - jedisconnectionfactory - spring-boot-starter-data-redis



Spring RedisTemplate: después de 8 llamadas, las teclas de método cuelgan (1)

Suponiendo que está utilizando Jedis con la agrupación, se encontrará con un agotamiento del grupo de conexiones subyacente.

Cada llamada a redisTemplate.getConnectionFactory().getConnection() asigna una nueva conexión desde el grupo de conexiones. ¿Llamas a connection.close() ? Si no, el grupo se agota. Las agrupaciones comienzan a bloquear su solicitud (esperando que otra cadena devuelva una conexión para que pueda ser utilizada por la cadena que solicita una conexión).

Uso Spring RedisTemplate (spring-data-redis 1.7.1) para la comunicación con Redis. Necesito obtener y luego eliminar claves mediante regexp (por ejemplo, "contexto: usuario1: *"). Uso el método "RedisTemplate.keys (...)" para obtener una matriz de claves

{ String key = String.format("%s:%s:%s", context, userId,"*"); Set<byte[]> keys = redisTemplate.getConnectionFactory().getConnection().keys(key.getBytes()); logger.debug(String.format("test log")); }

Pero en la iteración 8-9, llame a restTemplates.keys (...) para la ejecución del servicio my java. La llamada del método no se devuelve desde el marco. Mi servicio se cuelga. También está sucediendo cada vez. La solución es solo reiniciar mi servicio.