Fileserver

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.

Ok, danke dir auch nochmal soweit. Ich werde dass einfach mal lokal bei mir versuchen.
 
Vielleicht solltest du von dem Gedanken Abstand nehmen, dass ein Server immer ein einzelner Rechner ist. So kann nämlich auch ein einzelner physischer Rechner Server mehrerer Dienste sein oder mehrere Rechner zusammen Server nur eines einzelnen Dienstes sein. (Letzteres wird dann oft eher als Host bezeichnet.)
 
^ ^ Vor allem im "Zeitalter der Virtualisierung" ist wohl ein physikalischer Server auch nicht immer nur ein Server, sondern eventuell auch mal viele.

Vom erwaehnten Fall mal abgesehen dass auf einem Server (Rechner) auch mehrere Server (Programme, z.B. Web-Server, DNS-Server, etc.) laufen koennen und dies oft auch Sinn (oder im Grunde eigentlich sogar immer, denn auch SSH ist ein Server ;) ) macht.
 
Vielleicht solltest du von dem Gedanken Abstand nehmen, dass ein Server immer ein einzelner Rechner ist. So kann nämlich auch ein einzelner physischer Rechner Server mehrerer Dienste sein oder mehrere Rechner zusammen Server nur eines einzelnen Dienstes sein. (Letzteres wird dann oft eher als Host bezeichnet.)

Das hast du richtig erkannt, das war mir so tatsächlich nicht bekannt habe ich aber gerade im Moment schon aus anderer Quelle erfahren, trotzdem danke.

Ich fasse es einfach nochmal zusammen um zu sehen ob ich es auch wirklich verstanden habe ;) Also, ich kann jetzt neben dem Apache zusätzlich Lighttpd (gibt es Alternativen zu denen aus bestimmten Gründen geraten werden kann?) installieren.
Und ich kann das ganze dann so konfigurieren dass Apache die dynamischen Inhalte ausliefert und Lighttpd in meinem Fall Grafiken. Lighttpd kann ich dann über eine Subdomain erreichbar machen. Stimmt das soweit? Ich hoffe doch. Sind dafür dann zwei unterschiedliche IP Adressen notwendig?
 
Zuletzt bearbeitet:
Ich fasse es einfach nochmal zusammen um zu sehen ob ich es auch wirklich verstanden habe ;) Also, ich kann jetzt neben dem Apache zusätzlich Lighttpd (gibt es Alternativen zu denen aus bestimmten Gründen geraten werden kann?) installieren.
Ich sags mal so, in der IT Welt darf man keine Scheuklappen aufsetzen. Es gibt neben Apache und dem hier bereits genannten lighty noch hunderte andere Webserver Projekte. Jedes Projekt hat Vor- und Nachteile. Ein anderer Webserver ist z.B. thttpd ( http://www.acme.com/software/thttpd/ )Ich habe den lighty nur deshalb genannt, weil ich ihn selbst nutze, aber in einem etwas anderen Zusammenhang.

Bei mir nimmt der lighty alle Anfragen an und schickt statischen Inhalt sofort selbst raus. Wird dynamischer Inhalt angefordert, so wird bei einem von drei Content Servern angefragt. Der Content Server liefert das Ergebnis dann an den lighty und er schickt es wieder zurück. So habe ich einen recht flexiblen und skalierbaren Loadbalancer umgesetzt.

Und ich kann das ganze dann so konfigurieren dass Apache die dynamischen Inhalte ausliefert und Lighttpd in meinem Fall Grafiken. Lighttpd kann ich dann über eine Subdomain erreichbar machen. Stimmt das soweit? Ich hoffe doch. Sind dafür dann zwei unterschiedliche IP Adressen notwendig?

Naja, nicht ganz. Um einen Remote Server (ich meine jetzt einen Dienst [Software], der Anfragen von Außerhalb bearbeitet) zu betreiben, benötigst du zwei angaben. 1) eine IP Adresse, auf der dieser Dienst lauscht und 2) einen Port. (Für diese Erklärung würden mich jetzt einige Leute an meinen Eiern an der Decke aufhängen, aber ich schreib es trotzdem mal so hin) Eine IP Adresse ist in Ports unterteilt, wie eine Stunde in Minuten unterteilt ist. Deshalb gibt es folgende Möglichkeiten: Ein Webserver läuft auf der IP Adresse A auf dem Port 80, ein zweiter Webserver läuft auf der gleichen IP A auf dem Port 81. Eine andere Möglichkeit ist es, dass ein Webserver auf der IP A auf dem Port 80 läuft und der zweite auf der IP B auf dem Port 80.

