asp.net 分布式缓存

之前Velocity已被 集成到App Fabric(包含有WCF监控==)中.

网络Velocity使用大多是针对老版本: 
老版本的下载地址:  http://www.microsoft.com/en-us/download/details.aspx?id=2517

这里针对App Fabric做一些说明:

1. 在VS 2010中使用:

1) 在App Fabric的安装目录中引用:

Microsoft.ApplicationServer.Caching.Client.dll

Microsoft.ApplicationServer.Caching.Core.dll

Microsoft.ApplicationServer.Caching.Core.dll
是Cache基类库,Cache客户端和服务端都引用该DLL,包含配置库和基类缓存类型。

Microsoft.ApplicationServer.Caching.Client.dll 包含Cache客户端类库,如连接到Cache
cluster存储和检索数据的API接口等等。

2) Web.config中配置 (可参考:http://msdn.microsoft.com/zh-cn/library/ee790859(v=azure.10).aspx)

<configSections>
       
<section name="dataCacheClient"
type="Microsoft.ApplicationServer.Caching.DataCacheClientSection,Microsoft.ApplicationServer.Caching.Core,
Version=1.0.0.0, Culture=neutral,PublicKeyToken=31bf3856ad364e35"/>

    </configSections>
   
<dataCacheClient>
       
<hosts>

            <host
name="Cache服务器主机名" cachePort="22233" />

        </hosts>

    </dataCacheClient>

3)代码:

string key =
"ApplicationName";

           var dcf = new
DataCacheFactory();

if (dcf !=
null)
           {

var cache = dcf.GetCache("default");   
//这个要为Cache服务器中有效的Cache名称, 不然会报错.

              
name = cache.Get(key) as string;

              
if (name == null)

              
{

                  
name = "Windows Server App Fabric Cache Lab";

                  
cache.Put(key, name);

              
}
           }

在Power shell工具中查询Cache名称的方法:

2. VS2010中不使用配置文件连接缓存

DataCacheServerEndpoint[] servers
= new DataCacheServerEndpoint[1];

          servers[0] = new
DataCacheServerEndpoint("Cache服务器的主机名", 22233);

// Setup the
DataCacheFactory configuration.

         
DataCacheFactoryConfiguration factoryConfig = new
DataCacheFactoryConfiguration();

          factoryConfig.Servers
= servers;

// Create a configured
DataCacheFactory object.

          DataCacheFactory
mycacheFactory = new DataCacheFactory(factoryConfig);

// Get a cache client
for the cache "NamedCache1".

          DataCache
myDefaultCache = mycacheFactory.GetCache("default");

         
myDefaultCache.Put("ApplicationName1", "vvvv");

          object v =
myDefaultCache.Get("ApplicationName1");

常用Power shell命令:

1. get-command *cache* :查找包含有cache关键字的命令

2. get-cache: 获取当前服务器的缓存名称

3. new-cache:新建缓存. 在Cache服务器共享配置文件中会自动添加新的缓存节点
例: new-cache ‘aaa’

时间: 2024-10-05 05:00:01

asp.net 分布式缓存的相关文章

ASP.Net MVC4+Memcached+CodeFirst实现分布式缓存

