synchronized關(guān)鍵字 在java里蚌吸,使用的最基本互斥同步手段就是synchronized關(guān)鍵字。synchronized關(guān)鍵字經(jīng)過Javac編譯后敷燎,會在同步代碼塊的...
synchronized關(guān)鍵字 在java里蚌吸,使用的最基本互斥同步手段就是synchronized關(guān)鍵字。synchronized關(guān)鍵字經(jīng)過Javac編譯后敷燎,會在同步代碼塊的...
IO顧名思義就是進(jìn)行輸入與輸出侍筛,對于Redis來說可描述為Redis服務(wù)進(jìn)程想要從內(nèi)核中的讀取Redis客戶端發(fā)送的請求,然后進(jìn)行數(shù)據(jù)的內(nèi)核空間到用戶空間的拷貝的過程,反之客...
一硝桩、工作流程: 1.讀取 MyBatis 配置文件:mybatis-config.xml 為 MyBatis 的全局配置文件,配置了 MyBatis 的運(yùn)行環(huán)境等信息枚荣,例如數(shù)...
Redis的幾種數(shù)據(jù)結(jié)構(gòu): 1.SDS(動態(tài)字符串) SDS存儲String類型的數(shù)據(jù)碗脊,底層是一個char[],同時會維護(hù)字符串的長度橄妆,和申請的內(nèi)存大小衙伶,動態(tài)擴(kuò)容如下機(jī)制: ...
SpringMVC是spring容器中的子容器蹋艺,只負(fù)責(zé)Controller層相關(guān)對象的管理。 核心組件: 1.前端控制器:DispatcherServlet -> 實(shí)現(xiàn)請...
1.線程的屬性 線程是處理機(jī)調(diào)度的單位业扒; 多CPU計(jì)算機(jī)中检吆,各個線程可以占用不同的CPU; 每個線程都有一個線程ID程储、線程控制塊蹭沛; 線程有就緒、阻塞虱肄、運(yùn)行三種基本狀態(tài)致板; 線程...
內(nèi)存模型: 1.緩沖池 InnoDB存儲引擎是基于磁盤儲存的,并將其中的記錄按照頁的方式進(jìn)行管理咏窿。由于CPU速度與磁盤速度之間的鴻溝斟或,InnoDB采用了緩沖池技術(shù)來提高數(shù)據(jù)庫...
InnoDB是儲存引擎支持事務(wù),其設(shè)計(jì)目標(biāo)主要面向在線事務(wù)處理的應(yīng)用集嵌,其特點(diǎn)是行鎖設(shè)計(jì)萝挤、支持外鍵、支持非鎖定讀根欧,是Mysql_5.5.8版本以后的默認(rèn)儲存引擎怜珍。 InnoDB...
數(shù)據(jù)庫中非常常用的索引數(shù)據(jù)結(jié)構(gòu)——B+ 樹,在過去很多年里它都是數(shù)據(jù)庫索引的首選實(shí)現(xiàn)方式凤粗,但是這種數(shù)據(jù)結(jié)構(gòu)也并不是很完美酥泛。因?yàn)椋看涡薷臄?shù)據(jù)都很有可能破壞 B+ 樹的約束嫌拣,我...
結(jié)論:三級緩存的作用是為了解決spring中Bean依賴注入時發(fā)生的循環(huán)依賴柔袁。如果不需要AOP,那么只需要二級緩存即可實(shí)現(xiàn)异逐,如果有AOP捶索,其實(shí)二級緩存也能夠?qū)崿F(xiàn),但是會打破B...
MVCC為多版本并發(fā)控制灰瞻,在Mysql中InnoDB使用了MVCC來實(shí)現(xiàn)數(shù)據(jù)庫事務(wù)的可重讀隔離級別腥例。主要功能是在多線程并發(fā)去修改數(shù)據(jù)庫某一張表時辅甥,會對事務(wù)之間進(jìn)行隔離,讓一次...
SpringAppliction.run(xxx.class, args); 準(zhǔn)備過程: 1.首先會判斷當(dāng)前環(huán)境類型,一般是servlet環(huán)境(通過在ClassPath下是否...
LinkedHashMap 是由一個HashMap 和LinkedList 雙向鏈表組成的凳鬓。 LRU:最近最少使用算法可以使用LinkedHashMap來實(shí)現(xiàn): HashMa...
跳表是在 O(log(n)) 時間內(nèi)完成增加茁肠、刪除、搜索操作的數(shù)據(jù)結(jié)構(gòu)缩举。跳表相比于樹堆與紅黑樹垦梆,其功能與性能相當(dāng),并且跳表的代碼長度相較下更短仅孩,其設(shè)計(jì)思想與鏈表相似托猩。 跳表是...