Wege weg vom Managed Server

Apache, Lighttpd, nginx, Cherokee
ruekre
Posts: 7
Joined: 2007-03-15 13:24

Wege weg vom Managed Server

Post by ruekre » 2007-03-15 13:30

Hallo zusammen,

ich bin neu hier und hoffe, dass ich ins richtige Forum gestoßen bin.

Wir betreiben derzeit einen Managed Server bei 1&1 und haben unglaubliche Probleme mit der Performance. Wir nutzen den 3XL Server mit 4GB Ram.

Auf unserem Server läuft eine Community-Seite mit relativ vielen Datenbankabfragen und Mails die verschickt werden. Laut unseren Logs haben wir eine durchschnittliche Load von 6 - 8.

Rücksprache mit dem Support von 1&1 ergaben, dass wir wohl zu einer anderen Konstellation wechseln sollten. Der Techniker empfahl uns eine Aufteilung in einen Live-Server und einen Datenbankserver. Tatsächlich sank der / die / das Load (?) von durchschnittlich 6-8 auf 3 -4 als wir die Mails nicht mehr verschickt haben.

Ich plane nun einen Live-Server, den ich gerne als Managed Server lassen möchte und einen Datenbank-Server. Ich habe hier im Forum gelesen, dass man auf einem Rootserver entsprechend viel RAM freigeben kann für die MySQL-Datenbank. Gilt dieses auch wenn ich über den Datenbankserver Mails verschicken möchte? (Wir reden über 40.000 Mails / Tag) oder sollte man dann einen weiteren Server nehmen, der nur die Mails verschickt?

Danke für eure Ideen!

Rüdiger

kase
Posts: 1031
Joined: 2002-10-14 22:56

Re: Wege weg vom Managed Server

Post by kase » 2007-03-15 14:52

Am besten nimmst du einen Server für Webserver+Mailserver und einen zweiten Server für die Datenbank.

lord_pinhead
Posts: 774
Joined: 2004-04-26 15:57

Re: Wege weg vom Managed Server

Post by lord_pinhead » 2007-03-15 21:12

Einer normaler Mailer sollte mit 40k Mails am Tag schon klarkommen, sofern er richtig konfiguriert ist. Allerdings würde ich sagen das da entsprechend viele Leute immer Online sind und die Leitung ganz schön auslasten, wenn da noch der Mailer dauernd Mails raussendet wird das vielleicht sogar nur wegen dem Volllaufen der Warteschlange so schlimm.

Wie groß ist die Datenbank? Vielleicht wäre es besser ein dedizierten Datenbank Server zu holen, dann steht auch mehr Ram zur Verfügung. Bei den 3XL, ist der dediziert nur für euch oder sind da auch andere Kunden drauf? Online gibt es nur noch die 3XL64 bei 1und1 und die als Rootserver und als Managed (oder wie man Homepage Server auslegen kann)

Das Problem ist, ich würde jetzt ja eigentlich sagen das man mal den Server mit monit oder mrtg überwacht und versucht dadurch den Engpass rauszufinden, weil die 3XL sind nicht gerade klein dimensioniert. Wenn es ein Dedizierter Server wäre, könnte man vielleicht noch versuchen mittels Traffic Shaping ein geregelten Fluß zu gewährleisten wenn es sich um ein Leitungsenpass handelt. Nur ohne Infos wird das etwas schwierig.

r. u. serious
Posts: 88
Joined: 2006-06-10 14:17

Re: Wege weg vom Managed Server

Post by r. u. serious » 2007-03-16 11:18

ruekre wrote: Wir betreiben derzeit einen Managed Server bei 1&1 und haben unglaubliche Probleme mit der Performance. Wir nutzen den 3XL Server mit 4GB Ram.
Das überrascht micht nicht. Das liegt m.E. (Glaskugel+eigene Erfahrungen mit Managed Servern dort von vor ein paar Jahren) daran, dass die Managed Server nicht so konfiguriert sind, dass sie Leistung bringen. Vermutlich haben die dort immer noch so Dinge wie PHP als CGI, und mit allen Modulen voll zugepackte Apaches, kein APC/XCache/o.ä.. Besonders dann wenn man nicht als Reseller für viele kleine Seiten auftritt, sondern nur seine eigenen (größeren) Seiten betreuen will, dann ist die Konfiguration sehr, sehr nachteilig. Beim Umstieg auf einen eigenen, selbst betreuten Server braucht man plötzlich nur einen Bruchteil des RAMs und der CPU, und es läuft trotzdem schneller.

