Ik heb een Delphi-applicatietje dat via FTP een aantal bestandjes van 60 bytes moet gaan downloaden van een FTP-server. Hiervoor gebruik ik de IndyFTP Client component waarbij de property Passive op True staat.
Ik creëer verder een StringList, waarin ik het resultaat van het listcommando op de FTPserver stockeer en ga die daarna aflopen om de bestanden met de Get procedure (al dan niet) te gaan downloaden.
Nu loopt dit prima, tot ik stresstest met een paar duizend bestanden op een FTP-servertje op het LAN.
De eerste twee- à driehonderd bestandjes vliegen binnen de paar seconden binnen, maar daarna moet ik wachten tot de server die twee- à driehonderd dataconnecties gesloten heeft die blijkbaar een paar minuten in TIME_WAIT status blijven staan.
Zie ik een FTP eigenschap over het hoofd? Is het te omzeilen dat er voor elk bestand een nieuwe data connection wordt gemaakt? Kan ik clientside met een bepaald commando in de OnAfterGet-event een close data connection forceren?
Alvast bedankt.
Ik creëer verder een StringList, waarin ik het resultaat van het listcommando op de FTPserver stockeer en ga die daarna aflopen om de bestanden met de Get procedure (al dan niet) te gaan downloaden.
Nu loopt dit prima, tot ik stresstest met een paar duizend bestanden op een FTP-servertje op het LAN.
De eerste twee- à driehonderd bestandjes vliegen binnen de paar seconden binnen, maar daarna moet ik wachten tot de server die twee- à driehonderd dataconnecties gesloten heeft die blijkbaar een paar minuten in TIME_WAIT status blijven staan.
Zie ik een FTP eigenschap over het hoofd? Is het te omzeilen dat er voor elk bestand een nieuwe data connection wordt gemaakt? Kan ik clientside met een bepaald commando in de OnAfterGet-event een close data connection forceren?
Alvast bedankt.
[ Voor 4% gewijzigd door Coltrui op 25-08-2006 15:21 ]