Webservice mag viele Aufrufe nicht



  • Ich habe einen Webservice geschrieben an dem man Dateien stückchenweise als bytearray senden kann,damit er sie speichert.Bei kleineren Datieien habe ich keine Probleme,aber wenn ich versuche eine grössere Datei zusenden kriege ich folgende Fehlermeldung:

    Normalerweise darf jede Socketadresse (Protokoll, Netzwerkadresse oder Anschluss) nur jeweils einmal verwendet werden 127.0.0.1:2151

    Die Meldung tritt auch auf wenn ich WebRequest anstatt das automatisch erstellten Clients benutze.

    Gib es eine Einstellung die ich ändern muss damit es läuft?



  • Bei einem Webservice liegt das nicht am Webservice sondern am Webserver.
    Wie ich sehe hast Du keine richtigen laufen sonst wäre der Port anders.



  • Mit den IIS habe ich jetzt eine 2 mb senden können ,aber die 30mb Datei bricht bei 12mb mit der selben Fehlermeldung ab.



  • Schau dir doch mal diesen Artikel an - vielleicht bringt er dich weiter ...



  • Bring er nicht.Es ist nicht die Grösse des Uploads die ist bei jeden Aufruf 500 byte,sondern die Anzahl der Aufrufe die nötig sind um die Daten rüberzuschaufeln.


  • Administrator

    Webservice schrieb:

    Bring er nicht.Es ist nicht die Grösse des Uploads die ist bei jeden Aufruf 500 byte,sondern die Anzahl der Aufrufe die nötig sind um die Daten rüberzuschaufeln.

    Also mal eine ganz dumme Idee:
    Könnte es sein, dass du ein Socket nicht richtig schliesst und den gleichen Port dann bei einem anderen Socket wiederverwenden willst? Denn genau darauf deutet meiner Meinung nach die Fehlermeldung. Du willst mit zwei Sockets den Port 2151 abhören, was nicht geht.

    Grüssli



  • Ohne einen Code-Schnipsel wird man lange raten können. Oder dich mit lesenswerten Links versorgen. Vielleicht hilft's ja ...



  • Könnte es sein dass dein Web-Service die Verbindung offen lässt, und du vergessen hast irgendwas zu disposen? Dann hast du irgendwann so viele Verbindungen dass WCF verweigert (throtteling).
    Bzw. irgendwann ist auch die Grenze erreicht wo Windows einfach keine ephemeral Ports mehr hat.


Anmelden zum Antworten