成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

ehcache的三級緩存-創(chuàng)新互聯(lián)

開發(fā)架構(gòu)中,經(jīng)常把ehcache+redis兩集緩存來做配合。。通常ehcache+redis+mysql 來作為三層存儲架構(gòu),最后到數(shù)據(jù)庫,然后db----->redis ---->ehcache 來供程序查詢使用。。
而ehcache本身也支持3級緩存 “堆內(nèi)內(nèi)存、堆外內(nèi)存、磁盤存儲”
作為本地緩存框架, Ehcache支持多層緩存模式,常用的有三種數(shù)據(jù)存儲介質(zhì):

1堆內(nèi)
直接在JVM堆中存儲JAVA對象,優(yōu)點(diǎn)是速度快;缺點(diǎn)是會增加GC的頻次和GC時間。

創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:做網(wǎng)站、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的保亭黎族網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

2堆外
在堆外內(nèi)存中存儲序列化的JAVA對象,優(yōu)點(diǎn)是不會增加GC;缺點(diǎn)是存取速度較慢,需要額外的時間處理序列化和反序列化。

3 磁盤
緩存數(shù)據(jù)到磁盤,優(yōu)點(diǎn)是掉電不會丟失數(shù)據(jù),可用空間更大;缺點(diǎn)是存取速度比堆外慢很多。

ehcache的三級緩存

4三種結(jié)構(gòu)一起使用,結(jié)構(gòu)如上圖。

5時序圖

在Ehcache的多層緩存結(jié)構(gòu)中,最底層被稱為Authoritative Tier,其余的緩存層被稱為Caching Tier。Authoritative Tier層數(shù)據(jù)是最全的,其余層的數(shù)據(jù)都是該層的數(shù)據(jù)子集,只是臨時存儲數(shù)據(jù)。

比如,堆內(nèi)+堆外模式中,堆外為Authoritative Tier。堆內(nèi)+堆外+磁盤模式中,磁盤為Authoritative Tier。

ehcache的三級緩存

ehcache的三級緩存

6 序列化

堆外和磁盤存儲時,必須先將對象序列化為java.nio.ByteBuffer,Ehcache允許用戶按下面的代碼傳入自定義的序列化類。

7 轉(zhuǎn)一個demo

import java.io.File;
import org.ehcache.Cache;
import org.ehcache.PersistentCacheManager;
import org.ehcache.UserManagedCache;
import org.ehcache.config.builders.CacheConfigurationBuilder;
import org.ehcache.config.builders.CacheManagerBuilder;
import org.ehcache.config.builders.ResourcePoolsBuilder;
import org.ehcache.config.builders.UserManagedCacheBuilder;
import org.ehcache.config.units.EntryUnit;
import org.ehcache.config.units.MemoryUnit;

public class Main {

public static void main(String[] args) {

    PersistentCacheManager persistentCacheManager = CacheManagerBuilder.newCacheManagerBuilder()
    .with(CacheManagerBuilder.persistence(getStoragePath() + File.separator + "myData")) 
    .withCache("threeTieredCache",
        CacheConfigurationBuilder.newCacheConfigurationBuilder(Integer.class, String.class,
            ResourcePoolsBuilder.newResourcePoolsBuilder()
                .heap(10, EntryUnit.ENTRIES)  //堆
                .offheap(1, MemoryUnit.MB)    //堆外
                .disk(20, MemoryUnit.GB)      //磁盤
            )
    ).build(true);

    Cache<Integer, String> threeTieredCache = persistentCacheManager.getCache("threeTieredCache", Integer.class, String.class);

    //讀
    for (int i=0;i<=20000;i++){
        threeTieredCache.put(i, "$"+i);
    }

    //寫
    for (int i=0;i<=200000;i++){
        String value = threeTieredCache.get(i);
        System.out.println("get at "+i+":"+value);
    }

    persistentCacheManager.close();
}

private static String getStoragePath() {
    // TODO Auto-generated method stub
    return "d:";
}

}

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

標(biāo)題名稱:ehcache的三級緩存-創(chuàng)新互聯(lián)
分享鏈接:http://jinyejixie.com/article20/cshijo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、自適應(yīng)網(wǎng)站、網(wǎng)站制作建站公司、動態(tài)網(wǎng)站ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
千阳县| 济宁市| 北碚区| 曲沃县| 永修县| 饶河县| 饶河县| 宝鸡市| 桑植县| 东安县| 芜湖市| 南和县| 古蔺县| 缙云县| 阳朔县| 德清县| 思茅市| 临猗县| 安陆市| 德格县| 达拉特旗| 革吉县| 洮南市| 封开县| 聂荣县| 新民市| 舟山市| 南平市| 东至县| 郴州市| 清新县| 双牌县| 定远县| 盐城市| 杭锦后旗| 阿拉善盟| 克什克腾旗| 西安市| 邵阳县| 寿阳县| 凤庆县|