问题标签 [spring-data-redis]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1331 浏览

spring-data-redis - Spring-data-redis 缓存 - 如果我使用 CustomizeRedisCacheManager,即使数据被缓存,也会调用后端方法

我正在使用 Spring-data-redis 缓存(1.6.1),Jredis Client 2.7.3。我们要启用故障转移。如果redis服务器关闭,我希望应用程序继续工作

1)如果我使用 spring-data xml 配置,redis 缓存工作正常。它调用后端,缓存数据,然后在第二次调用时不调用后端。但是,如果服务器使用 xml 配置关闭并返回 null 以便应用程序继续工作,我不知道如何捕获 Redis 异常。没有足够的文档。(此解决方案不起作用)

2)我已经使用Java配置了redis缓存,在这种情况下,我能够捕获故障转移异常,但是Spring-data-redis继续调用后端数据库方法,即使redis缓存正在工作。所以它应该调用后端方法并缓存数据。第二次调用不应返回后端数据库。

所以它在所有请求上缓存和调用后端数据库方法。

我想知道是否有人遇到过这个问题。或者关于如何在后端 Redis 服务器关闭时故障转移 spring-data-redis 的任何想法。

我附上了示例代码。

这是 AppConfig.java

这是HelloWorldServica.java

WelcomeController.java

0 投票
2 回答
9207 浏览

spring - spring web ResponseEntity不能序列化

如果使用@Cacheable 返回值'ResponseEntity',我得到序列化错误。

演示:</p>

0 投票
1 回答
319 浏览

spring-cloud - 带有注释的 Spring 和 Redis 队列侦听器

Spring中有一种方法可以使用注释配置Redis队列侦听器吗?

我想要类似Spring Cloud for AWS的基于注释的 SQS 队列侦听器,但使用 Redis 作为队列。

查看文档我找不到任何适合我的东西。

这个特性已经在 Spring 中实现了,还是我需要自己实现?

0 投票
1 回答
6198 浏览

spring-boot - 指定与 spring-data-redis 一起使用的逻辑数据库

我正在使用spring-data-redis,spring-session和 Spring Boot 连接到我的 Redis 实例。但是,我不想spring-data-redis连接到 DB 0(这是默认设置),而是连接到另一个本地数据库(比如 DB 1)。这是我希望存储会话的地方。spring-data-redis 可以做到这一点吗?

0 投票
1 回答
13453 浏览

json - RedisTemplate 哈希值序列化器用于具有多种类型的嵌套对象

我正在尝试使用 Redis 为我的实体存储一些缓存数据,其中包含不同类型的字段,例如,

有更多字段,并且由于几个字段的更新频率比其他字段更频繁,我决定将其保存job为 Redis 中的 Hashmap,每个字段作为键。在这里嵌套对象jobDef并不重要,所以我使用Jackson2JsonRedisSerializeras hashValueSerializerforRedisTemplatejobDefobj 将被序列化为长 JSON 字符串,这在我的情况下完全没问题。

但我不知道如何有效地job从 Redis 反序列化整个对象。我设置为反序列化器的类型就像Jackson2JsonRedisSerializer(Map.class)但在反序列化字符串键和值时会抱怨。

那么这是一个无效的用法,RedisTemplate或者我应该如何为它配置我的序列化程序?

编辑:添加更多代码细节,

第二次编辑:

如果使用JdkSerializationRedisSerializeras HashValueSerializerRedisTemplate则反序列化工作正常,但是使用这个的缺点是存储在 Redis 中的值与使用时不同的人类可读字符串值Jackson2JsonRedisSerializer

0 投票
1 回答
11898 浏览

redis - 使用 spring-data-redis 1.7.0.M1 时如何配置 redis-cluster

我使用 spring-data-redis 版本 1.7.0.M1 和 jedis 版本 2.8.0 这是我的配置

并使用【redisTemplate.opsForValue().get("foo")】测试

抛出异常

使用 spring-data-redis 1.7.0.M1 时如何配置 redis-cluster?

0 投票
1 回答
8860 浏览

spring-boot - 如何在 Spring Boot 应用程序中创建第二个 RedisTemplate 实例

根据这个答案RedisTemplate不能支持多个序列化器的值。所以我想为不同的需求创建多个 RedisTemplates,特别是一个用于字符串操作和一个用于 JSON 序列化的对象,用于RedisCacheManager. 我正在使用 Spring Boot 并且电流RedisTemplate是自动装配的,我想知道声明第二个RedisTemplate实例共享同一个 Jedis 连接工厂但有自己的序列化程序的正确方法是什么?

在两个不同的组件中尝试过这样的事情,

组件 1 声明,

组件 2 声明,

在这种情况下,这两个模板实际上是相同的。追踪到 Spring 代码,发现组件 1 的模板被解析为 autoconfigured stringRedisTemplate

手动调用RedisTemplate' 构造函数然后它afterPropertiesSet()也不会工作,因为它抱怨找不到连接工厂。

我知道这个请求可能与在 Spring 应用程序中定义另一个 bean 没有太大区别,但不确定当前的 Spring-Data-Redis 集成对我来说最好的方法是什么。请帮忙,谢谢。

0 投票
3 回答
8179 浏览

java - Spring Redis Hash 操作 SCAN

我在做Spring Redis,我把钥匙当作

我想从List<>,

也不工作。请帮忙!!

0 投票
2 回答
2141 浏览

spring-session - 多个 Spring 会话可以由同一个 redis 实例支持吗?

我们有几个用 Java Spring 编写的 Web 应用程序,我们正在使用spring-data-redis@EnableRedisHttpSession. 我想知道春季会议的内部结构是什么。它会在创建新会话之前检查 redis 数据库中是否存在重复的会话密钥?

我查看了 spring 文档并进行了谷歌搜索,但无法得到明确的答案。

0 投票
0 回答
1640 浏览

jedis - 在管道中时无法使用 Jedis。请使用 Pipeline 或重置 jedis 状态

我在 spring data redis 中执行管道命令时遇到问题。我正在使用 StringRedisTemplate。spring-data-redis 1.6.1、spring boot 1.3.2 和 jedis 2.7.3 和 2.8.0。

编码:

执行 pExpire 时,它​​会在主题中出现异常。我尝试过参考指南中建议的不同口味:with

同样的结果。任何想法?谢谢