Nun zur Frage, wieso man zwei IP Adressen braucht und nicht einfach einen anderen Port nimmt. Technisch würde beides funktionieren und die Seite würde mit einer IP Adresse idR. bei ca. 70% der Internet Nutzer laufen. Aber es gibt auch Leute, die z.B. von der Firma aus auf die Seite zugreifen möchten. Der Unterschied ist, dass deren Firewall etwas härter konfiguriert ist, als bei einem Home User. Man sagt, http ist Port 80 = relativ ungefährlich. Von allen anderen Ports geht eine Gefahr aus und die Mitarbeiter haben die nicht zu nutzen. Deshalb werden die Ports von der Firewall geblockt und die Leute bekommen z.B. die Bilder nicht zu sehen.

Deshalb nimmt man die zusätzlichen Kosten in Kauf und nimmt eine zweite IP Adresse. Alternativ kann man das auch so machen, wie ich es oben beschrieben habe. Es ist jedoch ein höherer Konfigurationsaufwand.
 
Zuletzt bearbeitet:
Ich sags mal so, in der IT Welt darf man keine Scheuklappen aufsetzen. Es gibt neben Apache und dem hier bereits genannten lighty noch hunderte andere Webserver Projekte.
Es gab auch mal einen Web-Server der direkt in den Linux-Kernel integriert war. Ich mein im 2.4er Kernel war das.
Wie viel Sinn sowas macht ist jetzt die Frage, vor allem mit Blick auf die Sicherheitsprobleme die daraus entstehen koennen. Schnell war das Ding aber allemal. :)
 
Bei mir nimmt der lighty alle Anfragen an und schickt statischen Inhalt sofort selbst raus. Wird dynamischer Inhalt angefordert, so wird bei einem von drei Content Servern angefragt. Der Content Server liefert das Ergebnis dann an den lighty und er schickt es wieder zurück. So habe ich einen recht flexiblen und skalierbaren Loadbalancer umgesetzt.

Hallo,

würde mich mal interessieren wie du das umgesetzt hast, weil ich momentan genau vor diesen Problem stehe. Mir geht es haupsächlich um Traffic intensiven Content(Videos) der vom Storageserver kommt. Dabei ist das Nadelöhr die Anbindung(100M/Bit), also brauche ich einen Loadbalancer und genau dazu wüßte ich gerne mehr.

Gruss
 
Moin,

ich habe bei dem Lighty zwei Sachen eingerichtet.

1) habe ich eine URL Rewrite Rule, die jetzt eben die Umschreibung von /content.php => /sitename/content.php erledigt.

2) habe ich einen Proxy Server eingerichtet, der Anfragen an Content Server weiterleitet. Die Antworten bekommt er dann zurück und gibt sie dem anfragenden Client.

Aber wie ich es verstanden habe, hast du vor allem hohen Traffic Load auf den Kisten und möchtest genau das "loadbalancen". Mit der Methode, die ich eingesetzt habe, wird das leider nicht klappen, denn da hast du effektiv nur 100MBit/s (wenn in dem Server, auf dem Lighty läuft auch noch eine low End Netzwerkkarte drin ist, hast du effektiv sogar nur 60-70MBit/s)

Um dir da helfen zu können, brauche ich ein paar Infos zu deinem Projekt und der verwendeten Architektur. Soweit ich es bisher verstanden habe, betreibst du ein Projekt, der aus zwei Typen von Content besteht. Dynamischer Inhalt und Statischer Inhalt. Letzterer kommt von einem Sorage Server. Ist es nur ein Server oder sind es mehrere. Muss der statische Content irgendwie gesichert sein, damit ihn nicht jeder mirrorn kann? Was sind es für Dateien (im Sinne von Dateigröße)?
 
Hallo,

danke erstmal für deine Antwort.

Also der dynamische Content Server1 - LAMP
statischer content hauptsächlich *.flv Server2 - lighty(mod_securedownload), PHP-cgi, MySql

Server2 möchte ich loadbalancen, weil er Traffic mäßig an seine Grenzen stößt. Wie gesagt momentan nur ein Storageserver. Die Videos sind Lehrvideos 10- 150MB gross.

Beide Server laufen auf Debian(etch), verwendete Programmiersprache PHP5 mit Pear.

Danke...
 
Zuletzt bearbeitet von einem Moderator:
Ja,

nur wie willst du den zweiten Server loadbalancen? Oder willst du dir jetzt noch einen Server holen und dann anschließend zwischen zwei Storage Servern loadbalancen?
 
Zurück