ASP.Net MVC4+Memcached+CodeFirst实现分布式缓存 part 1:给我点时间,允许我感慨一下2016年 正好有时间,总结一下最近使用的一些技术,也算是为2016年画上一个完美的句号,回顾2016年,感受颇多,感恩那些帮助我的人.展望2017年,我相信一定会遇到一个更好的自己.附上自己喜欢的一张图片: 好了~~~装逼结束,下面开始说说如何实现分布式缓存在项目中的应用. part2:先分析以下需求 软件架构从单机到分布式遇到的问题(当然这是一个很深的问题,由于能力有限今天

分布式缓存学习总结

一.分布式缓存简图 二.为什么使用Memcached分布式缓存呢? 三.Memcached基础原理 四.Memcache下载与安装 五.MencacheHelper.cs 示例使用 结合Session与项目配置缓存 六.Redis和Memcache的区别总结 一.分布式缓存简图 二.为什么使用Memcached分布式缓存呢? 首先先讲讲为何要缓存,在数据驱动的web开发中,经常要重复从数据库中取出相同的数据,这种重复极大的增加了数据库负载.缓存是解决这个问题的好办法.但是ASP.NET中的虽然已

C#分布式缓存Couchbase

C#分布式缓存Couchbase使用 一.简介 目前C#业界使用得最多的 Cache 系统主要是 Memcached和 Redis. 这两个 Cache 系统可以说是比较成熟的解决方案,也是很多系统当然的选择. Memcache的开发团队开发了Membase,支持多台服务器集群,数据的切片和复制,有效的提高了服务稳定性和数据的安全性,并且支持数据的持久存储.但代码的稳定性不够好.之后,Membase团队与CouchDB团队合并,推出二合一的产品: Couchbase. Couchbase的最大特

ASP.NET MVC缓存

根据缓存的位置不同,可以区分为: ①客户端缓存(缓存在用户的客户端,例如浏览器中) ②服务器缓存(缓存在服务器中,可以缓存在内存中,也可以缓存在文件里,并且还可以进一步地区分为本地缓存和分布式缓存两种) 应该说,缓存的设计是一门较为复杂的学问,主要考虑的问题包括:要不要缓存?要缓存哪些数据?要缓存多少数据?要缓存多久?如何更新缓存(手动还是自动)?将缓存放在哪里?本文将以较为通俗易懂的方式,来看一看在MVC4的项目中,如何使用缓存功能.对于上述提到的一些具体业务问题,我这里不会进行太过深入地探讨

Windows Server AppFabric分布式缓存研究

分享一则先前对Windows Server AppFabric分布式缓存的技术研究. 一. AppFabric 技术架构和原理 AppFabric与Memcached类似,采用C/S的模式,在 server 端启动服务进程,在启动时可以指定监听的 ip,自己的端口号,所使用的内存大小等几个关键参数.一旦启动,服务就一直处于可用状态. 适用于使用 ASP.NET.Windows Communication Foundation (WCF) 和 Windows Workflow Foundation

ASP.NET Core 缓存技术 及 Nginx 缓存配置

前言 在Asp.Net Core Nginx部署一文中,主要是讲述的如何利用Nginx来实现应用程序的部署,使用Nginx来部署主要有两大好处,第一是利用Nginx的负载均衡功能,第二是使用Nginx的反向代理来降低我们后端应用程序的压力.那除了以上两点之外,其实我们还可以利用代理服务器的缓存功能来进一步的降低后端应用程序的压力,提升系统的吞吐量(tps).这一篇就来看一下具体应该如何去做吧. 目录 WEB 缓存 ASP.NET Core 缓存 内存缓存 分布式缓存 Response 缓存 Ng

分布式缓存--MVC+EF+Memcache

一.从单机到分布式 现在三台机器组成一个Web的应用集群,其中一台机器用户登录,然后其他另外两台机器如何共享登录状态? 解决方案: 1.AspNet进程外的Session . 2.用数据库存数等钱登录状态. 3.Memcache. 二.为什么用Memcache? 1.解决高并发访问数据库带来的死锁 2.多用户端共享缓存 三.Memcache原理 其实memcache是一种windows服务,客户端发来的请求,都会被Socket服务器端接受到.存数使用键值对存储的.客户端进行存储的时候,就是找最接

Memcached分布式缓存初体验

1 Memcached简介/下载/安装 Memcached是一个高性能的不是内存对象缓存系统,用于动态Web应用以减轻数据库负载.Memcached基于一个存储键/值对的HashMap.其客户端可以使用任何语言进行编写,并通过Memcached协议与进行通信 下载memcached-win64-1.4.4-14 的windows稳定版 cmd命令(win+R),切换到解压包的指定目录,并且输入命令:memcached.exe -d install(与之对应memcached.exe -d uni

6种.net分布式缓存解决方案

6种.net分布式缓存解决方案 1.     使用内置ASP.NET Cache (System.Web.Caching) : https://msdn.microsoft.com/en-us/library/system.web.caching(v=vs.110).aspx 2.     使用System.Runtime.Caching: https://msdn.microsoft.com/en-us/library/system.runtime.caching(VS.100).aspx 3