Projektidee (2-3 Tage Aufwand) gesucht



  • @volkard: Das mit den Verzeichnissen und den Absatz danach habe ich leider nicht verstanden. Könntest du mir das nochmal erklären?



  • Als ich "FTP" gelesen hab, hab ich erstmal geprüft, ob dieser Thread wirklich von 2011 ist. 😉

    Im Ernst, ich hatte nicht erwartet, dass es immer noch Webseiten gibt, die per FTP hochgeladen werden. Ich dachte, dieses Protokoll wäre endlich mal verschwunden.

    Ich nehm zum Hochladen von Webseiten am liebsten rsync oder git. Viel effizienter dürfte kaum möglich sein, außer die Verbindung wird gedrosselt, sodass mehrere parallele Verbindungen schneller sind. Aber bei rsync und git ist normalerweise der upstream konstant zu 100% ausgelastet.

    Aber hier geht es ja um Hobby-Projekte, da wär ein multi-threaded FTP-Upload-Tool bestimmt ganz lehrreich. Und wenn es nur zeigt, wie man ein Protokoll nicht entwerfen sollte.



  • Christoph schrieb:

    Im Ernst, ich hatte nicht erwartet, dass es immer noch Webseiten gibt, die per FTP hochgeladen werden. Ich dachte, dieses Protokoll wäre endlich mal verschwunden.

    Ich sehe hier Websites, die auf einem Windows Server 2000 gehosted sind. Und dort ist FTP das einzige, was vernünftig funktioniert. Da kannst du noch lange warten, bis dieses Protokol verschwindet 😉



  • Christoph schrieb:

    Als ich "FTP" gelesen hab, hab ich erstmal geprüft, ob dieser Thread wirklich von 2011 ist. 😉

    Realitätscheck: www.1und1.de



  • Christoph schrieb:

    Im Ernst, ich hatte nicht erwartet, dass es immer noch Webseiten gibt, die per FTP hochgeladen werden.

    Ist es irgendwie schick, wenn man sich absichtlich realitaetsfern gibt? 😕



  • 314159265358979 schrieb:

    @volkard: Das mit den Verzeichnissen und den Absatz danach habe ich leider nicht verstanden. Könntest du mir das nochmal erklären?

    Du hast auf dem Server
    foo/
    bar
    foo/datei1
    foo/datei2

    Du hast lokal
    foo
    bar/
    bar/datei1

    Also um bar/ anzulegen muß erst bar weg. Dann kann man bar/datei hochladen.
    Also Reigenfolge "del bar" "mkdir bar" "put bar/datei1"
    Und um foo hochzuladen muß erst foo/ weg und dazu müssen erst foo/datei1 und foo/datei2 weg.
    Wobei aber egal ist, ob zuerst foo/datei1 oder foo/datei2 gelöscht wird. Nur muß klar sein, daß wenn ein Thread sich den Auftrag "del foo/datei1" holt, ihn sich kein anderer mehr holt. Also am besten irgendwie die Aufträge in einen gemeinsamen Container stecken, wo sich jeder was abholen kann.

    Nochmal.

    Du hast auf dem Server
    foo/
    foo/datei1
    foo/datei2
    bar

    Du hast lokal
    foo
    bar/
    bar/datei1

    "put foo" wartet auf "rmdir foo"
    "mkdir bar" wartet auf "del bar"
    "rmdir foo" wartet auf "del foo/datei1"
    "rmdir foo" wartet auf "del foo/datei2"
    "put bar/datei1" wartet auf "mkdir bar"

    Also bei Programmstart können die Jobs "del foo/datei1" und "del foo/datei2" und "del bar" sofort starten. Je nachdem, wer dann zuerst fertig ist, kann's mit weiteren Jobs weitergehen.

    Bei parallelen Jobs sollte der die höchste Priorität haben, der am meisten Folgeaktionen freischaltet, damit möglichst alle 5 Threads immer was zu tun haben werden.
    Bei parallelen put-Jobs sollte die größte Datei die höchste Priorität haben, damit nicht am Ende vier fertig sind und der fünfte noch an einer 100MB-Datei ackert.



  • this->that schrieb:

    Christoph schrieb:

    Im Ernst, ich hatte nicht erwartet, dass es immer noch Webseiten gibt, die per FTP hochgeladen werden.

    Ist es irgendwie schick, wenn man sich absichtlich realitaetsfern gibt? 😕

    Manche Leute finden das lustig.

    Wobei du es gerade selbst gemacht hast. Die Antwort war dir ja wohl selbst klar...



  • Zur Kontrolle, ob ich das richtig verstanden habe: Der User legt seine Dateien im out-Verzeichnis an. Das Programm vergleicht das out Verzeichnis mit dem mirror Verzeichnis und lädt die fehlenden Dateien hoch/löscht die nicht mehr vorhandenen Dateien und synchronisiert mirror/ mit dem Server?



  • zur kontrolle, ob ich das richtig verstanden habe: du erledigst auftragsarbeit fuer umsonst? ich wuerde mich gerne fuer deine naechsten ferien voranmelden. :xmas1:



  • 314159265358979 schrieb:

    Zur Kontrolle, ob ich das richtig verstanden habe: Der User legt seine Dateien im out-Verzeichnis an. Das Programm vergleicht das out Verzeichnis mit dem mirror Verzeichnis und lädt die fehlenden Dateien hoch/löscht die nicht mehr vorhandenen Dateien und synchronisiert mirror/ mit dem Server?

    Vielleicht.
    Der User legt seine Dateien im out-Verzeichnis an.
    Das Programm vergleicht out/ mit mirror/ und tut alles, was nötig ist, um mirror/ so aussehen zu lassen, wie out/, also Dateien von out/ nach mirror/ kopieren, Verzeichnisse anlegen, Verzeichnisse löschen, Dateien löschen.

    Allerdings wird immer, wenn ein Schritt in /mirror gemacht wird, der selbe Schritt auch auf dem Server gemacht.

    Der Stand auf dem Server wird niemals ausgelesen.



  • Noch irgendwelche anderen Ideen? So wirklich motivieren kann ich mich für volkards Auftrag nicht...



  • Programmier doch ein kleinen P2P Client der nur strings austauscht 😃



  • CCodex schrieb:

    Programmier doch ein kleinen P2P Client der nur strings austauscht 😃

    Das geht eigentlich sehr schnell aber dazu vielleicht noch eine Verschlüsselung reinbringen.



  • Ein einfacher Torrent-Client.



  • Torrents verwende ich nicht, Verschlüsselung interessiert mich nicht. 😃



  • Findest du 2-3 Tage nicht etwas sehr knapp bemessen?



  • Von mir aus auch eine Woche. Auf jeden Fall will ich nicht wie letzte Ferien nur zocken. 😃



  • Pick dir einfach ein Euler Projekt heraus.



  • Du meinst die Euler Rätsel? Also da weiß ich mir echt besseres anzufangen :p
    Abgesehen davon versteh ich davon eh bestimmt die Hälfte nicht.



  • Hast Du nichmal das Duchhaltevermögen, Die eine Aufgabe zu stellen?
    Die 2-3 Tage sind doch längst um.


Anmelden zum Antworten