Ankündigung

Einklappen
Keine Ankündigung bisher.

Dateiverarbeitung mehrere Nutzer pararell Theoretisch

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Dateiverarbeitung mehrere Nutzer pararell Theoretisch

    Ich habe ein Programm geschrieben welches Bilder verarbeitet.


    Dieses läuft über ein Benutzersystem. Heißt mehrere können bzw. sollen gleichzeitig Bilder verarbeiten können.

    Wie erstelle ich am besten Benutzerspezifische Ordner, in dem nur Bilder des angemeldeten Users landen und nicht, die eines anderen Benutzers der gleichzeitig dran arbeitet?

    Natürlich in PHP

    Viele Grüße


  • #2
    Verzeichnisse erstellst du per mkdir. Aber das ist vermutlich nicht das, worum es dir eigentlich geht?

    Kommentar


    • #3
      Hallo,

      ich weiß nicht ob ich das richtig verstanden habe. Du hast z.B. ein Bild was einen Frosch darstellt im allgemeinen Bilderordner liegen. Nun hast du z.B. 5 Benutzer die dieses Bild bearbeiten können sollen?

      Ist das soweit richtig?

      Nun, wenn dem so ist musst du, wenn ein Benutzer angemeldet ist einen Ordner für diesen anlegen, im Dateinamen am besten ID und Benutzername als MD Hash.

      Wenn nun der User sich das Bild schnappt muss es in den Benutzerordner kopiert werden, heißt die Bildresource würde es nun 6 mal geben, einmal das Original und jeder Benutzer hat eins in seinem Ordner liegen.

      So können z.B. 5 Benutzer ein Bild bearbeiten, aber kommen sich niemals in die Quere.

      Ich hoffe ich lag richtig mit meiner Vermutung und konnte dir helfen.

      Allerdings hat dies wenig mit Softwaredesign an sich zu tun.

      Gruß Litter
      Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
      http://www.lit-web.de

      Kommentar


      • #4
        Aus technischer Sicht ist es nicht unbedingt die erste Wahl user spezifische Dateisystemstrukturen dynamisch zu pflegen und anzulegen. Halte die Dateisystemstruktur zum vorhalten von Binären Daten ( wie Bilder ) so flach wie möglich und organisiere Uploads der Bilder auf basis von hashes als Dateinamen und pflege die "Rechte zur Veränderung" in einer Datenbank.
        [URL="https://gitter.im/php-de/chat?utm_source=share-link&utm_medium=link&utm_campaign=share-link"]PHP.de Gitter.im Chat[/URL] - [URL="https://raindrop.io/user/32178"]Meine öffentlichen Bookmarks[/URL] ← Ich habe dir geholfen ? [B][URL="https://www.amazon.de/gp/wishlist/348FHGUZWTNL0"]Beschenk mich[/URL][/B].

        Kommentar


        • #5
          Zitat von tr0y Beitrag anzeigen
          Aus technischer Sicht ist es nicht unbedingt die erste Wahl user spezifische Dateisystemstrukturen dynamisch zu pflegen und anzulegen. Halte die Dateisystemstruktur zum vorhalten von Binären Daten ( wie Bilder ) so flach wie möglich und organisiere Uploads der Bilder auf basis von hashes als Dateinamen und pflege die "Rechte zur Veränderung" in einer Datenbank.
          Aber wie soll das dann gehen, wenn z.B. in der Lage sein sollen ein Bild zu bearbeiten? Dazu benötigt man doch aber so etwas.

          Oder meinst du User xyz und User abc wollen nun das Bild gibsmir.png bearbeiten, das eine Bildkopie gemacht wird mit einem z.B. MD5 Hash, welcher aus dem Bildnamen, der UserID und dem Usernamen besteht? Und diese Bilder in einem Ordner bleiben und nicht in Ordnern eines User Dateisystems gespeichert werden?
          Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
          http://www.lit-web.de

          Kommentar


          • #6
            Ich baue die Dateienstruktur jeweils so auf, dass jede Datei eine UUID bekommt. Danach wird im Format

            /ab/cd/abcdefgh.jpg

            gespeichert. Ob nun ein Nutzer darauf Zugriff hat und was überhaupt in dieser Datei steckt, findet sich in der DB. Wer dann wie worauf zugreift etc. ist egal.
            GitHub.com - ChrisAndChris - RowMapper und QueryBuilder für MySQL-Datenbanken

            Kommentar


            • #7
              Zitat von Darknet Beitrag anzeigen
              Dieses läuft über ein Benutzersystem. Heißt mehrere können bzw. sollen gleichzeitig Bilder verarbeiten können.
              Entweder jeder arbeitet auf einer eigenen Kopie (die man zum Zwecke der Bearbeitung dynamisch erstellen kann), oder du bist der erste, der ein Multiuser-Zeichentool entwickelt.

              Ganz ernsthaft, niemand will zeitgleich mit einem oder mehreren anderen am gleichen Bild, Code, Datei, oder sonstwas arbeiten... aufeinander zuarbeiten funktioniert anders.
              Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

              Kommentar

              Lädt...
              X