首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Spring RedisTemplate:在8次调用之后,方法键挂断

Spring RedisTemplate:在8次调用之后,方法键挂断
EN

Stack Overflow用户
提问于 2016-04-14 12:31:06
回答 1查看 2.7K关注 0票数 5

我使用Spring RedisTemplate (Spring-Data-redis1.7.1)与Redis进行通信。我需要通过regexp获取并删除键(例如:“context:user1 1:*”)。我使用的方法是“RedisTemplate.keys(.)”用于获取键数组

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

但是在8-9迭代调用restTemplates.keys(.)停止执行我的java服务。方法调用不会从框架中返回。我的服务被挂断了。而且每次都会发生这种事。解决办法只是重新启动我的服务。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-15 08:24:08

假设您使用的是Jedis和池,则会遇到底层连接池的耗尽。

每次对redisTemplate.getConnectionFactory().getConnection()的调用都会从连接池分配一个新连接。你打电话给connection.close()吗?否则,泳池就会筋疲力尽。池开始阻塞您的请求(希望另一个线程返回一个连接,以便它可以被请求连接的线程使用)。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36623208

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档