Forum loadtimes mm.

Tags:    php

Hej udviklere,

Jeg er på det seneste begyndt at tænke meget på loadtimes af sider da jeg selv hader når det går "langsomt" og tænkte i forbindelse med skabelsen af et forum på følgende..

Vil det kunne betale sig at lave en row i databasen Forum_Topics som heder Replies som bliver sat en op hvergang der bliver postet en reply, eller er det smatest bare at bruge

Fold kodeboks ind/udKode 


Det jeg tænker mest på er når forumet bliver lidt stort med tiden hvor lang tid det vil tage at loade hvis den skal lave select * from... for hvert topic for at vise hvor mange replies der er. Det er klart at der vil være et limit på 50 topics or so i forbindelse med næste side.



5 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 2 karma
Sorter efter stemmer Sorter efter dato
Hey Frank,
du kan bruge count hvis du bare vil vide hvor mange replies der er til en thread :)

Fold kodeboks ind/udKode 

http://dev.mysql.com/doc/refman/5.0/en/counting-rows.html



23k indlæg * 5 kommentarer (gennemsnit) er ingenting! Når du begynder at have op mod 2 millioner vil du kunne mærke en forskel.

Selvfølgelig vil der altid være en forskel på at hente eet tal og generer et tal ud fra en masse rækker. Men det er minimalt. Det der derimod æder tid er selve sql-kaldet, samt de flaskehalse du får lavet ved fejl eller dårlig kodning. :)

Men du kan evt. prøve at stress-teste. Eller bruge PHPUnit(bruger det ikke selv).

Stress-testning består i bund og grund af at simulere en masse brugere der foretager den samme forespørgelse en gang.
Så kan du derfra se, hvad der er hurtigst.



og så kan du gøre det med en sql sub-select:

Fold kodeboks ind/udKode 




Indlæg senest redigeret d. 21.09.2007 14:42 af Bruger #10216
Ja det er jeg godt klar over. Jeg tænker mere på loadtimes på forumet.

Lad os sige at Forum_Topics efter 3 år indeholder 23.000 threads. Vil der være stor forskel på at kigge disse 23.000 threads igennem for en parameter, fremfor at hente et tal fra databasen som bliver opdateret hver gang der bliver lavet et nyt topic?

Jeg kan leve med et sekund, men tænker mere i stil med at der går 5 sekunder hver gang man skal skifte side eller bevæge sig rundt i forumet.



Okay. Tak for svaret.



t