欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MybatisPlus二級(jí)緩存體系探究分析

 更新時(shí)間:2022年04月02日 18:39:07   作者:Java知識(shí)圖譜  
這篇文章主要為大家介紹了MybatisPlus二級(jí)緩存體系探究分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪

一、序言

本文承接[Mybatis緩存體系探究],提供基于MybatisPlus技術(shù)可用于生產(chǎn)環(huán)境下的二級(jí)緩存解決方案。

1、前置條件

掌握MyBatis二級(jí)緩存的原理

有關(guān)MyBatis緩存原理內(nèi)容,參考[Mybatis緩存體系探究]

選擇符合條件的MybatisPlus版本

本方案對(duì)MybatisPlus版本有嚴(yán)格的限制,使用版本不低于3.4.3.4,如果低于此版本,則無(wú)法滿(mǎn)足生產(chǎn)環(huán)境條件下的閉環(huán)需求。

正確處理連接(多表)查詢(xún)

正確的多表連接查詢(xún),請(qǐng)參考[MybatisPlus連接查詢(xún)解決方案]

2、目標(biāo)與收獲

如果應(yīng)用有分布式緩存需求,那么直接棄用二級(jí)緩存的方案,直接選配業(yè)務(wù)層緩存方案。

假如應(yīng)用沒(méi)有分布式場(chǎng)景,那么通過(guò)簡(jiǎn)單改造,引入二級(jí)緩存,能夠極大提高響應(yīng)效率。

二、原理分析

1、二級(jí)緩存

選用MybatisPlus來(lái)實(shí)現(xiàn)二級(jí)緩存最大的考量是其使用的單表操作,換而言之,正確的使用二級(jí)緩存的前提是不能使用傳統(tǒng)意義上的多表連接操作,否則一定存在緩存數(shù)據(jù)不能實(shí)時(shí)更新的情況。

2、緩存數(shù)據(jù)更新

所有的緩存數(shù)據(jù)必然涉及到數(shù)據(jù)更新,二級(jí)緩存同樣需要主動(dòng)更新數(shù)據(jù)。二級(jí)緩存是以命名空間為單位的,換而言之同一個(gè)命名空間內(nèi)的數(shù)據(jù)更新會(huì)自動(dòng)觸發(fā)緩存更新(本質(zhì)為數(shù)據(jù)失效)。查詢(xún)操作緩存數(shù)據(jù),增加、修改、刪除數(shù)據(jù)使緩存失效。

自成體系的緩存更新與管理在提高了應(yīng)用響應(yīng)速度的同時(shí)降低了緩存管理的復(fù)雜度,有利于提高開(kāi)發(fā)效率。

3、緩存的區(qū)別

這里提到的二級(jí)緩存有必要與三級(jí)緩存(業(yè)務(wù)緩存)做區(qū)分,二級(jí)緩存指DAO層緩存,使用緩存的目的是降低網(wǎng)絡(luò)IO對(duì)應(yīng)用的影響;三級(jí)緩存指業(yè)務(wù)層緩存,主要是降低復(fù)雜計(jì)算對(duì)CPU性能的占用。

三、本地二級(jí)緩存

對(duì)于普通項(xiàng)目,使用內(nèi)置本地二級(jí)緩存即能夠滿(mǎn)足需求,這里以MybatisPlus為例說(shuō)明如何正確的使用二級(jí)緩存。

1、兩套API

MybatisPlus內(nèi)置封裝兩套訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)的API,一是以BaseMapper為基礎(chǔ)的API,另一套是以AR為基礎(chǔ)的API,二者在使用二級(jí)緩存不可通用。表現(xiàn)形式是BaseMapper內(nèi)置接口緩存的數(shù)據(jù),使用AR內(nèi)置接口更新數(shù)據(jù)時(shí)無(wú)法清楚緩存,至少到此版本尚不支持。

考慮到BaseMapper接口體系比較豐富,因此選擇保留BaseMapper體系接口而禁用AR接口,從機(jī)制上保證使用的是一套接口,從而調(diào)用增刪查改能夠?qū)崟r(shí)刷新二級(jí)緩存。

需要指明的是Mapper層和Service層使用的是同一套接口,因此可放心使用。

2、緩存實(shí)現(xiàn)類(lèi)型

默認(rèn)二級(jí)緩存實(shí)現(xiàn)類(lèi)型為PerpetualCache,此中類(lèi)型的緩存要求被緩存的對(duì)象實(shí)現(xiàn)序列化接口。其它類(lèi)型的本地緩存有EhCache、Caffeine等。

以上就是MybatisPlus二級(jí)緩存體系探究分析的詳細(xì)內(nèi)容,更多關(guān)于MybatisPlus二級(jí)緩存體系的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • OB系統(tǒng)變量Variables及ODC管理會(huì)話(huà)功能詳解

    OB系統(tǒng)變量Variables及ODC管理會(huì)話(huà)功能詳解

    這篇文章主要為大家介紹了OB系統(tǒng)變量Variables及ODC管理會(huì)話(huà)功能詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12
  • vscode安裝配置clang-format插件及使用小結(jié)

    vscode安裝配置clang-format插件及使用小結(jié)

    clang-format是代碼格式化工具,本文主要介紹了vscode安裝配置clang-format,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-10-10
  • git分支或指定文件回退到指定版本命令詳解

    git分支或指定文件回退到指定版本命令詳解

    作為一名后端開(kāi)發(fā),相信大家一定遇到過(guò)這樣的情景,代碼開(kāi)發(fā)人員過(guò)多,并且開(kāi)發(fā)分支過(guò)多,導(dǎo)致代碼版本管理困難,這樣就難免遇到一些代碼合并出錯(cuò),下面這篇文章主要給大家介紹了關(guān)于git分支或指定文件回退到指定版本命令的相關(guān)資料,需要的朋友可以參考下
    2023-12-12
  • 怎樣刪除Git中緩存的用戶(hù)名和密碼

    怎樣刪除Git中緩存的用戶(hù)名和密碼

    這篇文章主要介紹了怎樣刪除Git中緩存的用戶(hù)名和密碼問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 在Linux下搭建Git服務(wù)器的方法詳解

    在Linux下搭建Git服務(wù)器的方法詳解

    雖然用Git的人不多,但是git不僅僅是svn等版本控制系統(tǒng)的替換工具,它自己強(qiáng)大的功能,穩(wěn)定的性能,方便快捷等優(yōu)點(diǎn)自然不需多說(shuō),不了解的人自行去網(wǎng)上查看。本文將會(huì)詳細(xì)介紹在Linux下搭建Git服務(wù)器的方法,有需要的朋友們可以參考借鑒。
    2016-09-09
  • VS2019創(chuàng)建MFC程序的實(shí)現(xiàn)方法

    VS2019創(chuàng)建MFC程序的實(shí)現(xiàn)方法

    這篇文章主要介紹了VS2019創(chuàng)建MFC程序的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • 關(guān)于vs2019安裝不了擴(kuò)展問(wèn)題的解決方法

    關(guān)于vs2019安裝不了擴(kuò)展問(wèn)題的解決方法

    這篇文章主要介紹了關(guān)于vs2019安裝不了擴(kuò)展問(wèn)題的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • 算法系列15天速成 第七天 線(xiàn)性表【上】

    算法系列15天速成 第七天 線(xiàn)性表【上】

    人活在社會(huì)上不可能孤立,比如跟美女有著千絲萬(wàn)縷的關(guān)系,有的是一對(duì)一,有的是一對(duì)多,有的是多對(duì)多
    2013-11-11
  • matlab 生成.bmp格式的文件

    matlab 生成.bmp格式的文件

    這篇文章主要介紹了matlab 生成.bmp格式的文件,本文以大小為M*N的圖片為例,說(shuō)明頭文件格式和內(nèi)容。需要的朋友可以參考下
    2018-10-10
  • ASCII碼對(duì)照表以及各個(gè)字符的解釋(精華版)

    ASCII碼對(duì)照表以及各個(gè)字符的解釋(精華版)

    ASCII(American Standard Code for Information Interchange,美國(guó)信息互換標(biāo)準(zhǔn)代碼)是一套基于拉丁字母的字符編碼,共收錄了 128 個(gè)字符,用一個(gè)字節(jié)就可以存儲(chǔ),它等同于國(guó)際標(biāo)準(zhǔn) ISO/IEC 646
    2020-03-03

最新評(píng)論