<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      JetCache設(shè)計原理淺析

      1、目錄

      2、JetCache介紹

      image.png

      3、如何設(shè)計一個緩存組件?

      image.png

      4、SpringCache VS JetCache

      image.png

      5、JetCache基本使用

      5.1 JetCache配置信息

      jetcache:
        statIntervalMinutes: 60
        areaInCacheName: false
        penetrationProtect: true
        enableMethodCache: true
        hiddenPackages: com.xxx.xxx,com.xxx.xxx
        local:
          default:
            type: caffeine # 支持的類型:linkedhashmap、caffeine
            limit: 100
            keyConvertor: fastjson # 支持的類型:fastjson,可自定義轉(zhuǎn)換器函數(shù)
            expireAfterWriteInMillis: 600000
            expireAfterAccessInMillis: 300000 
        remote:
          default:
            type: redis.lettuce # 支持的類型:redis、redis.lettuce
            keyPrefix: '系統(tǒng)簡稱:所屬名字:'
            keyConvertor: fastjson
            valueEncoder: java # 支持的類型:kryo、java,可自定義編碼器
            valueDecoder: java # 支持的類型:kryo、java,可自定義解碼器
            expireAfterWriteInMillis: 3600000
            #readFrom: slavePreferred # 優(yōu)先從Slave節(jié)點中讀取
            uri: redis-sentinel://host1:26379,host2:26379,host3:26379/?sentinelMasterId=mymaster # 哨兵模式
            #uri: redis://127.0.0.1:6379/ # 單節(jié)點模式
            #mode: masterslave # 設(shè)置為主從模式
            #uri: # 集群模式
            #- redis://127.0.0.1:7000
            #- redis://127.0.0.1:7001
            #- redis://127.0.0.1:7002
      

      image.png
      image.png
      image.png

      5.2、JetCache使用示例

      image.png
      image.png
      image.png
      image.png
      image.png

      6、JetCache原理

      image.png

      • Cache:緩存接口,定義基本方法
      • AbstractCache:抽象類,緩存接口的繼承者,提供基本實現(xiàn),具體實現(xiàn)交由不同的子類
      • LinkedHashMapCache:基于LinkedHashMap設(shè)計的簡易內(nèi)存緩存
      • CaffeineCache:基于Caffeine工具設(shè)計的內(nèi)存緩存
      • RedisCache:Redis實現(xiàn),使用Jedis客戶端
      • RedisLettuceCache:Redis實現(xiàn),使用Lettuce客戶端
      • MultiLevelCache:兩級緩存,用于封裝EmbeddedCache(本地緩存)和ExternalCache(遠程緩存)
      • RefreshCache:基于裝飾器模式Decorator,提供自動刷新功能
      • LazyInitCache:用于@CreateCache注解創(chuàng)建的緩存實例,依賴于Spring

      JetCache源碼入口

      @EbableMethodCache -> JetCacheInterceptor
      JetCacheAutoConfiguration

      緩存get/put基本實現(xiàn)

      Cache->AbstractCache->AbstractEmbeddedCache->LinkedHashMapCache
      get()->GET()->do_GET()->map.get()

      獲取/存放 數(shù)據(jù) -> 構(gòu)建CacheResult -> 數(shù)據(jù)統(tǒng)計CacheState -> 緩存監(jiān)控CacheMonitor

      緩存過期時間的實現(xiàn)

      被動過期:
      image.png
      主動過期 Cleaner:
      image.png
      image.png

      緩存自動刷新的實現(xiàn)

      RefreshCache
      image.png
      image.png
      image.png

      防止緩存擊穿的實現(xiàn)

      @CachePenetrationProtect -> AbstractCache.computeIfAbsentImpl() -> synchronizedLoad();
      image.png
      image.png

      參考:

      1. alibaba/jetcache

      2. JetCache 緩存框架的使用以及源碼分析

      3. JetCache源碼分析

      posted @ 2022-09-05 21:37  一枝花算不算浪漫  閱讀(721)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 18分钟处破好疼哭视频在线观看| 在线视频中文字幕二区| 免费的特黄特色大片| 思思99热精品在线| 人人超人人超碰超国产| 一区二区三区国产不卡| 精品久久久久中文字幕日本| 日本阿v片在线播放免费| 婷婷开心深爱五月天播播| 国产成人综合亚洲欧美日韩| 国产亚洲一区二区三区av| 精品国产女同疯狂摩擦2| 风韵丰满熟妇啪啪区老熟熟女| 成人亚洲一区二区三区在线| 日韩A人毛片精品无人区乱码| 久久精品久久电影免费理论片| 精品无码久久久久久久久久| 亚洲成人av综合一区| 国产视频一区二区三区四区视频| 国产精品无码一区二区三区电影| 99中文字幕精品国产| 91九色国产成人久久精品| 亚洲中文字幕无码av永久| 国产一精品一av一免费| 精品无码国产污污污免费| 久久精品女人天堂av| 久久www免费人成看片中文 | 国产高清乱码又大又圆| 国产欧美在线手机视频| 国产精品亚洲综合第一页| 少妇伦子伦精品无吗| 无码视频一区二区三区| 国产精品中文字幕在线| 阜阳市| 欧美色欧美亚洲高清在线视频| 乱码中字在线观看一二区| 中文字幕人妻av12| 成人精品视频一区二区三区| 亚洲毛片不卡AV在线播放一区| 亚洲男人天堂2021| 国产亚洲人成网站在线观看|