Hallo
Zitat von
shmia:
Welchen Sinn macht ein Cache, der über den Konstruktor deaktiviert werden kann? (rhetorische Frage
Man kann den Cache-Size auf 0 setzen, so dass im Prinzip jeder Zugriff auf den Cache zu einen "Miss" wird.
Oder es gibt eine Methode ClearCache.
Aber ein An/Aus-Flag im Konstruktor is nicht gut.
Das Auslesen der Daten erfolgt generell über die Cache-Klasse. Ist der Cache deaktiviert oder die Cache-Zeit abgelaufen, bekomme ich "false" zurück und lese die Daten aus der Datenbank. Bei Aktiviertem Cache erhalte ich die gecachten Daten.
So übel finde ich das gar nicht.
Zitat von
dominikkv:
Zu deinem Parameter-Problem: ich würde das nicht über einen Parameter steuern. Ich würde der Klasse Cache selbst die Entscheidung überlassen, ob eine bestimmte Abfrage gecached werden soll oder nicht. Du kannst dir ja eine Zeitspanne überlegen, nach der die zwischengespeicherten Informationen verfallen. Das kannst du sogar für jede Abfrage getrennt verwalten.
Ein Zeitlimit ist vergeben. Nur zu Testzwecken möchte ich bsp. den Cache deaktivieren, dass ich sichergehen kann, mit den aktuellen Daten zu arbeiten.
Notfalls lege ich den Cache-Status über eine Konfigurationsdatei fest. Es wäre halt schön gewesen, das übers Admin-Panel zu erledigen.
Grüße, Matze