Ho un'applicazione web PHP in cui alcuni dati cambiano su base settimanale ma vengono letti molto spesso.La migliore tecnica per memorizzare i risultati nella cache da query che cambiano raramente
Le query SQL che recuperano i dati e il codice php per l'output html sono piuttosto complessi. Ci sono più join di tabelle e numerosi calcoli, ma risultano in una tabella html abbastanza semplice. Gli utenti sono raggruppati e la tabella è la stessa per ogni gruppo ogni settimana, ma diversa per i diversi gruppi. Potrei potenzialmente avere centinaia di tabelle per migliaia di utenti.
Per motivi di prestazioni, mi piacerebbe memorizzare questi dati in cache. Piuttosto che eseguire queste query e calcoli ogni volta che qualcuno colpisce la pagina, voglio eseguire un processo settimanale per generare la tabella per ogni gruppo dandomi una semplice lettura quando richiesto.
Sarei interessato a sapere quali tecniche sono state utilizzate con successo o senza successo per ottenere qualcosa di simile?
Opzioni posso vedere includono:
- memorizzare il risultato html dei calcoli in una tabella MySQL, identificato dal gruppo di utenti
- memorizzazione dei dati risultanti in una tabella MySQL, identificati da gruppo di utenti (difficile come non c'è un numero fisso di elementi di dati)
- Caching l'output della pagina in file statici
altri suggerimenti sarebbe il benvenuto!
Alcuni ottimi suggerimenti, grazie. – Damovisa
Buona lista di suggerimenti qui. Si noti che il caching delle query MySQL non è una soluzione completa, ma presenta vantaggi e svantaggi (può peggiorare i dati aggiornati di frequente). Come suggerito da Assaf, è solo una delle molte opzioni. – thomasrutter