Wie oft sollten Apache und MySQL neu gestartet werden (insbesondere mit 150.000 Treffern pro Woche), und was wäre der tatsächliche Vorteil eines Neustarts zu jeder bestimmten Zeit?
quelle
Wie oft sollten Apache und MySQL neu gestartet werden (insbesondere mit 150.000 Treffern pro Woche), und was wäre der tatsächliche Vorteil eines Neustarts zu jeder bestimmten Zeit?
Wenn Ihr System ordnungsgemäß optimiert ist und Ihre Anwendung keine Probleme wie Speicherlecks aufweist, sollten Sie diese immer nur neu starten müssen, um Patches anzuwenden.
Apache und MySQL sollten für sich genommen frei von Speicherlecks sein. Die meisten Datenbankserver laufen besser, je länger sie aktiv sind. Module, die wie PHP in Apache kompiliert werden, weisen jedoch häufig Speicherlecks auf.
Das Apache mpm-Modul recycelt Prozesse automatisch nach 10.000 Anforderungen. Sie können das MaxRequestsPerChild
in etwas anderes ändern , aber 10.000 ist eine vernünftige Standardeinstellung.
Apache muss nicht regelmäßig neu gestartet werden. noch sollte MySQL.
Apache, der im Prefork-Modus ausgeführt wird, kann seine untergeordneten Prozesse mithilfe von MaxRequestsPerChild recyceln. Dies ist eine gute Sache, da es sich gegen langsame Speicherlecks usw. schützt.
MySQL sollte nicht regelmäßig neu gestartet werden, da ein Neustart zu einem Dienstausfall führt. Beim Neustart von MySQL muss auf den Start der Engines gewartet werden. Außerdem wird der Cache geleert, wodurch die Leistung beeinträchtigt wird, bis sie sich erwärmt. Wir scheinen festzustellen, dass es aufgrund der Fragmentierung des Adressraums von Zeit zu Zeit neu gestartet werden muss [1] , aber dies sollte auf einem 64-Bit-System nicht so häufig vorkommen, auf das neue Installationen immer angewendet werden sollten.
[1] zB alle 9 Monate auf einem ausgelasteten Server mit durchschnittlich> 100 Abfragen pro Sekunde
quelle
Sie sollten MySQL aus Leistungsgründen nach Möglichkeit nicht neu starten. MySQL verwendet viel Speicher, um Datenseiten und Indizes zwischenzuspeichern. Wenn Sie MySQL neu starten, werden alle zwischengespeicherten Seiten freigegeben und Sie benötigen einige Zeit, um die Caches aufzuwärmen . Auf stark ausgelasteten Sites kann ein Neustart der Datenbank zu Leistungsproblemen führen.
Ihre Site ist nicht stark ausgelastet (150.000 Zugriffe pro Woche ergeben nur 1 / 4s), sodass ein Neustart von MySQL keine großen Probleme verursachen sollte.
quelle
Um zu verstehen, wann ein System oder ein Dienst neu gestartet werden muss, müssen Sie zunächst verstehen, warum. Speicherlecks sind der häufigste Grund, aber es kann auch andere geben, z. B. schlecht geschriebene Software (allzu häufig!), Die keine ordnungsgemäße interne Verwaltung durchführt, z. B. das Schließen von Dateihandles, wenn sie nicht mehr benötigt werden. Obwohl dies nicht mit einem Speicherverlust identisch ist, sind die Symptome dieselben. Sowohl Apache als auch MySQL sind bekanntermaßen sehr stabil (es sei denn, Sie führen eine Alpha- oder Beta-Version aus) und können jahrelang ohne Probleme ausgeführt werden. Normalerweise muss das Betriebssystem neu gestartet werden, um Patches anzuwenden, lange bevor eine der beiden Anwendungen dies erfordert.
quelle