flink中的redis连接重置

bvuwiixz  于 2021-06-25  发布在  Flink
关注(0)|答案(1)|浏览(495)

我有一个类扩展了 RichFlatmapFunction 在我的工作中。我创造了一个 Jedis 中的示例 open() 方法并关闭它 (jedis.close())close() 方法,以便通过转换的所有记录使用相同的 Jedis 示例。这种方法以前没有给我任何连接错误。但在最近的一次工作中,我犯了一个错误,
“redis.clients.jedis.exceptions.jedisconnectionexception:java.net.socketexception:connection reset”。
这可能是因为我对所有记录都使用了相同的绝地示例(它仍然是开放的)?我在创建示例时没有设置任何超时。所以超时也是默认值。
如果我使用jedispool来检索和关闭每条记录的绝地示例,我能避免这个错误吗?

hgc7kmma

hgc7kmma1#

当服务器和客户端之间的连接在网络级别中断时,即任何网络丢失、防火墙或应用程序崩溃或计划关闭时,就会发生连接重置
还有一种可能是由于空闲超时而有意关闭。
现在谈到使用jedispool,使用连接池是多线程环境中的最佳实践,因为重用连接是有效的。因此,请尽量使用它们与适当的配置

相关问题