Extreme Datenbanklast, Slowqueries

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
allesweg
Mitglied
Beiträge: 148
Registriert: 06.09.2006 03:03
Wohnort: Hildesheim
Kontaktdaten:

Extreme Datenbanklast, Slowqueries

Beitrag von allesweg »

Hallo!

Ich hab derzeit Probleme, weil mein Forum extreme Lastspitzen erzeugt und deshalb bereits mehrmals vom Provider gesperrt wurde.

Laut Info ist es zum einem die Forensuche, die diese Probleme verursacht. Die Suche habe ich mittlerweile für Gäste gesperrt. Das hat aber keine ausreichende Abhilfe gebracht.
Nun wurde mit mitgeteilt, dass es Slowqueries (sind das langsame Datenbankabfragen???) sind, die die Datenbanklast produzieren. Als Beispiel wurde folgendes gepostet:
SELECT
f.forum_id, f.forum_name, t.topic_title,
t.topic_id, t.topic_last_post_id, t.topic_poster, t.topic_views,
t.topic_replies, t.topic_type,
p2.post_time, p2.poster_id,
u.username as last_username,
u2.username as author_username
FROM phpbb_forums f, phpbb_posts p, phpbb_topics
t, phpbb_posts p2, phpbb_users u, phpbb_users u2
WHERE
f.forum_id NOT IN
(048,9,17,30,31,32,33,41,42,49,71)
AND t.forum_id = f.forum_id
AND p.post_id = t.topic_first_post_id
AND p2.post_id = t.topic_last_post_id
AND t.topic_moved_id = 0
AND p2.poster_id = u.user_id
AND t.topic_poster = u2.user_id
ORDER BY t.topic_last_post_id DESC LIMIT 5;
# User@Host: db129374[db129374] @ localhost []
# Query_time: 5 Lock_time: 1 Rows_sent: 5 Rows_examined: 62998

SELECT
f.forum_id, f.forum_name, t.topic_title,
t.topic_id, t.topic_last_post_id, t.topic_poster, t.topic_views,
t.topic_replies, t.topic_type,
p2.post_time, p2.poster_id,
u.username as last_username,
u2.username as author_username
FROM phpbb_forums f, phpbb_posts p, phpbb_topics
t, phpbb_posts p2, phpbb_users u, phpbb_users u2
WHERE
f.forum_id NOT IN
(048,9,17,30,31,32,33,41,42,49,71)
AND t.forum_id = f.forum_id
AND p.post_id = t.topic_first_post_id
AND p2.post_id = t.topic_last_post_id
AND t.topic_moved_id = 0
AND p2.poster_id = u.user_id
AND t.topic_poster = u2.user_id
ORDER BY t.topic_last_post_id DESC LIMIT 5;
# User@Host: db129374[db129374] @ localhost []
# Query_time: 5 Lock_time: 1 Rows_sent: 5 Rows_examined: 62998

SELECT
f.forum_id, f.forum_name, t.topic_title,
t.topic_id, t.topic_last_post_id, t.topic_poster, t.topic_views,
t.topic_replies, t.topic_type,
p2.post_time, p2.poster_id,
u.username as last_username,
u2.username as author_username
FROM phpbb_forums f, phpbb_posts p, phpbb_topics
t, phpbb_posts p2, phpbb_users u, phpbb_users u2
WHERE
f.forum_id NOT IN
(048,9,17,30,31,32,33,41,42,49,71)
AND t.forum_id = f.forum_id
AND p.post_id = t.topic_first_post_id
AND p2.post_id = t.topic_last_post_id
AND t.topic_moved_id = 0
AND p2.poster_id = u.user_id
AND t.topic_poster = u2.user_id
ORDER BY t.topic_last_post_id DESC LIMIT 5;
Leider sagt mir das gar nichts :oops: Was ist das und wie wird es verursacht? Und vor allem, was kann ich ändern?


Ich habe auch die Bots in Verdacht, die sich irgendwie ständig im Forum tummeln. Dazu stelle ich aber noch eine Frage zu der robots.txt

