導航:首頁 > 編程語言 > javaweb緩存

javaweb緩存

發布時間:2022-06-02 18:02:07

java web開發緩存方案,ehcache和redis哪個更好

Ehcache
在java項目廣泛的使用。它是一個開源的、設計於提高在數據從RDBMS中取出來的高花費、高延遲採取的一種緩存方案。正因為Ehcache具有健壯性(基於java開發)、被認證(具有apache 2.0 license)、充滿特色(稍後會詳細介紹),所以被用於大型復雜分布式web application的各個節點中。
1. 夠快
Ehcache的發行有一段時長了,經過幾年的努力和不計其數的性能測試,Ehcache終被設計於large, high concurrency systems.
2. 夠簡單
開發者提供的介面非常簡單明了,從Ehcache的搭建到運用運行僅僅需要的是你寶貴的幾分鍾。其實很多開發者都不知道自己用在用Ehcache,Ehcache被廣泛的運用於其他的開源項目
比如:hibernate
3.夠袖珍
關於這點的特性,官方給了一個很可愛的名字small foot print ,一般Ehcache的發布版本不會到2M,V 2.2.3 才 668KB。
4. 夠輕量
核心程序僅僅依賴slf4j這一個包,沒有之一!
5.好擴展
Ehcache提供了對大數據的內存和硬碟的存儲,最近版本允許多實例、保存對象高靈活性、提供LRU、LFU、FIFO淘汰演算法,基礎屬性支持熱配置、支持的插件多
6.監聽器
緩存管理器監聽器 (CacheManagerListener)和 緩存監聽器(CacheEvenListener),做一些統計或數據一致性廣播挺好用的
如何使用?
夠簡單就是Ehcache的一大特色,自然用起來just so easy!

redis
redis是在memcache之後編寫的,大家經常把這兩者做比較,如果說它是個key-value store 的話但是它具有豐富的數據類型,我想暫時把它叫做緩存數據流中心,就像現在物流中心那樣,order、package、store、classification、distribute、end。現在還很流行的LAMP PHP架構 不知道和 redis+mysql 或者 redis + mongodb的性能比較(聽群里的人說mongodb分片不穩定)。
先說說reidis的特性

1. 支持持久化
redis的本地持久化支持兩種方式:RDB和AOF。RDB 在redis.conf配置文件里配置持久化觸發器,AOF指的是redis沒增加一條記錄都會保存到持久化文件中(保存的是這條記錄的生成命令),如果不是用redis做DB用的話還會不要開AOF ,數據太龐大了,重啟恢復的時候是一個巨大的工程!
2.豐富的數據類型
redis 支持 String 、Lists、sets、sorted sets、hashes 多種數據類型,新浪微博會使用redis做nosql主要也是它具有這些類型,時間排序、職能排序、我的微博、發給我的這些功能List 和 sorted set 的強大操作功能息息相關
3.高性能
這點跟memcache很想像,內存操作的級別是毫秒級的比硬碟操作秒級操作自然高效不少,較少了磁頭尋道、數據讀取、頁面交換這些高開銷的操作!這也是NOSQL冒出來的原因吧,應該是高性能
是基於RDBMS的衍生產品,雖然RDBMS也具有緩存結構,但是始終在app層面不是我們想要的那麼操控的。
4.replication
redis提供主從復制方案,跟mysql一樣增量復制而且復制的實現都很相似,這個復制跟AOF有點類似復制的是新增記錄命令,主庫新增記錄將新增腳本發送給從庫,從庫根據腳本生成記錄,這個過程非常快,就看網路了,一般主從都是在同一個區域網,所以可以說redis的主從近似及時同步,同事它還支持一主多從,動態添加從庫,從庫數量沒有限制。 主從庫搭建,我覺得還是採用網狀模式,如果使用鏈式(master-slave-slave-slave-slave·····)如果第一個slave出現宕機重啟,首先從master 接收 數據恢復腳本,這個是阻塞的,如果主庫數據幾TB的情況恢復過程得花上一段時間,在這個過程中其他的slave就無法和主庫同步了。

5.更新快
這點好像從我接觸到redis到目前為止 已經發了大版本就4個,小版本沒算過。redis作者是個非常積極的人,無論是郵件提問還是論壇發帖,他都能及時耐心的為你解答,維護度很高。有人維護的話,讓我們用的也省心和放心。目前作者對redis 的主導開發方向是redis的集群方向。

所以如果希望簡單就用ehcache,如果開發任務比較復雜,希望得到比較多的支持什麼的就redis

❷ 總是聽說很多javaweb系統用redis或memcache做緩存,具體怎麼操作的

redis是一個內存資料庫(它的數據存儲在內存中,一段時間之後會自動讀入硬碟),和關系型資料庫(MySQL,oracle)有很大的不同,但它也是一個資料庫,它需要一套自己的操作API。既然是緩存,那麼你就需要把那些經常需要讀取的數據放到redis中就OK,具體怎麼操作?不就是去學習怎麼連接redis,然後用redis的操作API做增刪改查嗎。。。

❸ java-web項目裡面的緩存問題,在線等大神

  1. 一種解決方法是配一個listener,在裡面啟動定時器.

  2. 簡單緩存可以封裝LinkedHashMap,因為它是有順序和有大小限制的.在其基礎上加上大小和超時處理.

  3. 或者使用Guava的cache封裝,這是一個Google提供的java cache,可以像Map一樣使用.

  4. 在java外部使用cache,便於多個伺服器共享數據.比如Redis,Memcached,

❹ java web緩存緩存什麼數據

對於Java開發者,JCS是一個強大的,然而卻簡單易用的緩存系統。它為桌面和Web應用程序提供了同樣的數據緩存。桌面應用程序的增長----像Web應用要求增強速度和靈活性一樣,通過使用緩存數據也有助於達到同樣的效果。
怎樣配置和使用JCS,同時包括了基本緩存方法所需要的語法,
在一個普通的Web應用程序中使用的緩存對象,以及獲取緩存元數據的方法。

❺ javaweb 如何將請求緩存,或者說延時請求

把用戶參數請求入隊列,然後直接返回用戶調用,後續消費者慢慢處理請求就好了,不過這樣子只能返回調用是否成功,並不能立即返回業務處理結果

閱讀全文

與javaweb緩存相關的資料

熱點內容
怎麼讓圖片左右壓縮 瀏覽:651
白鹿原pdf 瀏覽:429
人民幣怎麼演算法 瀏覽:754
什麼app可以聽懂刺蝟說話 瀏覽:596
安卓機內存小如何擴大 瀏覽:125
粉絲伺服器怎麼和安卓手機通信 瀏覽:398
初中數學競賽pdf 瀏覽:568
linux自定義安裝 瀏覽:188
fpic要在每個編譯文件 瀏覽:866
編譯原理廣義推導的定義 瀏覽:911
怎麼在已有的壓縮文件里加密碼 瀏覽:517
安卓手機怎麼設置系統軟體 瀏覽:766
php前端java後端 瀏覽:794
數據框轉換為矩陣python 瀏覽:74
單片機程序反匯編 瀏覽:853
編程和實物不一樣 瀏覽:880
天官賜福小說什麼app可看 瀏覽:208
原車空調改壓縮機 瀏覽:103
python調用其它文件中的函數 瀏覽:484
安卓車載大屏如何下載歌詞 瀏覽:959