Ho un codice abbastanza semplice che carica una foto o un video su un endpoint (usando HTTP PUT o POST). Ogni tanto vedo connessioni chiuse eccezioni generate, e in realtà la foto/video è stata caricata correttamente, chiama GetResponse dove si verifica l'eccezione.Perché il blocco GetResponse di HttpWebRequest è così lungo?
Una cosa che ho notato è che GetResponse può impiegare molto tempo per elaborare. Spesso più lungo del tempo di caricamento effettivo della foto sul server. Il mio codice scrive sul server web usando RequestStream.Write.
Ho eseguito un piccolo test e caricato sul server circa 40 foto/video di dimensioni variabili da 1 MB a 85 MB e il tempo di ritorno di GetResponse era compreso tra 3 e 40 secondi.
La mia domanda è, è normale? È solo questione di quanto tempo impiegherò il server per il quale sto caricando questi file per elaborare la mia richiesta e rispondere? Guardando le tracce HTTP di Fidder sembra essere il caso.
FYI, i miei arrivi sono HTTP 1.0, valori di timeout impostati Infinite (sia Timeout e ReadWriteTimeout)
Omar: Se si fa clic su una sessione di Fiddler e scegli "Proprietà", è possibile visualizzare la collezione Timer per quella sessione.Due valori interessanti sono "ServerGotRequest" e "ServerBeginResponse". Qual è il delta tra quelli? – EricLaw