Ho un'app ASP.NET MVC 3 che è fondamentalmente solo un insieme di servizi Web. Questi servizi Web sono esposti da una serie di azioni Controller. Ogni azione del controller interroga il mio database. Poiché i miei dati cambiano raramente e i dati obsoleti non sono un problema, ho pensato di implementare un po 'di cache per migliorare le prestazioni. I miei obiettivi sono:Dati di memorizzazione nella cache in ASP.NET MVC 3
- Non memorizzare nella cache una risposta a un utente.
- Memorizza nella cache i record del database per un massimo di 24 ore. Se sono trascorse 24 ore, colpire nuovamente il database.
Ha senso? So come prevenire la risposta dal caching. Mi basta usare il seguente:
HttpContext.Response.Cache.SetCacheability(cacheability)
Tuttavia, non sono sicuro come memorizzare nella cache i miei record del database in memoria per un massimo di 24 ore. Qualcuno ha qualche suggerimento su come farlo? Non sono nemmeno sicuro di dove guardare.
Grazie
Si desidera semplicemente memorizzare nella cache l'intero contenuto di una tabella in memoria oppure si desidera memorizzare nella cache una parte utilizzando una cache LRU? – hatchet
Non sembra che tu stia cercando una soluzione fornita dal framework MVC. Il framework MVC è progettato per creare risposte per un utente e può memorizzare nella cache tali risposte utilizzando l'attributo OutputCache incorporato. Dato che non vuoi che le risposte vengano memorizzate nella cache, potresti voler cercare un metodo più astratto per memorizzare nella cache i risultati delle query che non sono legati al framework MVC (memcached, ecc.). – ken
Voglio memorizzare nella cache l'intero contenuto di una tabella. In realtà, nella mia instace, la mia tabella è già stata convertita in oggetti CLR. Quindi, idealmente, vorrei solo mettere in cache gli oggetti. – user70192