当我尝试扫描大量键时发生ClassCastException 使用opsForHash.scan()方法。我正在使用Jedis 2.6.2而且我面对这个问题 仅当要搜索的键数量很大(~100,000)时才会出错。 我已经在线阅读了这个问题的解决方案,其中大多数是 建议由于连接池而出现问题。
我在我的项目中使用Spring集成,并将use-pool属性设置为true(在JedisConnectionFactory中),即使它是默认选项。 由于春天应该用redis来管理连接,为什么我还有这个问题呢? 请建议。
这是我正在使用的Spring配置文件:
答案 0 :(得分:1)
我有同样的问题。在互联网上搜索了很多,我发现问题是由于连接池问题而发生的。正如您所提到的,您已在弹簧配置中将use-pool设置为true。 我通过将池设置为false来传递此问题。事实证明,我并不需要合并,之后问题就不会发生。 如果您不明确需要汇集,可以尝试此解决方案。 以下是代码段:
<bean id="jedisConnFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"
p:hostName="" p:port="6379" p:usePool="false" />
希望它有所帮助!