spring-data-redis 相关问题

Spring Data Redis是更大的Spring Data系列的一部分,可以从Spring应用程序轻松配置和访问Redis。它提供了与商店交互的低级和高级抽象,使用户免于基础设施问题。

Redis Envoy 代理

我尝试在此示例中将 Redis 设置为 Envoy 代理 https://github.com/envoyproxy/envoy/tree/main/examples/redis。问题是它不支持 Spr 中的一些命令,例如 HELLO 和 INFO...

回答 0 投票 0

如何使用 Spring Data Redis 2.0.4 和 java 8 连接到主服务器和副本

我们正在从redis缓存迁移到具有弹性缓存的redis。我们在 java8 上有两个应用程序。一个应用程序是带有 java 8 的 spring boot(2.0.0),另一个是带有 java 8 的 spring 应用程序。它们都需要共享...

回答 0 投票 0

LettuceConnectionFactory 默认为 localhost 连接,而不是 application.yml 中指定的主机

在尝试从 SpringBoot 应用程序连接到托管在 AWS 中的远程 Redis 实例时,RedisConnectionFactory 一直尝试连接到 localhost:6379,即使目标主机有...

回答 1 投票 0

GenericJackson2JsonRedisSerializer 无效的 UTF-8 起始字节 0xa0 错误

