boy1980hh
Goto Top

Anregung Für FTP-Library Gesucht

Hey und Hallo,

vielleicht kann mir ja hier jemand einen Tipp bzw. eine Anregung geben,
ich bin zumindest im Moment relativ ratlos.

Da es im Framework 1.0 bzw. 1.1 keine wirkliche Unterstützung für die
FTP-Kommunikation gab, hatte ich seinerzeit mit der Entwicklung einer
FTP-Library angefangen. Für ein neues Projekt (Synchronisation zwischen
Lokalem/ Remote-Verzeichnis) habe ich die Komponente wieder
hervorgekramt und um die neuen Funktionen erweitert. Prinzipiell läuft
das Tool auch ganz ok, habe nur ein Problem ausgemacht wo ich mir nicht
sicher bin wie ich das am besten lösen kann/ könnte.

Für die FTP-Synchronisation benötige ich genaue Informationen über die
Dateien welche im aktuellen Verzeichnis vorhanden sind. Dafür sende ich
an den Server die entsprechenden Kommandos (LIST bzw. NLST) und werte
den entsprechenden Response dann zeilenweise aus bzw. führe weitere
Kommandos (MDTM/ SIZE) aus um die benötigten Dateiinformationen zu
erhalten..

Mein Problem bei beiden Varianten ist die Verarbeitungsgeschwindigkeit
für das Auflisten eines Verzeichnisinhaltes. Je mehr Dateien vorhanden
sind (und je langsamer der FTP-Server antwortet) umso länger dauert
dieser Vorgang und ich hab teilweise das Problem das ich auf einen "No
Transfer Timeout" laufe.

Wenn ich mir den gleichen Vorgang bei anderen FTP-Clients (z.B.
FileZilla) anschaue ist dies beim gleichen FTP-Server in wenigen
Sekunden erledigt, bei meiner Variante braucht das für den gleichen
Server teilweise mehrere Minuten.

Kennt vielleicht von euch jemand einen Trick/ Tipp wie man den Response
des FTP-Servers wesentlich schneller verarbeiten kann/ könnte oder ein
Tutorial/ andere offene FTP-Library die das performanter gelöst haben
und wo ich mir entsprechende Ideen abschauen kann?!
Den Source habe ich schon soweit optimiert (Schleifen eleminiert bzw.
zusammengefasst, ...) das dort keinerlei weitere Verbesserungen mehr
möglich sind, da die Geschwindigkeit sich aber nicht merklich
verbessert, denke ich mal das ich einen Grundlegenden Designfehler
begangen habe...

Gruss, Maik

Content-ID: 70273

Url: https://administrator.de/contentid/70273

Ausgedruckt am: 22.11.2024 um 09:11 Uhr

yumper
yumper 06.10.2007 um 02:01:19 Uhr
Goto Top
lass bei filezila doch man nen trace mitlaufen und schau was da so abläuft
Boy1980HH
Boy1980HH 06.10.2007 um 02:10:14 Uhr
Goto Top
Was bei Filezilla, so auf FTP-Ebene gesehen, abläuft habe ich mittels Trace auch schon bestimmt. Was mich aber eher interessiert ist die Logik die dafür genutzt/ verwendet wird...

Gruss, Maik
pi314
pi314 06.10.2007 um 18:47:42 Uhr
Goto Top
Hi,

unter http://www.enterprisedt.com/products/edtftpj/choose.html
kann man sich eine OpenSource FTP-Library ziehen.

Da sind die Sourcen auch gleich mit dabei.
Vielleicht kannst du dir ja hier Anregungen holen.. face-smile

Greetz,
pi

Ähm,
ich bin jetzt einfach mal davon ausgegangen, dass es sich um Java handelt.. face-wink