Ik krijg “java.io.IOException: een bestaande verbinding is geforceerd gesloten door de externe host”

Ik doe een rustoproep naar IBM Cloud BPM. Soms werken oproepen prima. Maar soms geeft het de volgende foutmelding.

java.io.IOException: An existing connection was forcibly closed by the remote host.
java.io.IOException: An existing connection was forcibly closed by the remote host
    at sun.nio.ch.SocketDispatcher.read0(Native Method)
    at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:43)
    at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223)

Kan iemand me helpen hoe ik dit probleem kan oplossen.

Alle hulp wordt zeer op prijs gesteld.


Antwoord 1, autoriteit 100%

Dergelijk gedrag kan worden verklaard als de HTTP-client die u gebruikt permanente verbindingennaar de server, en de server beëindigt ze af en toe.

Normaal gesproken wordt de verbinding met een HTTP-server na elke reactie verbroken. Met HTTP “keep-alive” houd je de onderliggende TCP-verbinding open totdat aan bepaalde criteria is voldaan. Wat die voorwaarden zijn, hangt af van de server, die vrij is om de verbinding te sluiten na een willekeurige time-out of aantal verzoeken (zolang het antwoord op het huidige verzoek retourneert).

Als de server zo’n verbinding sluit, heropent de client deze meestal weer, en afhankelijk van de implementatie kan er een uitzondering optreden of een waarschuwing worden afgedrukt.

Bijvoorbeeld Vert.xHttpClient(die standaard permanente verbindingen opent) gooit ook…

java.io.IOException: An existing connection was forcibly closed by the remote host

… wanneer de server ze beëindigt.


Antwoord 2

Ik had deze fout bij het consumeren van mijn API van een externe pc, maar bij het bellen van dezelfde pc werkte het prima.

Om aan te melden, ging ik naar Configuratiescherm
Klik met de rechtermuisknop Java Icon
Ga naar geavanceerd tab

Controleer vervolgens Inschakelen van de beperkte omgeving van het besturingssysteem
Toepassen en opslaan

Dit heeft mijn probleem opgelost.


Antwoord 3

Ik heb hetzelfde probleem op Windows Server geconfronteerd.
Dan Ik heb het geheugengebruik van de server gecontroleerd en het neemt meer geheugen, zodat mijn aanvraag niet wordt uitgevoerd.
Ik heb een aantal gebruikersprofiel van

Taakbeheer – & GT; Gebruikers Tab – & GT; Klik met de rechtermuisknop en volg

Deze oplossing werkte voor mij.

Other episodes