Ett Broken pipe
meddelande betyder att den andra änden stängde anslutningen, möjligen på grund av en felaktig ordning av mottagna paket, eller för att tillståndet mellan klient och server inte är synkroniserat eller något liknande. Kanske finns det en brandvägg mellan din applikation och servern som dödar ihållande anslutningar? Eller kanske det inte hände något på röret (anslutningen) på ett tag och servern stängde det? I alla fall, om du använder en anslutningspoolningsmekanism (du borde!)
, bör det vara möjligt att delegera hanteringen av sådana situationer till den.
Eller, om du tänker alltid använda MySQL, kan du försöka lägga till failOverReadOnly=false&maxReconnects=10&autoReconnect=true
till din anslutningssträng. Detta är specifikt för MySQL JDBC-drivrutinen, så jag skulle verkligen råda dig att konfigurera din anslutningspoolningsmekanism för att testa anslutningarna innan du levererar dem till din applikation.