EhCache 是一個純Java的進程內緩存框架,是Hibernate中默認的CacheProvider。
使用EhCache緩存框架主要是爲了判斷重複Url,每次爬取一個網頁,都把Url存儲到緩存中,並且每次爬某個網頁之前,都去緩存中搜索下,假如存在的話,我們就不要爬取這個網頁了,不存在的話,我們就爬下網頁,爬取成功後,把這個Url存儲到緩存中;之所以用緩存框架,主要是速度快,相對於傳統數據庫;
Ehcache是一種廣泛使用的開源Java分佈式緩存。主要面向通用緩存,Java EE和輕量級容器。它具有內存和磁盤存儲,緩存加載器,緩存擴展,緩存異常處理程序,一個gzip緩存servlet過濾器,支持REST和SOAP api等特點。
主要的特性有:
1. 快速
2. 簡單
3. 多種緩存策略
4. 緩存數據有兩級:內存和磁盤,因此無需擔心容量問題
5. 緩存數據會在虛擬機重啓的過程中寫入磁盤
6. 可以通過RMI、可插入API等方式進行分佈式緩存
7. 具有緩存和緩存管理器的偵聽接口
8. 支持多緩存管理器實例,以及一個實例的多個緩存區域
9. 提供Hibernate的緩存實現