I have a question regarding Caching. I have a typical n-tier ASP.NET web app. I have made a custom Cache wrapper (wrapping ASP.NET Cache object), and I would like to know the best practices of Caching data. I don't want to use caching in my business layer (don't want to add any reference to System.Web dll there). Same case with DAL. So the only options left are:
- Cache everything in the UI layer
- Create a cache layer between UI and BL (dont know how feasible is that?)
I also heard about the upcoming Velocity caching framework but I guess that might be an overkill (as my app wont need a web farm/cluster).
I may be terribly wrong in my approaches, so I would welcome any suggestions or alternative approaches on how to effiecintly cache data in my web projects.