Ich habe eine Klasse, die eine RichFlatmapFunction
in meinem Flink-Stream-Job erweitert. Ich erstelle eine Jedis
Instanz in der open()
Methode und schließe sie (jedis.close())
in der close()
Methode, so dass alle Datensätze, die die Transformation durchlaufen, die gleiche Jedis
Instanz verwenden. Dieser Ansatz hat mir vorher keine Verbindungsfehler gegeben. Aber in einem letzten Job läuft, habe ich den Fehler,Redis Verbindung zurückgesetzt in Flink
"redis.clients.jedis.exceptions.JedisConnectionException: java.net.SocketException: Anschluss Reset".
Könnte das sein, weil ich die gleiche Jedis-Instanz (die offen bleibt) für alle Datensätze verwenden? Ich habe kein Zeitlimit beim Erstellen der Instanz festgelegt. Das Timeout ist also auch der Standardwert.
Kann ich diesen Fehler vermeiden, wenn ich JedisPool verwende, um Jedis-Instanzen für jeden Datensatz abzurufen und zu schließen?
Bitte upvote die Antwort, wenn es hilft –