




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、分布式緩存組件技術緩存是什么,解決什么問題? Cache是高速緩沖存儲器 一種特殊的存儲器子系統(tǒng),其中復制了頻繁使用的數(shù)據(jù)以利于快速訪問 凡是位于速度相差較大的兩種硬件/軟件之間的,用于協(xié)調(diào)兩者數(shù)據(jù)傳輸速度差異的結構,均可稱之為 Cache基于Web應用的系統(tǒng)架構圖數(shù)據(jù)庫應用服務器Web服務器存儲設備瀏覽器Web應用架構操作系統(tǒng)的文件系統(tǒng)Web應用系統(tǒng)存在哪些速度差異? 讀取文件系統(tǒng) 讀取磁盤 讀取數(shù)據(jù)庫內(nèi)存 讀取文件系統(tǒng) 讀取應用內(nèi)存 訪問數(shù)據(jù)庫服務器 讀取靜態(tài)文件 訪問應用服務器 讀取瀏覽器緩存 訪問網(wǎng)站緩存技術分類 操作系統(tǒng)磁盤緩存 減少磁盤機械操作 數(shù)據(jù)庫緩存 減少文件系統(tǒng)I/O 應用
2、程序緩存 減少對數(shù)據(jù)庫的查詢 Web服務器緩存 減少應用服務器請求 客戶端瀏覽器緩存 減少對網(wǎng)站的訪問常用的應用程序緩存組件概述 OSCache OSCache是個一個廣泛采用的高性能的J2EE緩存框架,OSCache能用于任何Java應用程序的普通的緩存解決方案。 官方網(wǎng)站 http:/ 常用的應用程序緩存組件概述 JCS JCS(Java Caching system)是一個用分布式的緩存系統(tǒng),是基于服務器的java應用程序。它是通過提供管理各種動態(tài)緩存數(shù)據(jù)來加速動態(tài)web應用。 官方網(wǎng)站 /turbine/jcs/ 。 常用的應用程序緩存組
3、件概述 EHCache EHCache 是一個純java的在進程中的緩存,主要特性有:快速; 簡單; 多種緩存策略; 緩存數(shù)據(jù)有兩級:內(nèi)存和磁盤,因此無需擔心容量問題; 緩存數(shù)據(jù)會在虛擬機重啟的過程中寫入磁盤; 可以通過 RMI、可插入 API 等方式進行分布式緩存; 具有緩存和緩存管理器的偵聽接口; 支持多緩存管理器實例,以及一個實例的多個緩存區(qū)域;提供 Hibernate 的緩存實現(xiàn)。 官方網(wǎng)站http:/。常用的應用程序緩存組件概述 Memcached Memcached是一種集中式Cache,支持分布式橫向擴展??偨Y幾個它的特點來理解一下它的優(yōu)點和限制。內(nèi)存存儲,不言而喻,速度快,對于
4、內(nèi)存的要求高,不指出的話所緩存的內(nèi)容非持久化。對于CPU要求很低,所以常常采用將Memcached服務端和一些CPU高消耗Memory低消耗應用部屬在一起。常用的應用程序緩存組件概述 Cache4J Cache4J是一個接口簡單,可以快速上手,基于BSD許可的開源緩存軟件。Cache4J有以下特點:暫只只是內(nèi)存緩存;多線程環(huán)境設計;2種實現(xiàn):synchronized, blocking;支持LFU, LRU, FIFO算法。支持磁盤存儲,分布式引用,以及LFU2, LRU2等算法將是Cache4J接下來要實現(xiàn)的功能;另外,該軟件的使用指南和API文檔均是俄文 。 官方網(wǎng)站:http:/ 。 E
5、hCache EhCache 從 1.7 版本開始,支持五種集群方案,分別是:Terracotta RMI JMS JGroups EhCache Server 目前其中的三種是最為常用集群方式,分別是 RMI、JGroups 以及 EhCache Server 。下面主要對這三種常用的集群方式作簡單的介紹分布式解決方案RMI 集群模式Rmi是 Java 的一種遠程方法調(diào)用技術,是一種點對點的基于 Java 對象的通訊方式。EhCache 從 1.2 版本開始就支持 RMI 方式的緩存集群。在集群環(huán)境中 EhCache 所有緩存對象的鍵和值都必須是可序列化的,也就是必須實現(xiàn)java.io.Se
6、rializable 接口,這點在其它集群方式下也是需要遵守的。分布式解決方案RMI 集群模式應用程序結構圖 分布式解決方案JGroups 集群模式 EhCache 從 1.5. 版本開始增加了 JGroups 的分布式集群模式。與 RMI 方式相比較, JGroups 提供了一個非常靈活的協(xié)議棧、可靠的單播和多播消息傳輸,主要的缺點是配置復雜以及一些協(xié)議棧對第三方包的依賴。 JGroups 也提供了基于 TCP 的單播 ( Unicast ) 和基于 UDP 的多播 ( Multicast ) ,對應 RMI 的手工配置和自動發(fā)現(xiàn)。JGroups 的配置要比 RMI 復雜得多,但也提供更多的
7、微調(diào)參數(shù),有助于提升緩存數(shù)據(jù)復制的性能。詳細的 JGroups 配置參數(shù)的具體意義可參考 JGroups 的配置手冊。 分布式解決方案JMS與與JGroups 集群模式的配置文件 uJMS的手工配置信息如下:。 uJMS通過多播( multicast )來維護集群中的所有有效節(jié)點。這也是最為簡單而且靈活的方式,與手工模式不同的是,每個節(jié)點上的配置信息都相同,大大方便了節(jié)點的部署,避免人為的錯漏出現(xiàn) :其中需要指定節(jié)點發(fā)現(xiàn)模式 peerDiscovery 值為 automatic 自動;同時組播地址可以指定 D 類 IP 地址空間,范圍從 到 55
8、中的任何一個地址。u在需要進行緩存數(shù)據(jù)復制的區(qū)域(Region)上配置如下即可 : 分布式解決方案JMS與與JGroups 集群模式的配置文件 JGroups 也提供了基于 TCP 的單播 ( Unicast ) 和基于 UDP 的多播 ( Multicast ) ,對應 RMI 的手工配置和自動發(fā)現(xiàn)。使用單播方式需要指定其它節(jié)點的主機地址和端口,下面是兩個節(jié)點,并使用了單播方式的配置: 分布式解決方案使用多播方式配置如下: 分布式解決方案EhCache Server集群模式 與前面介紹的兩種集群方案不同的是, EhCache Server 是一個獨立的緩存服務器,其內(nèi)部使用 EhCache
9、做為緩存系統(tǒng),可利用前面提到的兩種方式進行內(nèi)部集群。對外提供編程語言無關的基于 HTTP 的 RESTful 或者是 SOAP 的數(shù)據(jù)緩存操作接口。 。 EhCache Server 應用架構圖應用架構圖 分布式解決方案EhCache 以上我們介紹了三種 EhCache 的集群方案,除了第三種跨編程語言的方案外,EhCache 的集群對應用程序的代碼編寫都是透明的,程序人員無需考慮緩存數(shù)據(jù)是如何復制到其它節(jié)點上。既保持了代碼的輕量級,同時又支持龐大的數(shù)據(jù)集群。EhCache 可謂是深入人心。2009 年年中,Terracotta 宣布收購 EhCache 產(chǎn)品。Terracotta 公司的產(chǎn)品
10、 Terracotta 是一個 JVM 級的開源集群框架,提供 HTTP Session 復制、分布式緩存、POJO 群集、跨越集群的 JVM 來實現(xiàn)分布式應用程序協(xié)調(diào)。最近 EhCache 主要的改進都集中在跟 Terracotta 框架的集成上,這是一個真正意義上的企業(yè)級緩存解決方案。 分布式解決方案Oscache u支持jms和jgroup的集群解決方案 ,與Ehcache的集群方案中的jms和jgroup方案一樣。 u從以上幾種集群解決方案,可以看出,都是通過配置文件來實現(xiàn)的,jms的配置比較簡單,但如果有新的節(jié)點加入,需要修改所有節(jié)點上的配置文件,靈活性不夠,比較麻煩,jgroups
11、配置比較麻煩,而且要依賴于第三方庫,但是修改起來要方便,靈活性比較高。Ehcache server提供獨立的緩存服務器,內(nèi)部又可以通過集群配置,可通過http和soap等直接訪問。 分布式解決方案Memcached uMemcached默認不支持集群,它是集中式的Cache,因此它存在單點問題(雖然數(shù)據(jù)可以分散到多臺服務器上,但是還會丟失部分數(shù)據(jù))。為了解決單點問題,Memcache客戶端支持配置集群,可以將部署在一臺機器上的多個Memcached服務端或者部署在多個機器上的Memcached服務端組成一個虛擬的服務端,對于調(diào)用者來說完全屏蔽和透明。提高的單機器的內(nèi)存利用率,也提供了scale out的方式。其結構圖
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度家政服務合作協(xié)議書(專業(yè)護理)
- 檢測員相關知識培訓課件
- 二零二五年度景區(qū)景點場地借用安全責任協(xié)議范本
- 二零二五年度臨時工解聘合同及遣散費協(xié)議
- 二零二五年度外貿(mào)合同范本:國際貿(mào)易結算代理服務協(xié)議
- 領域一情境四招投標與造價咨詢和報送全過程專業(yè)群課件
- 鋰電池材料知識培訓課件
- 講述“活著”的中國法制史知到智慧樹章節(jié)測試課后答案2024年秋曲阜師范大學
- 廣告植入知識培訓課件
- 廣州醫(yī)保知識培訓課件
- 風電場110kV升壓站日常巡檢路線示意圖
- 樁基計算表格大全(自動版)
- 《帶狀皰疹治療學》牛德興教授專業(yè)研究治療病毒性皰疹50年心血
- 《材料工程基礎》教學大綱
- 國內(nèi)外材料牌號對照
- 建設工程施工合同培訓PPT(49頁)
- LY∕T 2780-2016 松皰銹病菌檢疫技術規(guī)程
- 航空服務形體訓練課程標準
- 項目部安全管理組織機構網(wǎng)絡圖GDAQ20102
- 蘇科版四年級勞動技術下冊教學計劃
- 電網(wǎng)公司客戶資產(chǎn)接收管理細則
評論
0/150
提交評論