spring redis使用

配置

集群模式配置
# Redis Cluster集群节点配置spring.redis.cluster.nodes[0]=ip:端口spring.redis.cluster.nodes[1]=ip:端口spring.redis.cluster.nodes[2]=ip:端口

# 获取失败最大重定向次数spring.redis.cluster.max-redirects=2
哨兵模式配置
# Redis 哨兵节点配置spring.redis.sentinel.nodes[0]=ip:端口spring.redis.sentinel.nodes[1]=ip:端口spring.redis.sentinel.nodes[2]=ip:端口# 密码
spring.redis.sentinel.password=
# 主节点名称
spring.redis.sentinel.master=
公共配置
# 连接池最大连接数默认值为8
spring.redis.lettuce.pool.max-active=20

# 连接池最大阻塞时间(使用负值表示没有限制)默认值为-1
spring.redis.lettuce.pool.max-wait=15s

# 连接池中最大空闲连接数默认值为8
spring.redis.lettuce.pool.max-idle=20

# 连接池中的最小空闲连接数,默认值为0
spring.redis.lettuce.pool.min-idle=1

# 空闲连接回收间隔时间
spring.redis.lettuce.pool.time-between-eviction-runs=10s

# 开启cluster自适应刷新周期60秒
spring.redis.lettuce.cluster.refresh.adaptive=true
spring.redis.lettuce.cluster.refresh.period=60000

# 连接超时时间(毫秒)
spring.redis.timeout=5000
#redis配置结束
spring.redis.block-when-exhausted=true#redis key添加前缀,以满足不同应用使用同一套redis集群的需求
spring.redis.key.prefix=
spring.redis.block-when-exhausted
spring.redis.block-when-exhausted 是SpringFramework中用于配置Redis连接池行为的属性之一。当Redis连接池中的连接数达到上限并且没有可用连接时,这个属性决定了获取连接的行为。如果设置为true,则会阻塞并等待,直到有连接空闲为止。这个模式被称为阻塞模式。如果设置为false,则会立即返回一个错误,表示无法获取到连接。这个模式被称为非阻塞模式。如果不配置该属性,默认情况下它是true,即阻塞模式。在高并发的情况下,如果设置为阻塞模式,会导致线程阻塞和等待,降低系统的吞吐量。但是,如果设置为非阻塞模式,可能会因为无法获取连接而导致请求失败。因此,需要根据具体的业务场景来选择合适的模式。如果在短时间内需要处理大量的并发请求,可以选择阻塞模式,以避免请求失败。如果需要高吞吐量并且可以接受请求失败的情况,则可以选择非阻塞模式。

maven依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
    <version>2.3.2.RELEASE</version>
</dependency>
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-pool2</artifactId>
    <version>2.8.0</version>
</dependency>

使用样例

https://github.com/fudai/spring-redis
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是一个使用Spring Data Redis的例子: 1. 添加依赖 在Maven项目中,需要添加以下依赖: ``` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> ``` 2. 配置Redis连接信息 在Spring Boot应用程序中,可以在application.properties或application.yml文件中配置Redis连接信息,例如: ``` spring.redis.host=localhost spring.redis.port=6379 spring.redis.password=123456 ``` 3. 编写Redis操作代码 在Spring Boot应用程序中,可以使用RedisTemplate或Spring Data Redis提供的Repository来操作Redis。以下是使用RedisTemplate操作Redis的例子: ``` @Service public class RedisService { @Autowired private RedisTemplate<String, String> redisTemplate; public void set(String key, String value) { redisTemplate.opsForValue().set(key, value); } public String get(String key) { return redisTemplate.opsForValue().get(key); } } ``` 在上面的代码中,我们通过注入RedisTemplate对象来操作Redis。set方法用于将key-value数据存储到Redis中,get方法用于从Redis中获取key对应的value值。 4. 测试 在Spring Boot应用程序中,可以编写单元测试代码来测试Redis操作是否正常。以下是一个简单的测试代码示例: ``` @RunWith(SpringRunner.class) @SpringBootTest public class RedisServiceTest { @Autowired private RedisService redisService; @Test public void testSetAndGet() { String key = "key1"; String value = "value1"; redisService.set(key, value); String result = redisService.get(key); Assert.assertEquals(value, result); } } ``` 在上面的代码中,我们通过注入RedisService对象来测试Redis操作是否正常。testSetAndGet方法用于测试set和get方法是否能够正常工作。 总之,Spring Data Redis是一个非常方便的模块,可以帮助开发人员快速集成RedisSpring Boot应用程序中,并提供了一组简单易用的API,使得开发人员可以方便地进行Redis操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值