|
Categorieën >
PHP & SQL
Hoeveel select opdrachten
|
|
|
offline
|
Nieuw lid
|
Hoi,
Hoeveel select opdrachten kan je geven zonder dat het een belasting voor de pagina wordt ?
Ik heb er meer dan 600 gegeven (en dit op elke van 1.000 pagina's), maar dat bleek veel te veel. Ook omdat de site dagelijks 3.000 bezoekers trekt.
|
5 antwoorden
Koen – 01/09/2010 20:18
|
|
offline
|
Community Manager
|
Dit hangt helemaal af van de hoeveelheid data die je elke keer uit de database haalt. Als je 600 queries per pagina uitvoert zou ik toch je code nog eens herzien als ik jou was, het zou wel eens kunnen dat je verscheidene dingen veel gemakkelijker kan schrijven. (Afhangende van jouw systeem, natuurlijk.)
|
|
|
|
offline
|
Crew PHP
|
Ik weet niet of je gebruik maakt van LIMIT, maar als je bv maar 1 ding nodig hebt, kun je LIMIT 1 in je query zetten, op grote schaal helpt dat zeker wel. En als je SELECT * doet kun je beter de ster vervangen door kolomnamen die je nodig hebt, ook dat is sneller.
Gewoon optimaliseren dus, want ik kan me niet echt voorstellen dat je zoveel queries nodig hebt om een pagina te laden
|
|
|
|
offline
|
PHP interesse
|
Klinkt mij ook inderdaad wat absurd in de oren. Je moet ook opletten dat je geen gegevens gaat ophalen die je al hebt... Sla die dan op in (indien nodig een PHP.net: global) een variabele...
Mocht je echt al die queries nodig hebben dan heb je gewoon een zeer zware server nodig. Ik heb daar zelf niet zoveel ervaring mee, maar je kunt vast eens googlen naar een VPS met veel RAM en een moderene processor, of misschien meerdere.
|
|
|
|
offline
|
PHP beginner
|
Zoals mijn voorgangers zeiden "optimaliseren", het is ook voor mij echt absurd om 600 queries. Als die queries altijd moeten uitgevoerd worden, dan kan je best eens gaan zien voor een virtuele tabel van te maken. Dit soort tabellen heten "views", bijna elke database kent dit wel.
Google eens rond voor Views te kunnen gebruiken, heb dit zelf ook al veel gebruikt en is super handig wanneer je bijvoorbeeld meerdere tabellen telkens met elkaar gaat linken.
|
|
|
|
offline
|
Erelid
|
Of stort je eens op een framework, die dingen hebben meestal ingebouwde caching en dergelijke daarvoor.
Ik weet nog dat je met cakePHP onderaan kon zien welke queries je uitgevoerd had en zo, zelfs al haal je dertig keer hetzelfde op, die query kwam er maar 1 keer bij.
|
Dit onderwerp is gesloten.
|
|
|