写在前面:企业库Step By Step系列的随笔今天已经是第九篇了,期间得到了很多朋友的支持,他们认为给初学者提供了很好的资料,在这里表示衷心的感谢。也有朋友反映说关于企业库使用的文章网上已经有了很多,希望我能写一些企业库类设计的文章,我也非常感谢这些朋友提出的建议。我写本系列随笔时就是立足于初学者,帮助初学者,希望能够给他们一些帮助。所以本系列随笔我还会继续下去,写完入门篇和进阶篇后,我会写类设计篇,最后我计划再写一篇总结篇的随笔,作为对企业库的一个总结,最后再次谢谢大家的关注和支持。
一.缓存应用程序块概述:
企业库缓冲应用程序块提供了一些方便易用的,可扩展的缓冲机制,可让开发人员将本地缓存集成到其应用程序中。它支持内存缓存和后备存储(可选),后者可以是企业程序库数据访问应用程序块或独立存储方式(Isolated Storage
)。应用程序块无需修改即可使用,它还可以提供检索、添加和删除缓存数据所需的全部功能。可配置的过期时间与清除策略也是应用程序块的一部分功能。
在构建企业级分布式应用程序时,架构师和开发人员面临着许多难题。缓存可以帮助您克服其中的一些难题,包括:
性能:通过存储与数据使用者尽可能接近的相关数据,缓存可以提高应用程序的性能。这样可以避免重复进行数据创建、处理和传输。
可伸缩性:在缓存中存储信息有助于节省资源,并且可以随着应用程序需求的增加来提高可伸缩性
可用性:通过将数据存储在本地缓存中,应用程序可以承受系统的故障,例如网络等待时间、Web 服务问题以及硬件故障
适用的情况:
(1)必须重复访问静态数据或极少更改的数据
(2)在创建、访问或传输方面,数据访问的开销很高
(3)即使在源(例如服务器)不可用时,数据也必须始终可用
缓冲应用程序块可应用于以下任何一种应用程序类型:
Windows 窗体
控制台
Windows 服务
企业服务
ASP.NET Web 应用程序或 Web 服务
应该将缓存应用程序块部署在单个应用程序域中。每个应用程序域都可以有一个或多个缓存(可以有也可以没有后备存储)。缓存不能在不同的应用程序域之间共享。
缓存应用程序块的性能已优化,并且是线程安全和异常安全的。您可以对它进行扩展,以包括您自己的过期策略和后备存储。