我在使用 GenericJackson2JsonRedisSerializer 时遇到异常。 引起:com.fasterxml.jackson.databind.JsonMappingException: 无效的 UTF-8 起始字节 0xa0 [来源:[B@5fe2e364;线...

回答 0 投票 0

RedisTemplate 获取带值操作的列表

是否可以使用 RedisTemplate 获取值操作取回对象列表? 目前我的代码如下所示: 公共类 RedisDao { 私有最终 RedisTemplate 是否可以使用 RedisTemplate 获取值操作取回对象列表? 目前我的代码是这样的: public class RedisDao { private final RedisTemplate<String, List<Object>> redisTemplate; public void saveCustomObjects(List<CustomObject> customObjects, key) { redisTemplate.opsForValue.set(key, Arrays.asList(customObjects.toArray())); } public List<CustomObject> getCustomObjects(String key) { return redisTemplate.opsForValue().get(key) //This returns an arrayList where the values are LinkedHashMap } } Redis模板配置: maven dependencies: spring-data-redis, lettuce-core .... redisTemplate.setKeySerializer(new StringRedisSerializer()) redisTemplate.setValueSerializer(new GenericJackson2JsonRedisSerializer()) ...

回答 0 投票 0

为什么 @Cacheable 在后续调用中返回不同的结果

我正在运行 Spring boot 版本 2.6.14 控制器 @PostMapping("/v1/books) 公共 GenericResponse getBooks(BookRequest 请求){ 返回新的通用响应<>(

回答 0 投票 0

Spring Cloud + Spring Redis 会话并发对我不起作用

我正在使用 Spring Cloud(Eureka Server、Cloud Gateway、Config Server)构建微服务。 使用 Spring Cloud 的主要思想是微服务之间的会话共享。身份验证服务和

回答 0 投票 0

Spring Redis 问题:Redis 缓存中的 GetAllCacheNames 不适用于 RedisCacheManager

嗨,下面是我的 redis 缓存配置,我正在尝试使用以下方法获取存储在 redis 服务器上的所有缓存名称: redisCacheManager.getCacheNames() 方法 但它没有给我 cacheName 我...

回答 1 投票 0

在集群连接中通过 jedis 连接 redis 时面临问题,该连接用于存储 OAuth2 生成的令牌

我是redis集群的新手。集群模式下的 Redis 服务器对我来说工作正常。现在我正在尝试使用 java spring 应用程序连接相同的内容,其中使用 ...

回答 0 投票 0

Redis:存储没有过期时间的键/值对

有人能解释一下如何在 Redis 中存储键/值对且没有过期时间限制吗? 我试图在 stackoverflow 和 google 上查找一些信息,但一无所获。 我正在使用 redisTempla...

回答 2 投票 0

Redis 从属缓存速率不匹配

我们设置了 3 个 Redis 节点,其中 1 个指定为主节点(处理写入),另外 2 个是从节点并充当只读副本。 我们有 3 个哨兵也配置为自动故障转移。 该...

回答 0 投票 0

Redis 连接中的 NOPERM 问题

@豆子 有趣的 redisConnectionFactory(): LettuceConnectionFactory { val redisConfiguration = RedisClusterConfiguration().apply { val (host, port, username, password) = redisPrope...

回答 1 投票 0

用 Spring Data Redis 匹配 Lua 的 cjson 错误序列化的对象

我遇到了一个问题,它似乎应该足够普遍,可以有一个标准的解决方案,但我仍然找不到一个。 Lua 无法区分空数组和空对象...

回答 1 投票 0

Redisson 有时会抛出 classCastException

我将 Redisson 客户端与 Spring boot 应用程序一起使用。 我还为 JPA 事务集成启用了 setEnableTransactionSupport(true) 和 transactionAware()。 @豆 公共 RedisTemplate 我将 Redisson 客户端与 Spring boot 应用程序一起使用。 我还为 JPA 事务集成启用了 setEnableTransactionSupport(true) 和 transactionAware()。 @Bean public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) { RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>(); redisTemplate.setKeySerializer(new StringRedisSerializer()); redisTemplate.setValueSerializer(new GenericJackson2JsonRedisSerializer()); redisTemplate.setHashKeySerializer(new StringRedisSerializer()); redisTemplate.setHashValueSerializer(new GenericJackson2JsonRedisSerializer()); redisTemplate.setConnectionFactory(redisConnectionFactory); redisTemplate.setEnableTransactionSupport(true); return redisTemplate; } @Primary @Bean public CacheManager redisCacheManager() { return RedisCacheManager.builder(redisConnectionFactory()) .cacheDefaults(redisCacheConfig()) .withInitialCacheConfigurations(cacheKeyMap()) .transactionAware() .build(); } 它通常看起来在@Transactional 方法中工作。 一旦事务被提交,缓存就会被放入。这是常见的情况。 但在某些情况下,我希望在没有redis事务的情况下执行缓存放置。 赞 @Transactional public void temp() { // It doesn't matter work after commit. redisTemplate.opsForValue().set("key2", "value2"); // It should return result before commit!! // but it's null long result = redisTemplate.opsForValue().increment("key1", "value1"); } 一般情况下,RedisTemplate 不是这样工作的。 也许,第一个 set 方法在连接处打开 redis 事务,第二个 increment 方法使用相同的连接。 或者,我选择了这个实现。 @Transactional public void temp() { redisTemplate.opsForValue().set("key2", "value2"); long result = redisTemplate.getConnectionFactory().getConnection().incrBy(combinedKey.getBytes(), delta); } 第二个 incrBy 方法使用了单独的连接。该方法不参与之前的redis事务。现在它按我的预期工作。结果被存储。 但是,RedissonConnection 经常抛出异常。 java.lang.ClassCastException: class java.lang.String cannot be cast to class java.lang.Long (java.lang.String and java.lang.Long are in module java.base of loader 'bootstrap') 在 org.redisson.spring.data.connection.RedissonConnection.incrBy(RedissonConnection.java:583) 也许问题出在这段代码上。 public Long incrBy(byte[] key, long value) { return (Long)this.write(key, StringCodec.INSTANCE, RedisCommands.INCRBY, key, value); } 仅当缓存过去不存在时才会间歇性地(并非总是)发生异常。 我希望 delta 值的序列在正常情况下是基于 0 设置的,因此它应该能够正常投射。 有什么问题吗? 虽然RedissonConnection出现了异常,但是确认在缓存中设置的值是正常的。 只是在类型转换结果值的过程中发生了异常。

回答 0 投票 0

大型应用的Spring Boot Redis示例

我正在寻找可以提供以下功能的 spring boot redis 示例。 在互联网上查看时,我可以看到有很多使用注释、存储库的示例。 我的要求是

回答 0 投票 0

无法在 Redis 中存储和检索 Spring HATEOAS EntityModel

我有一个用例,我们试图从 Redis 缓存中存储和检索内容。我们正在使用 spring-starter-cache 来利用底层的 redis 缓存存储。 @豆 公开

回答 0 投票 0

redis 数据库宕机时的 Lettuce 行为

我们在基于 redis 的 api(spring boot)中使用 lettuce。我们是否需要在我们的 api 中实现断路器以防 redis 数据库出现故障或 lettuce 连接池(使用默认连接

回答 0 投票 0

jackson 将地图转换为对象列表

我有下面的邪恶实体 @文档 @盖特 @二传手 @ToString @AllArgsConstructor @NoArgsConstructor @Builder(toBuilder = true) @JsonInclude(JsonInclude.Include.NON_EMPTY) 公开课 Sinis...

回答 0 投票 0

为什么spring-data-redis的版本变成了2.1.21.RELEASE而不是预期的2.1.4.RELEASE?

为什么我在spring-data的pom.xml文件中修改spring-data-redis的版本后,spring-data-redis的版本变成了2.1.21.RELEASE,而不是预期的2.1.4.RELEASE版本-红色...

回答 1 投票 0

如何使用 RedisAtomicInteger 从 Redis 键列表中找到最小数字,然后使用 RedisAtomicInteger 递增它

如何使用 RedisAtomicInteger 从 Redis 键列表中找到最小数量,然后使用 RedisAtomicInteger 递增它 我正在尝试找到 Balls 的最小计数(我的 redis Key 其中...

回答 0 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.