`
jh108020
  • 浏览: 110272 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

redis使用连接池报错解决

 
阅读更多
redis使用十几小时就一直报异常

redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool 
    at redis.clients.util.Pool.getResource(Pool.java:22) 
    at com.derbysoft.jredis.longkeytest.BorrowObject.run(BorrowObject.java:22) 
    at java.lang.Thread.run(Thread.java:662) 
Caused by: java.util.NoSuchElementException: Timeout waiting for idle object 
    at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1134) 
    at redis.clients.util.Pool.getResource(Pool.java:20) 

原因是没有回收资源导致
正确的做法是
ShardedJedis jedis = shardedJedisPool.getResource();
try {
	jedis.set(key, value);
} finally {
	shardedJedisPool.returnResource(jedis);
}




分享到:
评论

相关推荐

    解决Redis连接无法正常释放的问题

    前些天用多线程执行操作测试验证vanyar-redis连接池,应用是刚重启的状态,执行操作是,开启10个线程同时执行10000次操作。 如下: 执行操作完毕后发现控制台输出9个下面错误信息: 该错误大致意思是说:不能将...

    Redis缓存数据库在JAVA的使用说明-PPT版本

    - 使用连接池(如JedisPool)管理Redis连接,提高资源利用率和系统性能。 10. **Spring Data Redis集成** - Spring框架提供了Spring Data Redis模块,简化了Redis与Spring应用的集成,提供了Repository支持。 ...

    springboot 使用spring cache缓存 和 使用fastjson配置redis系列化

    接下来,配置文件`application.yml`中,我们可以使用Redis的默认配置,如果需要自定义配置,例如连接池、密码等,可以按需添加。 在应用中启用Spring Cache,我们需要创建一个配置类,该类使用`@EnableCaching`注解...

    spring Boot 报错RedisConnectionFailureException

    在调试过程中,启用Spring Boot的日志可以帮助你获取更详细的错误信息,例如增加`logging.level.org.springframework.data.redis=DEBUG`来查看更详细的Redis连接日志。 在项目`springboot-movie-master`中,你可能...

    jedis-4.3.1

    对于许多应用程序,最好使用连接池。实例化 Jedis 连接池: JedisPool pool = new JedisPool("localhost", 6379); 以下是如何在try-with-resources块中运行单个SET命令: try (Jedis jedis = pool.getResource()) {...

    redis:用于Golang的类型安全的Redis客户端

    具有支持的自动连接池。 。 。 和 。 。 。 。 。 不使用集群模式和Redis Sentinel 集群。 。 。 安装 go-redis支持2个最新的Go版本,并且需要具有支持的Go版本。 因此,请确保初始化Go模块: go mod ...

    TongWeb V7.0 服务配置指南

    创建Session管理器需要配置Redis连接信息、Session超时时间、Session保存方式等参数。 在TongWeb V7.0 中,TongWeb-MQ是消息队列系统,用于实现消息队列的存储和管理。TongWeb-MQ使用说明详细介绍了TongWeb-MQ的...

    Hyperf 协程框架 v2.1.10

    #3191 修复 json-rpc 客户端因对端服务重启,导致连接池中的连接全部失效,新的请求进来时,首次使用皆会报错的问题。 新增 #3170 为 hyperf/watcher 组件新增了更加友好的驱动器 FindNewerDriver,支持 Mac Linux...

    redis数据库支持库1.0版(libHiredis.fne)-易语言

    - 性能优化:合理设置连接池大小和命令批处理,以提升整体性能。 - 错误处理:务必处理可能出现的网络异常和解析错误,避免程序崩溃。 5. **实例应用** - 缓存管理:通过libHiredis.fne,易语言程序可以轻松地将...

    seckill:实现一个高并发秒杀系统,关键技术:SSM + Redis + MySQL

    数据库连接池 + DAO框架,MyBatis依赖。Servlet web。jsp 等。Spring。主要是 Spring 相关的依赖。全部依赖参考 pom.xml。4 业务实现4.1 数据库建表秒杀库存表秒杀成功明细表创建 seckill表时,end_time字段默认值为...

    开发过程遇到的问题.doc

    Shiro安全框架可以与Druid数据连接池集成,提供数据库访问的安全控制。在配置中指定Druid的数据源。 8. **MySQL分页查询**: 使用LIMIT和OFFSET实现分页,例如`SELECT * FROM table LIMIT start, length`。对于更...

    Laravel开发-laravel-twemproxy

    同时,根据实际负载调整 twemproxy 的配置,如连接池大小、超时设置等,以达到最佳性能。 总之,通过 Laravel 开发中的 twemproxy 集成,开发者可以充分利用缓存代理的优势,提高应用的响应速度和可扩展性。了解并...

    解决当MySQL数据库遇到Syn Flooding问题

    - 使用缓存层,如Redis,作为数据库前端,以缓冲突如其来的连接请求,降低对数据库的压力。 - 调整应用程序逻辑,避免短时间内的大量并发连接。 - 定期检查和更新网络安全策略,防止恶意攻击。 **总结** 面对MySQL...

    Java基础面试题169提以及答案.docx

    - **数据库**:SQL查询优化、事务、索引、连接池等。 - **中间件**:如消息队列(MQ)、缓存系统(如Redis)以及负载均衡等。 理解和掌握这些知识点,能够帮助Java工程师在面试中展现出扎实的基础和全面的技术视野...

    单点登录源码

    Druid | 数据库连接池 | [https://github.com/alibaba/druid](https://github.com/alibaba/druid) FluentValidator | 校验框架 | [https://github.com/neoremind/fluent-validator]...

Global site tag (gtag.js) - Google Analytics