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