Viele Grüße,

Anke
Zwei Dinge sind unendlich, das Universum und die menschliche Dummheit, aber bei dem Universum bin ich mir noch nicht ganz sicher. (A. Einstein)
Benutzeravatar
Mahony
Ehemaliges Teammitglied
Beiträge: 12179
Registriert: 17.11.2005 22:33
Wohnort: Ostfildern Kemnat
Kontaktdaten:

Re: Extreme Datenbanklast, Slowqueries

Beitrag von Mahony »

Hallo
Die Abfragen scheinen von deinem Recent Topics MOD zu stammen. Ich würde mal alle nicht unbedingt benötigten Statistiken (Recent Topics, wer war in den letzten fünf Minuten online) deaktivieren und dann dürfte die Last um einiges geringer werden.


Grüße: Mahony
Taekwondo in Berlin
Wer fragt, ist ein Narr für fünf Minuten, wer nicht fragt, ist ein Narr für immer.
allesweg
Mitglied
Beiträge: 148
Registriert: 06.09.2006 03:03
Wohnort: Hildesheim
Kontaktdaten:

Re: Extreme Datenbanklast, Slowqueries

Beitrag von allesweg »

Hallo,

erstmal Danke für die Antwort! Aber kann das denn echt sein?

ich mein, das Forum läuft ja nun 3 Jahre, die Zahl der täglich aktiven User ist seit mehr als einem Jahr relativ stabil bei ca.100/Tag. Die Mods habe ich von Anfang an und es gab nie Probleme. Warum jetzt?

Viele Grüße,

Anke
Zwei Dinge sind unendlich, das Universum und die menschliche Dummheit, aber bei dem Universum bin ich mir noch nicht ganz sicher. (A. Einstein)
coolsoft
Mitglied
Beiträge: 433
Registriert: 29.08.2005 21:14
Wohnort: Irgendwo im Nirgendwo

Re: Extreme Datenbanklast, Slowqueries

Beitrag von coolsoft »

Die Frage ist eher, was Dein Hoster meckert - kenn ich auf seriösen Webspaces nicht -
schlimmstenfalls wartetst Du halt auf die Seitenanzeige :roll:
allesweg
Mitglied
Beiträge: 148
Registriert: 06.09.2006 03:03
Wohnort: Hildesheim
Kontaktdaten:

Re: Extreme Datenbanklast, Slowqueries

Beitrag von allesweg »

Hm, naja, die meckern halt, weil ich Lastspitzen verursache die bewirken, dass andere Seiten, die auf dem gleichen Server liegen, nicht mehr erreichbar sind. Letzte Woche wurde mir zweimal die Datenbank gesperrt deswegen.

Heute habe ich diese Mail bekommen:
Sehr geehrte Frau XXX,

Mit dieser E-Mail möchten wir Sie über erneute Lastprobleme durch Ihren
Account xxxxx informieren.

Der Webserver, auf dem Ihr Account derzeit verwaltet wird, ist momentan
stark ausgelastet, so dass eine Performancebeeiträchtigung durch
Überlastung droht.
Unsere Überprüfungen der Ursache für die erhöhte Last haben ergeben,
dass Ihre Präsenzen die Ressourcen des Servers sehr stark für sich in
Anspruch nehmen, diese sind dadurch für andere Kunden nicht mehr
nutzbar. Aus diesem Grund mussten auch bereits Sperrungen erfolgen, die
allerdings keine Optimierungen Ihrerseits zur Folge hatten.

Wir freuen uns sehr für Sie, dass Sie solch erfolgreiche Internetseiten
bei uns betreiben, jedoch wird der Server durch die hohen Aufrufzahlen
Ihrer Skripte so stark beeinträchtigt, dass sich dadurch die
Webseitenauslieferung verzögert und die Abfragen an dem
MySQL-Datenbankserver langsamer verarbeitet werden. Dies hat längere
Ladezeiten anderer Kundenpräsenzen auf dem Server zur Folge.

