java緩存框架解釋

java緩存框架解釋

ID:33684920

大?。?2.05 KB

頁數(shù):6頁

時間:2019-02-28

java緩存框架解釋_第1頁
java緩存框架解釋_第2頁
java緩存框架解釋_第3頁
java緩存框架解釋_第4頁
java緩存框架解釋_第5頁
資源描述:

《java緩存框架解釋》由會員上傳分享,免費在線閱讀,更多相關內容在應用文檔-天天文庫。

1、Java緩存框架JBossCache是一個復制的事務處理緩存,它允許你緩存企業(yè)級應用數(shù)據(jù)來更好的改善性能。緩存數(shù)據(jù)被自動復制,讓你輕松進行Jboss服務器之間的集群工作。JBossCache能夠通過Jboss應用服務或其他J2EE容器來運行一個Mbean服務,當然,它也能獨立運行。JBossCache包括兩個模塊:TreeCache和TreeCacheAOP。TreeCache--是一個樹形結構復制的事務處理緩存。TreeCacheAOP--是一個“面向對象”緩存,它使用AOP來動態(tài)管理POJO.?OSCache標記庫由

2、OpenSymphony設計,它是一種開創(chuàng)性的JSP定制標記應用,提供了在現(xiàn)有JSP頁面之內實現(xiàn)快速內存緩沖的功能。OSCache是個一個廣泛采用的高性能的J2EE緩存框架,OSCache能用于任何Java應用程序的普通的緩存解決方案。OSCache有以下特點:緩存任何對象,你可以不受限制的緩存部分jsp頁面或HTTP請求,任何java對象都可以緩存。擁有全面的API--OSCacheAPI給你全面的程序來控制所有的OSCache特性。永久緩存--緩存能隨意的寫入硬盤,因此允許昂貴的創(chuàng)建(expensive-to-cre

3、ate)數(shù)據(jù)來保持緩存,甚至能讓應用重啟。支持集群--集群緩存數(shù)據(jù)能被單個的進行參數(shù)配置,不需要修改代碼。緩存記錄的過期--你可以有最大限度的控制緩存對象的過期,包括可插入式的刷新策略(如果默認性能不需要時)。Ehcache出自Hibernate,在Hibernate中使用它作為數(shù)據(jù)緩存的解決方案。?Memcache緩存服務?Memcache是danga.com的一個項目,最早是為LiveJournal服務的,目前全世界不少人使用這個緩存項目來構建自己大負載的網(wǎng)站,來分擔數(shù)據(jù)庫的壓力。?它可以應對任意多個連接,使用非阻塞

4、的網(wǎng)絡IO。由于它的工作機制是在內存中開辟一塊空間,然后建立一個HashTable,Memcached自管理這些HashTable。?為什么會有Memcache和memcached兩種名稱??其實Memcache是這個項目的名稱,而memcached是它服務器端的主程序文件名?Memcache工作原理?首先memcached是以守護程序方式運行于一個或多個服務器中,隨時接受客戶端的連接操作,客戶端可以由各種語言編寫,目前已知的客戶端API包括Perl/PHP/Python/Ruby/Java/C#/C等等??蛻舳嗽谂cme

5、mcached服務建立連接之后,接下來的事情就是存取對象了,每個被存取的對象都有一個唯一的標識符key,存取操作均通過這個key進行,保存到memcached中的對象實際上是放置內存中的,并不是保存在cache文件中的,這也是為什么memcached能夠如此高效快速的原因。注意,這些對象并不是持久的,服務停止之后,里邊的數(shù)據(jù)就會丟失。?與許多cache工具類似,Memcached的原理并不復雜。它采用了C/S的模式,在server端啟動服務進程,在啟動時可以指定監(jiān)聽的ip,自己的端口號,所使用的內存大小等幾個關鍵參數(shù)。一

6、旦啟動,服務就一直處于可用狀態(tài)。Memcached的目前版本是通過C實現(xiàn),采用了單進程,單線程,異步I/O,基于事件(event_based)的服務方式.使用libevent作為事件通知實現(xiàn)。多個Server可以協(xié)同工作,但這些Server之間是沒有任何通訊聯(lián)系的,每個Server只是對自己的數(shù)據(jù)進行管理。Client端通過指定Server端的ip地址(通過域名應該也可以)。需要緩存的對象或數(shù)據(jù)是以key->value對的形式保存在Server端。key的值通過hash進行轉換,根據(jù)hash值把value傳遞到對應的具體

7、的某個Server上。當需要獲取對象數(shù)據(jù)時,也根據(jù)key進行。首先對key進行hash,通過獲得的值可以確定它被保存在了哪臺Server上,然后再向該Server發(fā)出請求。Client端只需要知道保存hash(key)的值在哪臺服務器上就可以了。?Java代碼??1.????????其實說到底,memcache?的工作就是在專門的機器的內存里維護一張巨大的?hash?表,來存儲經(jīng)常被讀寫的一些數(shù)組與文件,從而極大的提高網(wǎng)站的運行效率。??2.??3.memcache測試:??4.package?com.ctoall.co

8、re;??5.??6.import?java.util.Date;??7.??8.import?com.danga.MemCached.MemCachedClient;??9.import?com.danga.MemCached.SockIOPool;??10.??11.@SuppressWarnings("depr

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內容,確認文檔內容符合您的需求后進行下載,若出現(xiàn)內容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。