NCache实现Oracle数据与分布式缓存数据同步三个步骤

多层次结构的应用程序是目前发展的趋势,这种程序都需要庞大的数据库支持。而数据传输的能力直接影响程序性能,成为程序可扩展性的瓶颈。因此很多开发者开始在程序中使用内存分布式缓存来提高程序性能。

同时,内存分布式缓存也带来了问题,那就是数据在缓存中如何保证与数据库同步。如果程序使用Oracle数据库,那么NCache会帮你解决难题!NCache提供OracleCacheDependency(数据库缓存依赖项),通过字符串连接数据库发现被注册的变化项。从而通过Oracle的数据库里的通知功能,更新相应的缓存。那么NCache是如何帮助程序实现的呢?

简单的说,你只需开启Oracle数据库的通知功能,然后添加NCache项目中的OracleCacheDependency到应用程序。总的分三个步骤完成:

首先启动Oracle数据库的通知功能,执行代码如下:

1
2
[SQL]
"grant change notification to scott"

再次在你的程序中添加需要引用的NCache配置:

1
2
3
usingAlachisoft.NCache.Web.Caching;
usingAlachisoft.NCache.Runtime.Dependencies;
usingAlachisoft.NCache.Runtime;

最后初始化缓存,然后创建OracleCacheDependency并添加到项目中:

1
2
3
4
5
6
7
8
9
Cache _cache = NCache.InitializeCache("oracleDependencyCache");
_cache.Clear();
 
String connectionString ="User Id=scott;Password=test;Data Source=oracle";
String query ="SELECT CustomerID FROM Customers WHERE CustomerID = 006";
 
CacheDependency orclSync =newOracleCacheDependency(connectionString, query);
 
_cache.Insert("Customer:006","myValue", orclSync,Cache.NoAbsoluteExpiration, Cache.NoSlidingExpiration, CacheItemPriority.Normal);

当你使用OracleCacheDependency添加一个缓存项目时,将被注册数据库。同时如果有任何触发缓存依赖的变化,缓存将删除以前数据,并重新加载更新的缓存数据。

你可以现在就下载试用NCache,当然初学者可以先了解下Oracle数据库的通知功能。

NCache最新版

转载于:https://my.oschina.net/evget/blog/161994

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值