Als Qualitätsanbieter ist es uns neben einem einwandfreien Service ein
großes Anliegen, unseren Kunden eine optimale Performance der bei uns
gehosteten Präsenzen zu gewährleisten, die Erreichbarkeit Ihres
Webservers allerdings droht momentan durch die Lasterzeugung Ihres
Accounts zu sinken.
Im Falle einer merkbaren Beeinträchtigung der Verfügbarkeit anderer
Webseiten auf dem Server wird eine Reaktion durch uns erforderlich, eine
erneute Sperrung Ihrer Seite müsste erfolgen.

Gerne möchten wir diese Maßnahme vermeiden, daher informieren wir Sie
bereits jetzt über die entstehenden Lastprobleme. Der Tarif
ManagedHosting M, den Sie bei uns bestellt haben, ist für die derzeitige
Lasterzeugung Ihres Accounts nicht mehr ausreichend, ein Wechsel auf
einen dedizierten Server wäre sinnvoll. Eine Übersicht unserer
dedizierten ManagedServer haben wir hier für Sie bereitgestellt:

http://www.xxx

Gerne helfen wir Ihnen weiter, wenn Sie Fragen zu den Tarifen oder Ihrem
Account haben. Wenn Sie wünschen können wir auch eine Analyse Ihres
Accounts vornehmen, um Ihnen den passenden Tarif empfehlen zu können.
Möglicherweise ist auch eine Optimierung der Datenbankabfragen und
Skripte aureichend, um die Lasterzeugung durch den Account anzupassen,
so dass Sie weiterhin Ihren Tarif ManagedHosting M nutzen können oder
ein Upgrade auf einen höheren Shared Hosting Tarif ausreichend ist.
Sofern wir Ihnen bei einer Optimierung behilflich sein können, werden
wir Ihnen hier gerne zur Seite stehen, damit Sie den bestmöglichen Tarif
für Ihren Account nutzen können.

Bitte zögern Sie nicht, sich bei Rückfragen oder Problemen jederzeit
gerne erneut an uns zu wenden. Denn wir sind immer für Sie da.

Mit freundlichen Grüßen

XXX
Technical Support
XXX
Also schon freundlich und bemüht. Und seriös ist DF eigentlich schon, denke ich.

Wäre mit dem Umstieg auf phpBB3 eine Verbesserung zu erwarten?

Viele Grüße,

Anke
Zwei Dinge sind unendlich, das Universum und die menschliche Dummheit, aber bei dem Universum bin ich mir noch nicht ganz sicher. (A. Einstein)
coolsoft
Mitglied
Beiträge: 433
Registriert: 29.08.2005 21:14
Wohnort: Irgendwo im Nirgendwo

Re: Extreme Datenbanklast, Slowqueries

Beitrag von coolsoft »

Df = Domainfactory?
würde mich sehr wundern
Benutzeravatar
Mahony
Ehemaliges Teammitglied
Beiträge: 12179
Registriert: 17.11.2005 22:33
Wohnort: Ostfildern Kemnat
Kontaktdaten:

Re: Extreme Datenbanklast, Slowqueries

Beitrag von Mahony »

Hallo
allesweg hat geschrieben:Hallo,
erstmal Danke für die Antwort! Aber kann das denn echt sein?
Ja, das kann sein. Die Angaben deines Hosters sprechen da eine eindeutige Sprache.
Query_time: 5 Lock_time: 1
allesweg hat geschrieben:ich mein, das Forum läuft ja nun 3 Jahre, die Zahl der täglich aktiven User ist seit mehr als einem Jahr relativ stabil bei ca.100/Tag.
Es geht dabei wohl mehr um die Anzahl der Foren, der Beiträge, der Usertabelle u.s.w. die durchsucht werden müssen. Die Gesamtheit der Abfrage macht die Last aus. Es wird dabei über mehrere Tabellen gesucht, wobei dabei scheinbar keine (MYSQL) indizes zur Wirkung kommen, was zur Folge hat dass bei jeder Abfrage die gesamten Tabellen (Spalten in den abgefragten Tabellen) durchsucht werden müssen (Rows_examined: 62998 - bedeutet dass hier 62998 Spalten durchsucht werden mussten).
allesweg hat geschrieben:Die Mods habe ich von Anfang an und es gab nie Probleme. Warum jetzt?

