分享一则先前对Windows Server AppFabric分布式缓存的技术研究。
一. AppFabric 技术架构和原理
AppFabric与Memcached类似,采用C/S的模式,在 server 端启动服务进程,在启动时可以指定监听的 ip,自己的端口号,所使用的内存大小等几个关键参数。一旦启动,服务就一直处于可用状态。
适用于使用 ASP.NET、Windows Communication Foundation (WCF) 和 Windows Workflow Foundation (WF) 生成的应用程序。
Windows Server AppFabric 具有三项核心功能:分布式缓存、工作流程管理和服务管理。
? 针对 Web 应用程序,Windows Server AppFabric 提供了缓存功能,为应用程序数据提供高速缓存、扩充性及高可用性等特性,借此避免对数据源进行不必要的调用。
? 针对复合应用程序,Windows Server AppFabric 则让用户能更轻松地构建和管理 Windows Workflow Foundation 和 Windows Communication Foundation 所构建的服务。
? Windows Server AppFabric 能够有效地简化这些复合应用程序的开发、部署及管理工作。
当客户端第一次获取一些数据的时候,如ASP.NET应用程序用户提供一些信息资料,或者从数据库中读取的信息,它可以使用AppFabric Caching Services客户端类库将一个唯一的名称和这些信息一起存放在缓存群集中( cache cluster)。对于客户端来说,缓存集群中的所有缓存服务器就是单一的逻辑存储。客户端既不知道也不关心的哪台物理服务器的缓存哪些数据。
Windows Server AppFabric Caching 主要特点有:
? 任何可以被序列化的 CLR 对象都可以通过简单的 Cache API 将数据缓存
? 支持企业规模:可支持上百台主机的服务器架构
? 可弹性的调整配置,并通过网络缓存服务
? 支持动态调整规模,可随时新增节点