中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Redis 和 Ehcached 的 區別

發布時間:2020-06-21 10:47:40 來源:網絡 閱讀:310 作者:16521544193 欄目:編程語言

Redis

屬于獨立的運行程序,需要單獨安裝后,使用JAVA中的Jedis來操縱。因為它是獨立,所以如果你寫個單元測試程序,放一些數據在Redis中,然后又寫一個程序去拿數據,那么是可以拿到這個數據的。

Ehcache

與Redis明顯不同,它與java程序是綁在一起的,java程序活著,它就活著。譬如,寫一個獨立程序放數據,再寫一個獨立程序拿數據,那么是拿不到數據的。只能在獨立程序中才能拿到數據。ehcache是Hibernate中默認的CacheProvider,直接在jvm虛擬機中緩存,速度快,效率高;但是緩存共享麻煩,集群分布式應用不方便。 緩存數據有兩級:內存和磁盤,因此無需擔心容量問題,提供Hibernate的緩存實現 。

Ehcache特點

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!

貼一段基本使用代碼?官網:www.fhadmin.org

CacheManager?manager?=?CacheManager.newInstance("src/config/ehcache.xml");
Ehcache?cache?=?new?Cache("testCache",?5000,?false,?false,?5,?2);
cacheManager.addCache(cache);

?代碼中有個ehcache.xml文件,現在來介紹一下這個文件中的一些屬性
???????name:緩存名稱。
???????maxElementsInMemory:緩存最大個數。
???????eternal:對象是否永久有效,一但設置了,timeout將不起作用。
???????timeToIdleSeconds:設置對象在失效前的允許閑置時間(單位:秒)。僅當eternal=false對象不是永久有效時使用,可選屬性,默認值是0,也就是可閑置時間無窮大。
???????timeToLiveSeconds:設置對象在失效前允許存活時間,最大時間介于創建時間和失效時間之間。僅當eternal=false對象不是永久有效時使用,默認是0.,也就是對象存活時?間無窮大。
???????overflowToDisk:當內存中對象數量達到maxElementsInMemory時,Ehcache將會對象寫到磁盤中。
???????diskSpoolBufferSizeMB:這個參數設置DiskStore(磁盤緩存)的緩存區大小。默認是30MB。每個Cache都應該有自己的一個緩沖區。
???????maxElementsOnDisk:硬盤最大緩存個數。
???????diskPersistent:是否緩存虛擬機重啟期數據?Whether?the?disk?store?persists?between?restarts?of?the?Virtual?Machine.?The?default?value?is?false.
???????diskExpiryThreadIntervalSeconds:磁盤失效線程運行時間間隔,默認是120秒。
???????memoryStoreEvictionPolicy:當達到maxElementsInMemory限制時,Ehcache將會根據指定的策略去清理內存。默認策略是LRU。你可以設置為?FIFO或是LFU。
???????clearOnFlush:內存數量最大時是否清除。

redis是通過socket訪問到緩存服務,效率比ecache低,比數據庫要快很多,處理集群和分布式緩存方便,有成熟的方案。

如果是單個應用或者對緩存訪問要求很高的應用,用ehcache。
如果是大型系統,存在緩存共享、分布式部署、緩存內容很大的,建議用redis。


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

北票市| 榆树市| 五家渠市| 全椒县| 汝城县| 田阳县| 云南省| 酉阳| 剑川县| 宜州市| 建瓯市| 松桃| 宜川县| 修文县| 厦门市| 和政县| 剑阁县| 新民市| 黄石市| 塔城市| 宝应县| 资中县| 鄂托克前旗| 铜梁县| 高雄县| 化隆| 甘孜县| 石柱| 龙川县| 阿坝县| 泾源县| 双流县| 清远市| 仪征市| 海伦市| 景宁| 电白县| 溧阳市| 比如县| 铜山县| 澄江县|