Ik genereer momenteel met een PHP script dynamisch plaatjes. De plaatjes worden aangeroepen als een png en met RedirectMatch doorgesluisd naar een PHP Script. Dit php script genereert dan het plaatje en output deze naar bv. de browser.
Omdat de meeste plaatjes eigenlijk maar om de paar uur veranderen leek het me wel handig om deze te gaan cachen. Ik zou dus een nieuw plaatje genereren zodra er nieuwe data aangeleverd worden.
Nu vraag ik me volgende dingen af:
- Verwijder ik de RedirectMatch en plaats de plaatjes op de virtuele locatie van nu?
- Wat gebeurt er als er een plaatje opgevraagd word net als ik deze aan het overschrijven ben?
Ik dacht dus aan het volgende:
1. Ik schrijf de plaatjes zodra er nieuwe data aangeleverd wordt.Ik hoef de data in principe dus ook niet meer in een database op te slaan.
2. als er een nieuw plaatje genereerd moet worden, laat ik het oude even staan. Ik verwijder de oude pas zodra de nieuwe af is.
3. ik behoud de RedirectMatch. ik kijk dan of er 1 of 2 plaatjes zijn (2 indien nog aan het schrijven) en neem dan de oudste van de 2.
4. Ik laad het plaatje en sluis het door naar de browser.
Ik vroeg me nu af of diteigenlijk niet meer overhead gaat creëren dan er nu al gebeurt. Zijn er manieren om ervoor te zorgen dat een plaatje niet uitgelezen wordt terwijl het beschreven word (ik herriner me flock in perl, alleen werkte dat niet altijd even goed).
Iemand die ervaring heeft met plaatjes cachen en een beter idee heeft?
code:
1
| RedirectMatch /statsbar/(.*)\.png /statsbar/image.php/$1 |
Omdat de meeste plaatjes eigenlijk maar om de paar uur veranderen leek het me wel handig om deze te gaan cachen. Ik zou dus een nieuw plaatje genereren zodra er nieuwe data aangeleverd worden.
Nu vraag ik me volgende dingen af:
- Verwijder ik de RedirectMatch en plaats de plaatjes op de virtuele locatie van nu?
- Wat gebeurt er als er een plaatje opgevraagd word net als ik deze aan het overschrijven ben?
Ik dacht dus aan het volgende:
1. Ik schrijf de plaatjes zodra er nieuwe data aangeleverd wordt.Ik hoef de data in principe dus ook niet meer in een database op te slaan.
2. als er een nieuw plaatje genereerd moet worden, laat ik het oude even staan. Ik verwijder de oude pas zodra de nieuwe af is.
3. ik behoud de RedirectMatch. ik kijk dan of er 1 of 2 plaatjes zijn (2 indien nog aan het schrijven) en neem dan de oudste van de 2.
4. Ik laad het plaatje en sluis het door naar de browser.
Ik vroeg me nu af of diteigenlijk niet meer overhead gaat creëren dan er nu al gebeurt. Zijn er manieren om ervoor te zorgen dat een plaatje niet uitgelezen wordt terwijl het beschreven word (ik herriner me flock in perl, alleen werkte dat niet altijd even goed).
Iemand die ervaring heeft met plaatjes cachen en een beter idee heeft?