Moin Moin!
Die Site 'hängt' hin und wieder und läd' sich nen Wolf. Wenn ich die
selbe Site dann in einem anderen Browser öffne, funktioniert alles
reibungslos.
Netzwerkprobleme?
Das hatte ich erstmal auf meine Programmierung geschoben, die sicher
nicht die performanteste ist. Nun stelle ich aber gerade fest, dass
exakt dieses Verhalten auch auftritt, wenn ich mit MySQL-Admin ein
Select-Statement absetze (, das ich als eigentlich nichts als besonders
einstufe:SELECT
s.*,
c.*,
u.*,
u2.*
FROMstructure
s
JOINcontent\_offline
c ON s.site_id = c.site_id
JOINmeta\_user
u ON c.owner_id = u.id
JOINmeta\_user
u2 ON c.user_id = u.id
Ein Join über vier Tabellen (3 + ein self join). Je nach dem, wie voll die Tabellen sind, und wie gut oder schlecht Indexe angelegt sind, kann man damit auch richtig fette Datenbanken in die Knie zwingen.
Du solltest mindestens auf allen Spalten, die in den Join-Bedingungen vorkommen, Indexe haben.
Dann ziehst Du gnadenlos sämtliche Tabellenspalten aus der DB, in aller Regel brauchst Du die nicht alle. Alles, was Du nicht selektierst, spart Arbeit. Schmeiß also die Sterne weg und schreib rein, was Du wirklich haben willst.
Und bist Du sicher, dass Du für den letzten Join wirklich u.id und nicht u2.id benutzen willst? Mit u statt u2 dürfte die Ergebnismenge vermutlich unerwartet groß werden.
... und bei MySQL-Admin würde ich vermuten, dass das schon einigermassen
vernünftig programmiert ist.
*PRUST*
Alexander
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".