System.Net.WebException: Die Anfrage wurde abgebrochen: die Anfrage wurde abgebrochen
Ich habe einen WCF-service, wurde mir dieser Fehler unter Last-Bedingungen (und ich kann nicht scheinen, um erstellen Sie die Fehler sonst). Wir haben versucht einen Weg zu finden, um es für etwa eine Woche jetzt mit kein Glück..
Die Fehler, die ich sehe, hat zwei Teile, um es,
System.ServiceModel.CommunicationException:
Ein Fehler: (Die Anfrage wurde abgebrochen:
die Anforderung wurde abgebrochen.) aufgetreten
bei der übermittlung von Daten über das http
Kanal.
und:
System.Net.WebException: Die Anfrage
wurde abgebrochen: die Anfrage wurde
abgebrochen.
Ich habe gesehen, viele Leute schlagen zu deaktivieren, arbeiten mit keep alive durch überladen eine Methode, in der Reference.cs
- Datei und Einstellung KeepAlive = false
jedoch unserer client-Seite ist mit einem service-reference (zusätzlich zur web-Referenz), und diese option existiert nicht mehr.
Andere Möglichkeit, die ich gesehen habe, war hinzufügen, um eine benutzerdefinierte Bindung an den Dienst anstelle der BasicHttpBinding
wir jetzt verwenden, aber das wäre die Mühe rückwärts Unterstützung der webservice für diejenigen, die wurden mit einem webReference (seit CustomBinding
ist nicht SOAP-fähigen).
Hat jemand befasst mit diesem Fehler vor? Gibt es eine Möglichkeit zu deaktivieren, halten Sie lebendig in WCF, ohne die server-Seite? Ist es etwas anderes, das lebendig zu halten, die bekannt ist, um diesen Fehler verursachen?
InformationsquelleAutor der Frage Audzzy | 2010-10-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich glaube nicht, dass die HTTP-keep-alive ist dafür verantwortlich. WCF sollte in der Lage sein, um diese zu bewältigen, indem Sie sich damit die HTTP-persistente Verbindung ist, die gemeinsam von Anfragen und wenn es läuft (es läuft nach 100s der Inaktivität) WCF schafft neue, ohne zu brennen jede Ausnahme. Wenn die Verbindung abgebrochen während der übermittlung dann erwarte ich, dass es werden einige andere problem.
Können Sie diese benutzerdefinierte Bindung als äquivalent zu "BasicHttpBinding", ohne HTTP KeepAlive:
InformationsquelleAutor der Antwort Ladislav Mrnka
Ich hatte dieses problem beim upload von großen Dateien. Ich hatte dieses add im web.config des web-services
InformationsquelleAutor der Antwort nuander
Ich hatte genau dasselbe problem.
In meinem Fall war ich der Ausführung von Anfragen Asynchron. Ich schickte ein paar hundert Anfragen an den "server" von meinem client. Ich bin/war mit basicHttpBinding. Und in meinem app.config-Einstellung die Eigenschaft "opentimeout" wurde auf 60 Sekunden oder eine minute. Einmal habe ich eingestellt, dass eine größere Anzahl wie 10 Minuten, das problem ist Weg.
So zum Beispiel änderte ich alle diese Werte in meiner app.config-Datei:
bis 10 Minuten.
InformationsquelleAutor der Antwort C Johnson