分享一則先前對(duì)Windows Server AppFabric分布式緩存的技術(shù)研究。
一. AppFabric 技術(shù)架構(gòu)和原理
AppFabric與Memcached類似,采用C/S的模式,在 server 端啟動(dòng)服務(wù)進(jìn)程,在啟動(dòng)時(shí)可以指定監(jiān)聽的 ip,自己的端口號(hào),所使用的內(nèi)存大小等幾個(gè)關(guān)鍵參數(shù)。一旦啟動(dòng),服務(wù)就一直處于可用狀態(tài)。
適用于使用 ASP.NET、Windows Communication Foundation (WCF) 和 Windows Workflow Foundation (WF) 生成的應(yīng)用程序。
Windows Server AppFabric 具有三項(xiàng)核心功能:分布式緩存、工作流程管理和服務(wù)管理。
? 針對(duì) Web 應(yīng)用程序,Windows Server AppFabric 提供了緩存功能,為應(yīng)用程序數(shù)據(jù)提供高速緩存、擴(kuò)充性及高可用性等特性,借此避免對(duì)數(shù)據(jù)源進(jìn)行不必要的調(diào)用。
? 針對(duì)復(fù)合應(yīng)用程序,Windows Server AppFabric 則讓用戶能更輕松地構(gòu)建和管理 Windows Workflow Foundation 和 Windows Communication Foundation 所構(gòu)建的服務(wù)。
? Windows Server AppFabric 能夠有效地簡(jiǎn)化這些復(fù)合應(yīng)用程序的開發(fā)、部署及管理工作。
當(dāng)客戶端第一次獲取一些數(shù)據(jù)的時(shí)候,如ASP.NET應(yīng)用程序用戶提供一些信息資料,或者從數(shù)據(jù)庫(kù)中讀取的信息,它可以使用AppFabric Caching Services客戶端類庫(kù)將一個(gè)唯一的名稱和這些信息一起存放在緩存群集中( cache cluster)。對(duì)于客戶端來(lái)說(shuō),緩存集群中的所有緩存服務(wù)器就是單一的邏輯存儲(chǔ)。客戶端既不知道也不關(guān)心的哪臺(tái)物理服務(wù)器的緩存哪些數(shù)據(jù)。
Windows Server AppFabric Caching 主要特點(diǎn)有:
? 任何可以被序列化的 CLR 對(duì)象都可以通過(guò)簡(jiǎn)單的 Cache API 將數(shù)據(jù)緩存
? 支持企業(yè)規(guī)模:可支持上百臺(tái)主機(jī)的服務(wù)器架構(gòu)
? 可彈性的調(diào)整配置,并通過(guò)網(wǎng)絡(luò)緩存服務(wù)
? 支持動(dòng)態(tài)調(diào)整規(guī)模,可隨時(shí)新增節(jié)點(diǎn)