Ein Administrator eines Open-Source-Forums feiert einen Meilenstein: 10.000 registrierte Mitglieder. Die MySQL-Datenbank wiegt 2 GB – überschaubar. Der Ordner „uploads/“ wiegt 180. Nächtliche Backups überschreiten das Sechs-Stunden-Fenster, der Host sendet eine Warnung „Speicherplatz voll“ und niemand hätte damit gerechnet, dass jedes Avatar-Miniaturbild und jeder Screenshot genauso viel zählen würden wie eine normale Blog-Seite.
Community-Foren schaffen es selten, eine Homepage zu schaffen. Sie schlagen bei stillem Speicher fehl: Anhänge, Inline-Bilder, freigegebene ZIP-Archive, von Mitgliedern gepostete Protokoll-Dumps. Das Traffic-Wachstum ist in Analytics sichtbar; Ein Festplattenwachstum tritt nur auf, wenn die Sicherung fehlschlägt.
Warum Anhänge die Hosting-Gleichung verändern
Eine klassische Forennachricht hat eine geringe Basis: ein paar Kilobyte Text. Fügen Sie ein Smartphone-Foto (3–8 MB), ein PDF (2 MB) und ein generiertes Miniaturbild (200 KB) hinzu und Sie vervielfachen die Last jeden Tag um das Hundertfache.
| Komponente | Wachstum | Auswirkungen der Unterbringung |
|---|---|---|
| Text + Metadaten | Linear, langsam | MySQL-/PostgreSQL-Datenbank |
| Avatare und Signaturen | Durchschnittlich | Festplatte + CDN |
| Gewindeanhänge | Schnell | Festplatte, Inode, Sicherung |
| Volltextsuche | Beschleunigt | RAM, Indizes, CPU |
| Moderation (Dateien) | Variiert | Arbeiter, Warteschlange |
In einem Forum ist die Festplatte die Metrik, die am wenigsten liegt. Der Datenverkehr kann zwischengespeichert werden. Ein 5-MB-JPG wird erst angezeigt, wenn es über CDN oder ein Objekt bereitgestellt wird.
Speicherarchitektur: lokal, Objekt oder Hybrid
Phase 1 – Start (< 500 aktive Mitglieder). Lokaler Ordner „uploads/“ mit strengen Quoten: 2 MB pro Bild, Typen zulässig, automatische Größenänderung beim Hochladen. Überwachen Sie den Inode genauso wie Go.
Phase 2 – Wachstum. Auslagerung auf Objektspeicher (Scaleway Object Storage, OVHcloud Object Storage, AWS S3 in der EU-Region). Das Forum schreibt eine URL, keinen lokalen Pfad. Backups: Datenbank-Snapshot + Objektversionierung.
Phase 3 – Skalierung. CDN vor den Medien, Trennung von Lesereplikaten für die Basis, asynchrone Moderation über Warteschlange (Redis + Worker).
Quoten und Upload-Richtlinien: Vorbeugen statt entschuldigen
Regeln, die in der Produktion gelten:
- Maximale Größe pro Stufe (Mitglied / Moderator / Mitarbeiter).
- Automatische WebP/AVIF-Komprimierung für Bilder.
- Verzögerung vor dem Hochladen für neue Konten (Anti-Spam).
- Asynchrone Moderation der ersten Dateien eines Benutzers.
- Säuberung von Waisenkindern (gelöschte Nachricht → gelöschte Datei).
Ohne automatische Bereinigung wird „uploads/“ zu einem Dump. Wöchentliches Cron-Skript: Dateien ohne Datenbankreferenz → Papierkorb, dann Löschen.
Hosting: Kriterien jenseits der „unbegrenzten Anzahl an Websites“
| Kriterium | Zu stellende Frage | Warnsignal |
|---|---|---|
| Speicherplatz | Gesamtkontingent und pro Inode? | „Unbegrenzt“ ohne Nummer |
| E/A | SSD oder NVMe? | Backups, die die Website verlangsamen |
| Sicherung | Einzelne Dateiwiederherstellung inbegriffen? | Kostenpflichtiges „On-Demand“-Backup |
| PHP-Worker | Genug für Moderation + Upload? | 503 während der Abendgipfel |
| Objektspeicher | Native S3-kompatibel? | Nur FTP |
Ein 40-GB-VPS scheint beim Start groß zu sein. Mit 500 Fotos pro Woche erreichen Sie die Obergrenze in Monaten – nicht in Jahren.
Moderation und Gebühren: die versteckten Kosten von Warteschlangen
Jedes hochgeladene Bild kann Folgendes auslösen: Antiviren-Scan, Erstellung von Miniaturansichten, Suchindizierung, E-Mail-Benachrichtigung an 50 Thread-Abonnenten. Es handelt sich nicht um eine HTTP-Anfrage, sondern um fünf Jobs.
Planen Sie Redis oder eine Celery/RabbitMQ-Warteschlange, vom Web getrennte Worker und Ratenbeschränkungen für die Upload-API. Andernfalls lässt ein Spam-Bot-Angriff mit 10 MB PNGs PHP-FPM fallen, bevor die Festplatte voll ist.
Der Gipfel: Die Community wird die Langsamkeit verzeihen, nicht den Verlust der Geschichte
Hosts verkaufen Traffic und CPU. Ihr Forum lebt hauptsächlich von Dateien, die bis zur Panne niemand noch einmal liest.
Entscheide dich und gehe ohne blinden Fleck voran
- Messen Sie „Uploads/“ noch heute und prognostizieren Sie ×24 Monate mit Mitgliederwachstum.
- Kontingente festlegen und Bildgröße vor der nächsten Akquisitionskampagne ändern.
- Testen Sie eine Wiederherstellung einer Datei + einer zugehörigen Nachricht.
- Planen Sie das Outsourcing von Objekten ab 20 GB Medien oder 70 % genutzter Festplatte.
- CDN vor den Medien, sobald ganz Europa Ihre Threads liest.
Entdecken Sie die Angebote mit Objektspeicher in unserem Verzeichnis. Informationen zu Verarbeitungswarteschlangen finden Sie unter Celery: Verhindern, dass eine Aufgabenwarteschlange zu einer Blackbox wird.
Häufig gestellte Fragen
Wie viel Speicherplatz sollten Sie für ein wachsendes Forum benötigen?
Durchschnittliche Anhangsgröße × Nachrichten/Monat × 24 Monate, plus 30 % Marge. Ein bildreiches Forum übersteigt schnell 100 GB/Jahr.
Sollen die Dateien auf demselben Server wie die Datenbank gespeichert werden?
Von einigen Tausend aktiven Benutzern trennen Sie: Basis auf SSD, Dateien auf Objekt oder NAS. Davon profitieren Backups und CDNs.
Welche Beschränkungen sollten für Uploads gelten?
Maximale Größe, MIME-Typen, Benutzerkontingent, Bildkomprimierung, Scannen oder asynchrone Moderation für neue Konten.
Ist Shared Sharing für ein Forum geeignet?
Ja, zunächst einmal mit Disziplin. Darüber hinaus werden Inode-Limits, I/O und Backups zur ersten Hürde.
Ein Forum wächst in der Stille des Upload-Ordners. Bereiten Sie es vor, bevor die Community durch Ihre toten Links herausfindet, dass Sie es nicht getan haben.
