Et Broken pipe
besked betyder, at den anden ende lukkede forbindelsen, muligvis på grund af en forkert rækkefølge af modtagne pakker, eller fordi tilstanden mellem klient og server ikke er synkroniseret eller sådan noget. Måske er der en firewall mellem din applikation og serveren, der dræber vedvarende forbindelser? Eller måske har der ikke været noget på røret (forbindelsen) i nogen tid, og serveren lukkede det? Under alle omstændigheder, hvis du bruger en forbindelsespoolingmekanisme (du burde!)
, bør det være muligt at uddelegere håndteringen af sådanne situationer til den.
Eller, hvis du har til hensigt altid at bruge MySQL, kan du prøve at tilføje failOverReadOnly=false&maxReconnects=10&autoReconnect=true
til din forbindelsesstreng. Dette er specifikt for MySQL JDBC-driveren, så jeg vil virkelig råde dig til at konfigurere din forbindelsespoolingmekanisme til at teste forbindelserne, før du leverer dem til din applikation.