Velocity是微软推出的分布式缓存解决方案,为开发可扩展性,可用的,高性能的应用程提供支持,可以缓存各种类型的数据,如CLR对象、XML、二进制数据等,并且支持集群模式的缓存服务器。Velocity也将集成在.NET Framework 4.0中,目前一个项目需要一个分布式缓存,打算尝试一下微软的这个新产品。现在的版本还是CTP2,所以,在正式发布后可能与现在有所区别。

准备:

Velocity需要使用PowerShell进行配置,如果没有安装的话,先安装PowerShell。

根据平台类型下载Velocity:

http://code.msdn.microsoft.com/velocity/Release/ProjectReleases.aspx?ReleaseId=1708

有X64和X86版本

安装:

运行安装程序,在运行到一半的时候会弹出配置窗口,这里可以填写你要创建的缓存群集使用的配置存储方式、缓存群集的名称、使用的端口号等。

安装完毕后,到服务启动Microsoft project code named “Velocity”

配置:

安装后会在桌面生成Administration Tool - Microsoft Distributed Cache

右键点击用管理员权限运行,会弹出PowerShell界面,可以使用Get-CacheHost获得当前缓存服务的状态。

  • 可以使用Start-CacheCluster 启动服务。

  • 可以使用Stop-CacheCluster 关闭服务。

  • 可以使用Restart-CacheCluster 重启服务。

在使用前,首先要为我们存放缓存数据划分一个存储区域:

New-Cache

默认的TTL是10分钟,更详细的参数见参考手册Microsoft Distributed Cache\V1.0\Docs。

编程:

获得一个缓存:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
       private Cache GetCache()

        {

            Cache dCache;

            ServerEndPoint[] servers = new ServerEndPoint[1];

            servers[0] = new ServerEndPoint("Localhost", 22233, "DistributedCacheService");

            bool routingClient = true;

            bool localCache = true;

            var factory = new CacheFactory(servers, routingClient, localCache);

            dCache = factory.GetCache("bwgd");

 

            return dCache;

        }

操作缓存:

  • 存:
1
2
3
            myCache.Add(Cache.DefaultRegion,"Test", DateTime.Now,new TimeSpan(0,5,0));

            myCache.Put("Test", DateTime.Now);
  • 取:
1
            myCache.Get("Test")

快速获得分区、Tag使用方法见TerryLee’s Tech Space

http://www.cnblogs.com/Terrylee/archive/2008/11/21/Microsoft-Distributed-Cache-Velocity-Part2.html

Enjoy it !~