我有一个关于缓存的问题.我有一个典型的n层ASP.NET Web应用程序.我已经创建了一个自定义缓存包装器(包装ASP.NET缓存对象),我想知道缓存数据的最佳实践.我不想在我的业务层中使用缓存(不想在那里添加对System.Web dll的任何引用).与DAL相同的情况.所以剩下的唯一选择是:
缓存UI层中的所有内容
在UI和BL之间创建一个缓存层(不知道这有多可行?)
我也听说过即将推出的Velocity缓存框架,但我想这可能是一种矫枉过正(因为我的应用程序不需要Web场/集群).
我的方法可能非常错误,所以我欢迎任何关于如何在我的网络项目中有效缓存数据的建议或替代方法.
UI和BLL之间的层将是一个Services层,这是缓存的好地方.使用抽象缓存管理器(我的博客上的示例),以便您可以在需要时交换提供程序(ASP.NET缓存,Velocity,memcached等).