Fileserver

versuch13

Erfahrenes Mitglied
Hallo. Bei vielen großen Webseiten ist mir aufgefallen, das z.B. Bildmaterial von unterschiedlichen Servern bzw. Adressen abgerufen wird.

Webseite erreichbar unter:

http://www.domain.de/

Grafiken liegen dann aber z.B. auf

http://files.domain.de/

oder auch unter mehreren unterschiedlich Adressen.

Nun frage ich mich, aus welchem Grund wird das gemacht und wie realisiert man so etwas? Für Tips und Informationen wäre ich sehr dankbar. Viele Grüße
 
Ein Grund das zu machen ist sich die Tuer offen zu halten fuer Expansion.
Wenn eine Seite waechst kann es noetig werden Daten auf andere Server auszulagern, wie z.B. Bilder und Multimedia-Dateien.

Wenn nun von vornherein, also auch wenn die Seite noch auf einem Server liegt, mit getrennten Hostnamen gearbeitet wird ist die Umstellung auf mehrere Server hinterher um einiges einfacher, da eben nur die Daten umziehen muessen und der DNS-Eintrag angepasst werden muss.
 
So dachte ich mir das auch, danke, dann bin ich hier in dem Thema als genau richtig.

Ich arbeite mit PHP auf einem Apache. Wie gehe ich das nun genau an?- kannst du evtl gute Lektüre empfehlen? Oder ist das keine große Sache?

Lade ich beim Upload von Dateien diese einfach in ein Verzeichnis welches die Subdomain darstellt? Wenn sich das ganze auf vers. Server verteilt dann nutzt man sicher FTP Funktionen? Wäre nett wenn du noch etwas genauer darauf eingehen könntest (speziell jetzt nur auf die Vorbereitung bei Nutzung eines einzigen Servers, wo lege ich die Daten ab, speichere ich die Pfade komplett in einer DB, was man dazu einfach beachten sollte) damit ich weiß wie in etwa ich das angehen muss. Vielen Dank!
 
Ja, Du richtest ein extra Verzeichnis auf der Platte ein und im Apache eine VirtualHost der auf den entsprechenden Namen hoert und dort dieses Verzeichnis preisgibt.

Zusaetzlich darf natuerlich der entsprechende DNS-Eintrag nicht fehlen.

http://www.domain.de und files.domain.de muessen also die gleiche IP ausspucken.
Wenn dann spaeter mal umgezogen wird werden die Daten kopiert, der DNS-Eintrag geaendert und der VirtualHost geloescht... theoretisch.
Praktisch dauert es eine Weile bis alle DNS-Server Wind davon gekriegt haben dass der Hostname nun auf eine neue IP zeigt, aber ewig dauert das auch nicht.
 
Häufig wird auch gleichzeitig ein schlankerer Webserver eingesetzt, der speziell für die Aufgabe, statische Daten auszuliefern, optimiert wurde.
 
Häufig wird auch gleichzeitig ein schlankerer Webserver eingesetzt, der speziell für die Aufgabe, statische Daten auszuliefern, optimiert wurde.

Darauf bin ich bei meiner Recherche auch schon gestoßen. Samba wäre da eine Möglichkeit wenn ich das richtig in Errinnerung habe, ist das korrekt? Das würde also die Performance steigern können? Kann man so etwas dann auch auf einem Server (wie oben schon beschrieben, also auf einem virtual host) installieren, oder kommt dass nur in Frage wenn man einen extra Fileserver nutzt? Vielleicht hast du da noch ein paar Begriffe für mich anhand derer ich weiter recherchieren kann? Vielen Dank.
 
Du hast das Prinzip etwas falsch verstanden. Du hast einen Server, auf dem eine Site läuft, die dynamische Inhalte mit z.B. php produziert. Danaben hast du aber auch statische Inhalte, die einfach nur an den Webbrowser ausgeliefert werden müssen (Bilder, Videos, PDF Dateien, etc.).

Auf deinem Server läuft jetzt z.B. ein Apache Webserver mit tausenden Erweiterungen wie Web Dav, LDAP, (fettes) PHP, etc.

Das Ausliefern von Bildern mit diesem Webserver ist ein kleines Overkill, deshalb nimmt man da etwas schlankeres und zwar einen Webserver!! (Samba ist kein Webserver!) Entweder installiert man einfach einen zweiten schlanken apache server oder nimmt gleich einen lightweight Webserver. Lighty ist z.B. einer http://www.lighttpd.net/

Um das ganze nun nutzen zu können, muss man das Zeugs richtig konfigurieren. Und zwar brauchst du zwei IP öffentliche Adressen auf dem Server. Auf eine IP Adresse legst du die Hauptseite drauf mit dem Fetten Webserver, der die dynamischen Inhalte produziert und ausliefert und auf dem anderen horcht dann der zweite leichte Webserver und liefert Bilder aus.

So, hoffe nun, dass ich dir die Funktionsweise erklären konnte.
 
Aber auch wenn der Fileserver jetzt ein stinknormaler Apache mit allen möglich Erweiterungne wäre würde dass doch die Performance der Webanwendung steigern? Die Last verteilt sich schließlich oder sehe ich das Falsch?

Lighttpd wurde mir generell als performanter beschrieben wenn viele Anfragen gleichzeit an den Server gestellt werden, das ist doch so?
In den Fällen wo Daten von einer Subdomain abgerufen werden, dort hat die Subdomain eine eigene IP?- ist dass denn möglich? Die Daten befinden sich in dem Fall ja auf dem selbem Server, dass macht man dann wirklich nur um besser auf eine Erweiterung um einen echten Fileserver vorbereitet zu sein? Oder kann man auf einem Server zusätzlich Lighttpd installieren?

Ihr seht schon, Fragen über Fragen. Wäre nett wenn darauf jemand eingehen könnte. Eventuell kann mir auch jemand ein Buch, Webseiten zu dem Thema, oder sonstige Quellen empfehlen anhand derer ich mich intensiver damit beschäftigen kann.

Danke.
 
Ein Buch kann ich dir leider nicht nennen, da ich quasi mit dem Internet aufgewachsen bin.

Also es ist überhaupt kein Problem einem Server bzw. einer Netzwerkkarte zwei IP Adressen zuzuweisen. Bei einer Domain ist es auch kein Problem eine Subdomain auf eine andere IP Adresse zu legen, als die Hauptdomain. (ist jetzt nur nebenbei gesagt, du kannst auch eine Domain auf zwei IP Adressen legen, so bekommt man einen einfachen Load Balancer)

Mit den Erweiterungen musst du es dir so vorstellen:

Ein Bild ist eine Pizza die du auslieferst.

lighty ist jetzt z.B. ein Mini ohne Sonderausstattung.
der Apache an sich ist bereits ein kleiner Transporter. Aber es ist dir nicht genug, du willst mit dem Wagen mehr machen. z.B. Darin wohnen, also nimmt du einen Wohnanhänger mit. Du willst z.B. Getränke kühl halten. also nimmst du einen gekühlten Anhänger mit, usw. Diese Anhänger sind die Erweiterungen des Webservers.

Wie du siehst, ist ein Mini bzw. der lighty leichter und beweglicher. Deshalb kommt er mit weniger Aufwand (aber vll. in der gleichen Zeit am ziel an). Der Apache ist fett, dadurch verbraucht er mehr Ressourcen für die gleiche Aufgabe, als ein leichterer Server.
 
Zurück