Laravel Bildgalerie Logik

Ich habe kürzlich angefangen, eine ziemlich große Website zu entwickeln. Auf der Site möchte ich Nutzern erlauben, ihre Beispielarbeiten hochzuladen. Momentan sind wir ziemlich eingeschränkt, daher werden die Bilder auf unserem Server gespeichert.

Ich bin ein bisschen mit der Logik fest. Das wäre also meine Logik.

Der Benutzer erstellt einen Ordner mit einem Namen, der in der Datenbank mit dem Symbol gespeichert wirdusers id angehängt an

Ordnertabelle

Reihen

id | folder        | user_id 
1  | Some folder   | 1
2  | New folder    | 4
3  | Nother folder | 7

Bildertabelle

Reihen

id | image_name        | folder_id |
1  | image1.jpg        | 1
2  | image2.jpg        | 1
3  | image3.jpg        | 1
4  | image4.jpg        | 2
5  | image5.jpg        | 2
6  | image6.jpg        | 2

Beziehungen

class Folder extends Eloquent 
{
    public function images()
    {
        return static::has_many('Images');
    }
}

class Image extends Eloquent 
{
    public function folder()
    {
        return static::belongs_to('Folder');
    }
}

Ordnerstruktur auf dem Server

- samples
  -user_id
   - folder_id
     - image1
     - image2
     - image3

Wie Sie sehen, erstellt der Benutzer einen Ordner, nachdem der Ordner erstellt wurde.user lädt den Bildnamen in die Datenbank mit derfolders id, und die Bilder zu zeigen wäre der oben beschriebene Weg mit der Realisierung.

Also meine Fragen.

Ist das Ihrer Meinung nach eine gute Logik?Kann dies in Zukunft zu Problemen führen?Was würden Sie für diese Funktionalität anbieten?

Und was mir am heiligsten ist, sind zwei Dinge.

Ich denke das wird zu einer riesigen Datenbank führen, zweitens sind dieid's, nach x Mal, wenn es mehr Benutzer geben wird, dieid's wird zunehmen, und ich weiß, das wird seltsam klingen, aber da viele Benutzer Bilder hochladen, die zu riesigen IDs führen, was ich damit meine, wird es vielleicht Millionen erreichen, gibt es eine Möglichkeit, dieses Problem zu lösen?

Danke für die Hilfe

Antworten auf die Frage(2)

Ihre Antwort auf die Frage