Viele Grüße,

Anke
Ganz einfach - weil dein Forum gewachsen ist und mehr Inhalt hat. Im übrigen kommt es dann auch noch darauf an, wie viele deiner User gleichzeitig auf das Forum zugreifen.

Abhilfe würden hier nur Optimierungen der Abfragen, setzen von benötigten indizes oder (falls Optimierungen nicht möglich sind) abschalten der Abfragen (Statistiken) bringen.

@coolsoft - Für Bewertungen von Hosting Angeboten ist hier nicht der richtige Ort. Dazu gibt es genug andere Foren.

Grüße: Mahony
Taekwondo in Berlin
Wer fragt, ist ein Narr für fünf Minuten, wer nicht fragt, ist ein Narr für immer.
allesweg
Mitglied
Beiträge: 148
Registriert: 06.09.2006 03:03
Wohnort: Hildesheim
Kontaktdaten:

Re: Extreme Datenbanklast, Slowqueries

Beitrag von allesweg »

Hallo,

vielen Dank für die ausführliche Antwort.

Wie verwirklich ich deine Vorschläge, also die Optimierung der Abfragen, das Setzen von Indizes oder das Abschlaten der Abfragen?

Viele Grüße,
Anke
Zwei Dinge sind unendlich, das Universum und die menschliche Dummheit, aber bei dem Universum bin ich mir noch nicht ganz sicher. (A. Einstein)
Benutzeravatar
Mahony
Ehemaliges Teammitglied
Beiträge: 12179
Registriert: 17.11.2005 22:33
Wohnort: Ostfildern Kemnat
Kontaktdaten:

Re: Extreme Datenbanklast, Slowqueries

Beitrag von Mahony »

Hallo
Das ganze ist nicht so trivial, wie du anscheinend glaubst. Zur Optimierung muss man die Abfragen genau analysieren, die Verwendung der indizes von MYSQL überprüfen, die Abfragen dann den Ergebnissen entsprechend anpassen (optimieren) u.s.w.

Lies dir mal diese Artikelserie durch
1. SQL-Optimierung: Indizes richtig einsetzen
2. SQL-Optimierung: Indexnutzung in Queries manuell steuern
3. SQL-Optimierung: Tabellen und Spalten anpassen
4. SQL-Optimierung: Daten effizient in Tabellen einfügen
5. SQL-Optimierung: Manuelles Priorisieren und Sperren
6. SQL-Optimierung: Server richtig konfigurieren

Du kannst natürlich auch eine Anfrage in die Jobbörse stellen, oder eben einfach die MODs welche die Last erzeugen einfach ausbauen.



Grüße: Mahony
Taekwondo in Berlin
Wer fragt, ist ein Narr für fünf Minuten, wer nicht fragt, ist ein Narr für immer.
allesweg
Mitglied
Beiträge: 148
Registriert: 06.09.2006 03:03
Wohnort: Hildesheim
Kontaktdaten:

Re: Extreme Datenbanklast, Slowqueries

Beitrag von allesweg »

Hallo,

danke schön für die Liste [ externes Bild ]

Ich beiße (ähm lese) mich da durch. An den Mods, gerade an den Recent Topics hänge ich wirklich, das wäre nur die allerletzte Lösung. Ich glaube dir, dass es nicht trivial oder einfach ist. Aber bisher hab ich eigentlich alles hinbekommen. Mit viel fragen, lernen und ausprobieren ;)

Viele Grüße,
Anke
Zwei Dinge sind unendlich, das Universum und die menschliche Dummheit, aber bei dem Universum bin ich mir noch nicht ganz sicher. (A. Einstein)
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“