Da viele Anbieter solcher Standard-Managed Server keine idividuellen Konfigurationen machen, ist dann die einzige Empfehlung immer nur Server upgraden (ein Schelm wer böses dabei denkt - aber was sollen sie auch sonst vorschlagen...).
Auf unserem Server läuft eine Community-Seite mit relativ vielen Datenbankabfragen und Mails die verschickt werden. Laut unseren Logs haben wir eine durchschnittliche Load von 6 - 8.
Der nächste Schritt wäre herauszufinden wodurch der verursacht wird. CPU? Swappen, weil zu wenig RAM? I/Owait wegen zuviel (notwendiger) HDD-Aktivität? In jedem der Fälle gibt es oft "niedrig hängende Früchte" bei der Optimierung.
Ich plane nun einen Live-Server, den ich gerne als Managed Server lassen möchte und einen Datenbank-Server.
Mit Live-Server meinst du Webserver, ja? Bei den meisten Webanwendungstypen ist es in der Tat so, dass ein Trennen von Webserver und Datenbankserver die vorteilhafteste Art der Skalierung auf zwei Server ist. Das muß aber nicht so sein. Manchmal könnte es auch vorteilhafter sein, bspw. nur die statischen Inhalte von den dynamischen Inhalten zu trennen, sodaß man einen schwachen/kleinen Server mit guter Anbindung nimmt, welcher nur statische Inhalte (html-, Bild-, css-Dateien) ausliefert - das hängt aber von Art der Anwendung und Art der Serverkonfiguration, und ergo der des tatsächlichen Flaschenhalses ab.


Ich frage mal so:
- Kommen auf jeden Fall nur Managed Server vom Server-Anbieter in Frage? Kommt es nicht in Frage root-server zu kaufen und jemand anderen für die Wartung zu engagieren? Dann erübrigen sich nämlich die meisten Tipps die man geben könnte.

Ich habe hier im Forum gelesen, dass man auf einem Rootserver entsprechend viel RAM freigeben kann für die MySQL-Datenbank. Gilt dieses auch wenn ich über den Datenbankserver Mails verschicken möchte? (Wir reden über 40.000 Mails / Tag) oder sollte man dann einen weiteren Server nehmen, der nur die Mails verschickt?
"RAM freigeben" paßt nicht so ganz, da jede Anwendung sich erstmal soviel RAM nimmt wie braucht. Manche Anwendungen kann man konfigurieren wieviel RAM sie sich holen sollen - bei Datenbankservern ist das oft der Schlüssel zu guter Performance. Das ist aber nicht ein einfacher Regler (wenig RAM, viel RAM), sondern es gibt eine Fülle von Buffern und Caches die man hoch oder runterschrauben kann. mysql liefer ein paar default-konfigurtionsdateien für Rechner mit wenig7mittel/viel RAM die man als Ausgangspunkt nutzen kann. Darüberhinaus muß man sich die Statusvariablen im Betrieb (oder einer simulierten Testumgebung) anschauen, und entsprechend weiter anpassen. Aktuelle Versionen von phpmyadmin bieten bspw. direkt neben den Statusvariablen allgemeine Hinweise wann ein Wert "schlecht" sein könnte, und wie man dem entgegenwirken kann.

Ob du nebenher noch Mail vershickst auf dem Server mit der DB hat auf die Konfiguration des DB-Engine keinen so großen Einfluß (mußt natürlich entsprechend RAM "übrig" lassen). Ob der Mailserver allgemein beser auf dem DB- oder dem Webserver aufgehben ist, kann man pauschal nicht sagen - allerdings wird es in den meisten Fällen keinen gravierenden Unterschied machen (es sei denn der Server ist an der Grenze seiner Kapazität). Ein getrennter Mailserver wird aber nicht die erhoffte Erleichterung bringen, wenn man den nur "hinstellt", die Mails aber weiterhin von den Skripten des Webservers gefüttert werden.