Non ho molta esperienza nel caching tra le applicazioni web, ma sto cercando di educarmi sul campo e provare varie tecniche e approcci in ASP.NET MVC.
La maggior parte dei tutorial e degli articoli che vedo online menzionano cache di output ( [OutputCache(VaryByParam="...")]
), vari metodi di caching della ciambella ecc.
Solo una piccola parte degli articoli che vedo online discutono i metodi di query nella cache sulla parte superiore di dati / livello aziendale , che possono essere implementati con l'aiuto di System.Runtime.Caching
o di qualche altro archivio di valori-chiave .
Ho sempre pensato che i soliti colli di bottiglia nelle applicazioni Web siano query costose o eseguite spesso, non la parte che esegue il rendering in HTML. Almeno dalla mia esperienza sui progetti su cui ho lavorato, è sempre stato così.
Soggettivamente, il caching dell'output si sente anche come un metodo "più sporco" della memorizzazione nella cache sul livello dati / business. Perché è promosso così tanto? È solo perché è più facile da implementare? O mi mancano alcuni punti?
La cache di ouput offre effettivamente benefici sulla memorizzazione nella cache a livello di dati / business? In quali tipi di applicazioni web dovrei concentrarmi su quale? Come trovare l'equilibrio tra questi due?
Le tecniche di memorizzazione nella cache sono generalmente considerate un argomento difficile nello sviluppo del Web e sarebbe bello avere un po 'più di conoscenza sulla cache di output rispetto agli approcci alla cache dei dati, le loro differenze, punti di forza e punti deboli.