Seite 1 von 2
langsamer und immer langsamer :-(
Verfasst: 12.03.2004 11:41
von 198423
hi!
ich hab nen amd duron 1400 mit 256 mb ram als rootserver und ein phpBB 2.0.6. mit gzip-komprimierter datenbank (240mb).
wenn man bei mir ein posting absenden will dauert das inzwischen teilweise 10-40 sekunden (kein witz). editieren von beiträgen dauert auch locker so 20-30 sekunden bis es weiter geht.
was kann ich da machen?
klar mehr ram wäre gut, aber wieviel und kann man noch was anderes machen? das forum hat so etwa 170.000 beiträge.
Verfasst: 12.03.2004 11:46
von PhilippK
Welche phpBB-Version verwendest du? Mit welcher Datenbank läuft das ganze?
Ich vermute, dass das Problem vor allem in der Suchfunktion liegt, die wohl so langsam Performance-Probleme bekommt.
Gruß, Philipp
Verfasst: 12.03.2004 11:52
von 198423
also benutzen tue ich phpBB 2.0.6 mit zahlreichen mods die datenbanke ist mysql frag mich nciht wleche version

diejenige die mit suse 8.1 ausgeliefert wurde (patchen tue ich aber sehr wohl).
die suche geht eigentlich. das dauert eben ein paar sekunden. das finde ich nicht schlimm. zudem sucht man ja nicht andauernd. aber warum das abschicken eines postings inzwischen ne halbe minute dauern kann? wie viele postings verkraftet phpBB denn?
kann ich irgendwas bei mysql optimieren?
habe da früher oft dran rumspielen müssen da die einstellungen so waren, dass bei über 30 benutzern gleichzeitig der server nicht mehr zu erreichen war. nun können sogar 60 gleichzeitig im forum sein.
Verfasst: 12.03.2004 12:15
von PhilippK
Das Problem ist ja nicht das Suchen selbst sondern der Aufbau des Suchindexes. Evtl. kann ein Update auf MySQL 4 helfen.
Ansonsten: Prüf doch mal bitte, ob in der phpbb_search_wordlist ein Index auf word_text (Primärschlüssel) und auf word_id gesetzt ist. Gleiches in der phpbb_search_wordmatch auf word_id und post_id.
Ggf. auch mal den DB Maintenance Mod rüberlaufen lassen.
Gruß, Philipp
Verfasst: 12.03.2004 12:47
von 198423
okay danke, werde ich nachschauen und gegenebenfalls ändern. wärest du noch so lieb und könntest mir was dazu erklären? wie funtkioniert das mit den index zeug und warum soll man den primärschlüssel erweitern?
Verfasst: 12.03.2004 13:24
von PhilippK
In der Kurzform: phpBB generiert für jeden Beitrag einen Suchindex, der zum einen aus einer Tabelle mit den Wörtern besteht, zum anderen aus einer Liste mit Verknüpfungen Beitrag-Wort. Bei der Suche wird nach den IDs der gesuchten Wörter gesucht und dann in der Verknüpfungs-Tabelle nach den Beiträgen. Das beschleunigt die Suche gewaltig (unter 1.x hat die Suche teilweise Minuten gedauert).
Der Index ist nun wieder eine Hilfe von MySQL, um die Datensätze schneller aufzufinden. Wenn da einer fehlt, kann das gewaltig an Performance kosten.
Gruß, Philipp
Verfasst: 12.03.2004 13:42
von 198423
puuh. ich habe in der wordlist: 225197 datensätze. das heißt also, dass er für JEDES wort nen eigenen datensatz samt id macht.
und in der wordmatch hab ich 5334835 datensätze.
wie zum teufel kann sowas denn performant sein

????
die erste sql abfrage muss dann ja eine suche über 225197 datensätze nach der id machen und die zweite muss die id finden und dabei 5334835 druchwühlen.
da hätte ich mir die suche in 170.000 posting datensätzen aber irgendwie schneller vorgestellt.
und das problem ist jetzt das, dass er bei einem langen neuen posting erst mal jedes wort mit post_id in die wordmatch tabelle schreiben muss. sprich mehr hauptspreicher wird mir nix bringen denn spätestens wenn ich 300.000 postings habe ist die wordmatchtabelle jawohl viele viele viele millionen einträge groß....*grübel*....
Verfasst: 12.03.2004 14:42
von PhilippK
Also große Suchtabellen sind eigentlich normal - und auch hier dürften die Tabellen in einem ähnlichen Bereich liegen. Dass das ganze schnell geht, ist Aufgabe der Indizes - ein ähnlicher Trick wie beim Lexikon - da fängst du ja auch nicht bei 'a' an, wenn du was über 'Zahlen' haben willst.
Prüf das mal mit den Indizies - da könnte dein Problem liegen.
Gruß, Philipp
Verfasst: 12.03.2004 14:46
von 198423
vielen lieben dank, dass du dir so viel zeit nimmst!!!! danke!
letzte blöde frage:
was genau macht dein DB Maintenance Mod eigentlich.
ändert es was an der datenbank so dass der umstieg auf 2.2 probleme machen könnte?
Verfasst: 12.03.2004 15:36
von PhilippK
198423 hat geschrieben:was genau macht dein DB Maintenance Mod eigentlich.
Das ist eine imho recht umfangreiche Toolsammlung, mit der Inkonsistenzen in der Datenbank aufgespürt und beseitigt sowie ein paar Optimierungen vorgenommen werden können.
198423 hat geschrieben:ändert es was an der datenbank so dass der umstieg auf 2.2 probleme machen könnte?
Eher andersrum
Gruß, Philipp