Thompa__85 skrev:
Tror ni att jag skulle spara mycket laddningstid i detta?
Ja, det borde du göra. För lösningar, sökord="paging"
8 svar · 388 visningar · startad av Thompa__85
Hejsan Wf!
Först vill jag passa på att säga att jag tycker att uppdateringen av forumet blev kanon!
Nu till mitt problem! På min sajt laddas gästböckerna grymt slött, och självklart drabbar det endast dom med många inlägg, för dom med få laddas det snabbt som ögat. Rätt logiskt.
Problemet är att jag hämtar alla inlägg... jag skriver ut alla sidor så man kan läsa inlägg som är flera år gamla. Det jag önskar skulle vara att man kan kika på 25 sidor, samt en länk av typen "Visa äldre" där sida 26-50 visas osv, dock ska inte dom första laddas om och heller inte dom efter. Förstår ni?
Tror ni att jag skulle spara mycket laddningstid i detta?
Thompa__85 skrev:
Tror ni att jag skulle spara mycket laddningstid i detta?
Ja, det borde du göra. För lösningar, sökord="paging"
Tackar!
Men nått jag funderar lite på är detta:
Trots att jag nu endast hämtar ett visst antal inlägg, istället för alla, så blir ibland laddningstiderna enorma...
Ibland är jag nere på 0.5 sekunder, ibland 1, ibland 19! Lixom, förstår inte differansen riktigt. Och detta testas utan extrema förhållande med besökare och inom loppet av någon minut..
Jag gör som så att jag hämtar all data, lägger in det i en array och sedan loopar jag ut innehållet.
Bifogar ett dokument så får ni se..
Vad kan jag optimera för bättre resultat?
Finns det något annat system för att loopa ut inläggen, som dessutom är snabbare än den jag använder?
Problemet verkar vara att det fortfarande är för många poster i databasen. Din optimering går ju ut på att endast plocka x antal poster till din asp-sida, men sql-utsökningen måste lik förbannat kolla igenom hela din tabell (med x antal år gamla poster). Lösningen kan vara att du ser till så att du har rätt index på tabellen eller att du helt enkelt flyttar bort gamla poster till ett arkiv (dvs en annan tabell).
desdecado skrev:
Problemet verkar vara att det fortfarande är för många poster i databasen. Din optimering går ju ut på att endast plocka x antal poster till din asp-sida, men sql-utsökningen måste lik förbannat kolla igenom hela din tabell (med x antal år gamla poster). Lösningen kan vara att du ser till så att du har rätt index på tabellen eller att du helt enkelt flyttar bort gamla poster till ett arkiv (dvs en annan tabell).
Hej! Tack för ditt svar!
Ja, det skulle mycket väl kunna vara så! Vad menar du med rätt index?
Annars gör jag nog som så att jag flytter gamla inlägg till ett arkiv, om nu inte Index är ett alternativ?
Frågan om Index kan du ta i sql delen av detta forum. Men för att snabbt förklara; om du sätter ett index på en speciell kolumn i din tabell så kommer databasen att hålla reda på hur tabellen ser ut sorterad enligt den kolumnen. Anta att du vill tex hämta ut tex persondata ur en tabell med personernas namn som villkor (WHERE). Om du hämtar alla som hetter "nisse" så måste databasen gå igenom hela tabellen för att vara säker på att få tag på alla nisse. Om du däremot skulle ha ett namnkolumnen indexerad (dvs "försorterad") så kan databasen hoppa rakt ner till de rader som har namnet nisse. Sparar en massa tid. Men som sagt; det är inte en fråga för detta forum egentligen.
Index är inget alternativ; index ska man ha ändå! :)
desdecado skrev:
Frågan om Index kan du ta i sql delen av detta forum. Men för att snabbt förklara; om du sätter ett index på en speciell kolumn i din tabell så kommer databasen att hålla reda på hur tabellen ser ut sorterad enligt den kolumnen. Anta att du vill tex hämta ut tex persondata ur en tabell med personernas namn som villkor (WHERE). Om du hämtar alla som hetter "nisse" så måste databasen gå igenom hela tabellen för att vara säker på att få tag på alla nisse. Om du däremot skulle ha ett namnkolumnen indexerad (dvs "försorterad") så kan databasen hoppa rakt ner till de rader som har namnet nisse. Sparar en massa tid. Men som sagt; det är inte en fråga för detta forum egentligen.
Index är inget alternativ; index ska man ha ändå! :)
Åfan, det har jag missat totalt, så jag som driver Community där jag ofta söker igenom stora tabeller BÖR ha index alltså?
Du bör indexera alla kolumner som du har med i WHERE-villkor eller som du gör ORDER BY på.
Fördelen med index är att det går mycket snabbare att läsa data från databasen. Nackdelen är att det tar lite längre tid att updatera databasen (då den måste skapa om indexet för varje INSERT eller UPDATE du gör).... men antagligen så gör man många gånger fler select än insert/update så visst tjänar man på det.