Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   C# Fehler beim Web service aufruf (https://www.delphipraxis.net/94440-fehler-beim-web-service-aufruf.html)

mumu 21. Jun 2007 13:35


Fehler beim Web service aufruf
 
Ich rufe einen Webservice auf, der mir eine Response SOAP message in der einer bestimmten Größe zuschickt.

Sobald ich einen asynchronen Aufruf mit einer Nachricht ab der Größe von ca. 16 MB durchführe erhalte ich folgende Meldung:
System.Net.Sockets.SocketException: An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full

Wenn ich einen synchronen Aufruf mache, gibt es keine Probleme (erst wenn ich in den HTTP timeout komme). Und kleinere Nachrichten funktionieren auch ohne Probleme.

Ich hab auch mal den Netzwerktraffic mitgeloggt und habe festgestellt, (wenn ich das richtig verstehe) dass mein Client die TCP Verbindung abbricht.
mein client sendet einfach so ein TCP packet mit dem flag RST.

was kann ich da machen? hat jemand ne idee?

mumu 21. Jun 2007 16:05

Re: Fehler beim Web service aufruf
 
Was ich mir irgendwie vorstellen kann ist, dass bei einem synchronen Aufruf die daten direkt über den port auch gleich abgeholt werden, sobald nur ein teil da ist. bei einem asynchronen Aufruf wird hingegen gewartet bis die kompletten Daten (16 MB) am port angekommen sind und erst dann wird meine callback funktion aufgerufen, um die daten abzuholen. Die Daten die beim asynchronen Aufruf ankommen reiht Windows bis sie vollständig sind in eine Queue ein und genau diese Queue läuft voll.

hat jemand ne idee wie man die Größe dieser Queue ändern kann?

danke


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:19 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz