分布式缓存解决方案

1概述

    通常情况下我们运行程序的过程中会产生一些中间数据,这些中间数据需要在将来的某个时间读取。这就要求我们要把它存在一个提供高速存取的地方,最好的选择就是内存中。基于这个以及多个原因需要我们把这部分存储在其他机器上,这样就产生了分布式缓存的问题。

    实际上分布式缓存根本上就是提供一个附加内存让另一台机器帮忙存储和查找数据。

2实现方法

    首先建立一个集合对象,该集合对象应保证线程安全。代码如下所示

Code


接着我们把它包装起来可以通过远程调用,代码如下

Code


为了避免我们的业务逻辑泄露我们向客户端提供接口一边调用

Code


好了。这样我们服务端的代码就算搞定了。

下面我们来公布接口供客户端调用

Code


这样客户端皆可以通过这个接口来实现远程数据的存取

客户端首先我们获取远程的对象

Code


接着我们包装一下

Code


3后续

以上实现的是最基本的分布式缓存解决方案。其实我们可以把这个集合转化为其他集合对象。在对象启动的时候开启一个守护进程,这个进程做得工作就是把到期的缓存对象追加到一个集合对象中,然后遍历该对象实现缓存对象的动态销毁。我们还可以吧对象进行一次哈希是对像在多台缓存服务器上存储。好了今天就写到这里吧。更多功能大家就自己思考吧。





(文/dabing  出处/博客园)

 感谢原创者的辛勤劳动,希望对您有所帮助,转载请注明原出处。
 您可能对 [Visual Studio.NET] 的这些文章也感兴趣:

利用.net2.0中的GZip或Deflate压缩文件
Asp.net中的mail的发送
理解委托与事件的好文章
.Net类库中实现的HashTable
在.net中轻松掌握Windows窗体间的数据交互(二)
GTK#的可定制控件类库——Holly Widgets
一次编辑 GridView 的所有行
SharpDevelop 3.0 Enters Beta
深入学习heritrix---体系结构(Overview of the crawler)
DataGridWeb控件深度历险(3)part3