Archief - PHP: includen

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Incinnerator

Legacy Member
Yu Allemaal

Wat is het beste op basis van snelheid , handigheid?

wanneer een persoon een nieuwspagina bekijkt telkens die query te laten uitvoeren
of dat je misschien beter bij het adden van het nieuws een pagina schrijft waar al het nieuws instaat en om dan te includen

bedankt

Dece

Legacy Member
voor grotere sites met vele 100'en bezoekers is het voor de server idd minder belastend dat als er iedere keer dat er een nieuwspost of comment bij komt een text file wordt gegenereerd.

Maar voor een kleine clansite of dergelijke denk ik niet dat het echt 'rendabel' is om telkens die code te generen. de meeste bezoekers geven toch een comment of dergelijke.
Hier blijf je dus beter bij de queries die telkens worden uitgevoerd.

servi

Legacy Member
het hangt er een beetje van af.

zo'n cachesysteem is zeer efficient als de data enkel veranderd door bijvoorbeeld de nieuwsposters.

Als er echter bijvoorbeeld bijstaat hoeveel comments er zijn op die nieuwspost en je dus elke keer dit aantal moet aanpassen zodra iemand iets post kan dit voor grote sites wel eens een averechts effect hebben ( constant updaten van de cache-pagina )

als algemene regel : dit is zeer efficient als slechts een beperkt aantal mensen ervoor kunnen zorgen dat de cache-pagina veranderd en is redelijk inefficient als er een hele hoop mensen ervoor kunnen zorgen dat de cache-pagina veranderd.

om nu eventjes als voorbeeld games.telenet te nemen :
het forum : on-the-fly doen
de nieuwspagina : on-the-fly
de links-pagina : via cachepagina
de (p)reviews en specials paginas : via cache-pagina
de serverspagina : on-the-fly
enzovoort ...

icerulez

Legacy Member
je kunt natuurlijk ook een combinatie van de 2 nemen hé. Stel je cachet de nieuwsberichten, maar laat het aantal comments variable, dan moet alleen maar het aantal comments getelt worden ipv de ganse zooi van nieuwsberichten op te halen.

dJeez

Legacy Member
servi zei:
de nieuwspagina : on-the-fly
Deze zou 'k ook cachen eerlijk gezegd. En de cache ongeldig maken als er een nieuwsitem toegevoegd word. Het is nl. maar enkele keren per dag dat die pagina bijgewerkt zal worden, ze zal echter veel regelmatiger opnieuw opgevraagd worden. En dat er desnoods een verschil opzit van pakweg een kwartier stoort toch ook niet echt imho (maar je kan ze ook direct ongeldig maken als er een nieuw item werd toegevoegd hé)...

Zeker bij sites met veel bezoekers loont het om de frequent bezochte pagina's die niet constant wijzigen te gaan cachen. Ofwel (als 't gaat om dedicated hosting) er vb. een reverse proxy tussenzetten (die trouwens op dezelfde fysische machine kan draaien), dat maakt ook al een enorm verschil qua load naar de server toe. Nu ja, zoiets moet je uiteraard geval per geval gaan bekijken. Het beste wat je kan doen is benchmarks te maken van de oplossing met en zonder caching en die te vergelijken om te zien of 't sop de kolen wel waard is.

BTW Check zeker Smarty eens -> http://smarty.php.net

servi

Legacy Member
Deze zou 'k ook cachen eerlijk gezegd. En de cache ongeldig maken als er een nieuwsitem toegevoegd word. Het is nl. maar enkele keren per dag dat die pagina bijgewerkt zal worden, ze zal echter veel regelmatiger opnieuw opgevraagd worden. En dat er desnoods een verschil opzit van pakweg een kwartier stoort toch ook niet echt imho (maar je kan ze ook direct ongeldig maken als er een nieuw item werd toegevoegd hé)...

je vergeet wel dat op games.telenet het aantal comments erbij staat en dit constant verandert, dan zou je constant moeten updaten en dat is ook niet echt handig.

het beste daarvan is een semi-dynamische aanpak te nemen door bijvoorbeeld om de 3 minuten een cache-pagina te maken ( matrix heeft me ooit eens verteld dat het inderdaad zo wordt gedaan, maar dat in plaats van 3 minuten het op 1 minuut staat), maar ik wou me enkel beperken in het voorbeeld tot zwart-wit en grijs niet vermelden ;)

dJeez

Legacy Member
servi zei:
je vergeet wel dat op games.telenet het aantal comments erbij staat en dit constant verandert, dan zou je constant moeten updaten en dat is ook niet echt handig.
Idd, zo zie je maar hoe vaak ik die pagina al heb gezien... Mea culpa. Maar dat doet geen afbreuk aan de rest van 't episteltje hé - integendeel, je bevestigt het gewoon :p.

Nu ja, er zijn altijd 1001 manieren om iets op te lossen, de beste methode is ze uit te testen en te zien hoe de server zich gedraagt in reële omstandigheden met de verschillende oplossingen. Maar niet iedereen (bijna niemand dus) kan zich de luxe permitteren om die tests te gaan doen. Meestal pikt men er gewoon eentje uit op basis van eigen ervaringen in het verleden of op basis van verwachtingen. Blijkt die niet te voldoen na een bepaalde periode kan men dan nog andere oplossingen hanteren tot er eentje gevonden is die degelijk werkt voor dat specifieke geval.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan