Follow along with the video below to see how to install our site as a web app on your home screen.
Anmerkung: This feature may not be available in some browsers.
Original von Elderan
Denn mit schelchten Scripts (d.h. schlechte SQL Abfragen, die auf eine große Datenmenge losgelassen werden und häufig ausgeführt werden) kann man selbst den besten konfigurierten Root Server in die Knie zwingen.
Oh das ist natürlich schlecht, insbesondere wenn noch das deutsche zusätzlich ist. Deutsch ist eben nicht so eine einfache Sprache wie englisch, d.h., für die selbe Aussage muss man oft deutlich mehr schreiben => Performance Killer.Apache
- Sprache wird english und in deutsch verwendet.
Das ist längst nicht ausreichend. Oft werden SQL Anweisungen auch in Schleifen an die DB gesendet (z.B. SELECT userid, text FROM posts, dann in der Schleife zur Ausgabe der Posts: SELECT username FROM users WHERE userid = $meineUserId)Bei den vielen WHERE abfragen arbeite ich bereits mit indexes.
Die Plesk-Screenshots helfen da wenig. Da solltest du besser ein Statistik-Tool wie Munin oder Cacti verwenden um solche Daten zu ermitteln. Plesk ist dafür total ungeeignet. Das Ganze könnte dann z.B. so aussehen: http://munin.habolinux.de/localdomain/localhost.localdomain.html Wie willst du Performance-Killer finden, wenn du keine statistischen Daten der Performance hast?Original von skymuss
- Wieviele Requests pro Minute hast du im Durchschnitt?
- Wie gross sind die Requestschwankungen in Zeiträumen von 5 Minuten, einer Stunde und einem Tag?
- Wie sehen die VHost-Einstellungen aus? - Welcher Apache-Worker ist im Einsatz?
- Welche Last hat der Server im Durchschnitt == Weis ich leider nicht.
- Die CPU steht so bei 20%
- Welche Hardware wird am meisten belastet (CPU, RAM oder Festplatte)?
Ich hab mal ein paar plesk screenshots gemacht:
Original von skymuss
- Benutzt die Webapplikation Memcaching? = Was ist Memcaching ?
Sowas sollte man als DB-Admin aber im Blick haben. Schau in's Daten-Verzeichnis deiner Datenbank. Dort liegen MYI-Dateien für die Tabellen rum. Dies sind die Index-Dateien, an deren Grösse man sich orientieren kann. Als Faustregel gilt: die Grösse aller MYI-Dateien zusammen sollte in den RAM passen + natürlich weiterer RAM für die Applikationen, die laufen.Original von skymuss
MySQL:
- Wie gross ist der grösste Tabellen-Index?= weis ich nicht
- Wie gross sind alle Tabellen-Indizes zusammen? = weis ich nicht
Also 3GB.Original von skymuss
- Welchen Datenzuwachs hast du am Tag? = keinen all zu großen
Beim Clustering arbeiten mehrere Datenbank-Server parallel. Anfragen werden also von mehreren Maschnen paralllel abgearbeitet.Original von skymuss
- Sind Techniken wie Replikation oder Clustering im Einsatz? (Deiner Konfiguration nach würde ich auf nein tippen) = Was ist Clustering ?
Auch da sollten etwas genauere Angaben her. Oben genannte Tools können das Anhand der Logs und Socket-Zugriffe ermitteln.Original von skymuss
- Wieviele Queries gibt es im Durchschnitt pro Sekunde sowie maximal und minimal am Tag? = ich bin mir sicher das es ziemlich viele kleine sql abfragen gibt
Unter Slow-Queries versteht man DB-Abfragen, die besonders lange dauern. Diese kann man in den Slow-Query-Logs sehen, allerdings müssen die erstmal aktiviert sein. Die MySQL-Doku wird dir dabei helfen.Original von skymuss
- Welche Slow-Queries gibt es? (slow-query-logging aktivieren) = was sind slow Queries ?
Woran machst du das Fest? Ein Server mit 2GB RAM und 2 GHz kann selbst mit Default-Konfiguration problemlos bis zu 100 Zugriffe pro Sekunde abarbeiten, wenn die Applikation keine Bottlenecks bildet und die DB-Indizes in den RAM passen. Nach deinen bisherigen Aussagen (keinen grossen Datenzuwachs, 20% CPU-Last usw.) glaube ich aber nicht, dass du eine solche Anzahl erreichst. Ich glaube daher nicht, dass das Problem in der Konfiguraton liegt, auch wenn man da sicherlich noch einiges optimieren könnte (Buffer-Grössen der MySQL optimieren, Prefork-Worker optimieren usw.). Allerdings sind dazu schon ein wenig mehr Kenntnisse als ein bisschen Plesk-Klickibunti notwendig. Schnapp dir also die Doku von Apache und MySQL, setze dir ein Statistik-Tool auf mit dem du Performance-Daten sammeln kannst und lerne lerne lerne. Bis du damit fertig bist, hole dir jemanden, der sich damit auskennt. Ansonsten gilt: http://root-und-kein-plan.ath.cx/ Das solltest du mal lesen um dir allein schon der Gefahren eines Rootservers mal bewusst zu werden. 100MBitler sind keine Spielzeug für Noobs. Wie Elderan schon sagte, kann es nämlich bei deinem Kenntnisstand durchaus sein, dass dein Server bereits Teil eines Botnetzwerks ist und deswegen unter so hoher Last steht. 20% Dauer-CPU-Last sind nämlich recht ungewöhnlich bei einem Webserver, der fast nie auf den ganzen Tag verteilt gleichmässig belastet ist.Original von skymuss
MySql und Apche Konfiguration gibt es eindeutig ein nadelohr.
Ich glaube, dass es an der applikation usw SQL - Abfragen nicht liegen wird ;-)