Ich habe einen Stream-Listener zu einem Kaninchen mq hören und Einfügen/Update-Operationen basierend auf der Eingabe msg und beharrt es auf eine zugrunde liegende Db2-Datenbank. Die Datenbank hat eine wöchentliche Ausfallzeit von 6 Stunden. Wie plane ich, dass der Listener während dieses Zeitrahmens nicht ausgeführt wird, damit ich die Eingabe-Nachricht nicht verliere. Denken Sie daran, dass diese Nachricht von einem Upstream in der Kaninchenwarteschlange in einem asynchronen Kontext gesendet wird, so dass ich nach der Ausfallzeit nicht nach Upstream fragen kann.Planung Spring Stream Listener zu vermeiden Ausfallzeiten
@StreamListener(target = Sink.INPUT)
public void testListener(byte[] msg)
{
System.out.println(new String(msg));
try{
int count = zoneInsert(mapper.readValue(msg, OrderDTO.class));
System.out.println("inserted "+count+" row");
}catch(Exception e){
e.printStackTrace();
}
}