知识大全 ASP.NET应用中缓存Oracle数据[1]
Posted 知
篇首语:夜暗方显万颗星,灯明始见一缕尘。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 ASP.NET应用中缓存Oracle数据[1]相关的知识,希望对你有一定的参考价值。
ASP.NET应用中缓存Oracle数据[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
为了创建可扩展 高性能的基于WEB的应用 ASP NET提供一个称为数据缓存(Data Caching)的特性 数据缓存支持将频繁访问的数据对象可编程地存放在内存中 这一特性可扩展以广泛地提高查询Oracle数据库中数据的ASP NET应用的性能 本文讲述一个策略 可用于采用 Web Farm环境中的ASP NET Web应用缓存Oracle数据库数据
为了创建可扩展 高性能的基于WEB的应用 ASP NET提供一个称为数据缓存(Data Caching)的特性 数据缓存支持将频繁访问的数据对象可编程地存放在内存中 这一特性可扩展以广泛地提高查询Oracle数据库中数据的ASP NET应用的性能 本文讲述一个策略 可用于采用Web Farm环境中的ASP NET Web应用缓存 Oracle数据库数据 这个技巧允许在内存中缓存频繁访问的Oracle数据库数据 而不是频繁访问数据库来取数据 这可以帮助避免到Oracle数据库服务器的不必要的远路 进一步的 文章提出了一个保持缓存数据以使其始终与Oracle数据同步的实现
ASP NET中的数据缓存
ASP NET中的数据缓存由Cache类和System Web Caching命名空间中的CacheDependency类支持 Cache类提供向缓存插入和从中取出数据的方法 CacheDependency类允许为缓存中数据项的指定其依赖项 当我们用Insert和Add方法将项目加入缓存中 可以指定一个项目的过期(expiration)策略 我们可以用Insert方法的absoluteExpiration属性来定义缓存中一个项目的生命期 这个属性允许你指定相应数据项过期的准确时间 也可以使用slidingExpiration属性来指定项目过期的流逝时间(基于它被访问的时间) 一旦一个项目过期 它从缓存中被清除 除非它再次被加入缓存中 否则再试图访问 将返回一个空值
设定缓存依赖
ASP NET使我们可以基于一个外部文件 目录或另一个缓存项来定义一个缓存项的依赖 即所谓文件依赖与键依赖 若一个依赖项改变 缓存项自动失效并被从缓存中清除 当相应的数据源改变时 我们可以用这种方法来从缓存中删除项目 例如 若我们的应用从一个XML文件中取数据并显示在一个表格 (grid)中 我们可以把文件中的数据存放到缓存中 并设定缓存依赖于那个XML文件 当XML文件被更新 数据项就从缓存中被清除出去 这一事件发生时 应用重新读入XML文件 最新的数据项副本被再一次插入缓存中 进一步的 回调事件处理器可被设定为一个监听者 当缓存项被删除时得到通知 这使得我们不需要反复轮询缓存来确定数据项是否已无效
Oracle数据库上的ASP NET缓存依赖
现在考虑这样一个情景 数据存放于Oracle数据库中 一个ASP NET应用通过ADO NET来访问 进一步 我们假设数据库表中的数据一般是静态的 并被这个 Web应用频繁访问 表上的DML操作很少而对数据有很多Select 这种情况是数据缓存技术的理想应用 但不幸的是 ASP NET并不允许设定一个缓存项依赖于存放在数据库表中的数据 进一步 现实世界中 基于Web的系统 Web服务器和Oracle数据库服务器总是会运行在不同的机器上 使得缓存无效操作更有挑战性 另外 多数基于Web的应用采用Web farms 同一个应用的实例在不同的Web服务器上跑以负载均衡 这种情况使得数据库缓存问题稍稍复杂一些
为了进一步研究上述问题的解决方案 我们举一个Web应用的例子来说明如何实现 例子中 我们使用VB NET实现的ASP NET应用 通过Oracle Data Provider for NET (ODP)来访问 Oracle i数据库
这个例子使用Oracle数据库中一个名为Employee的表 我们为该表上insert update delete设定触发器 这些触发器调用一个封装了一个Java存储过程的PL/SQL函数 这个Java存储过程负责更新缓存依赖的文件
cha138/Article/program/net/201311/15138相关参考
ASP.NET应用中缓存Oracle数据[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!ASP
在项目中我们经常会用到数据缓存也会在项目处理对缓存的维护但是有些时间我们需要人为的来维护这些缓存用下面的代码来实现 将缓存信息绑定到DataGrid上 privatevoidbindCache
ASP.NET数据库缓存依赖 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在ASPNET中Ca
ASP.NET项目开发指南:数据缓存简介 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &nbs
ASP.NET怎么样缓存频繁更新的数据? 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 最近接手
ASP.NET缓存概念及其应用浅析 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! ASPNET缓
asp.net连接Oracle数据库 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!代码如下&nbs
ASP.NET中如何对页面输出缓存 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!lishixinz
ASP.NET中数据校验部分的封装与应用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 我们的业
ASP.NET缓存总结 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一缓存概念缓存的好处类型