第一次使用緩存,因?yàn)闆]預(yù)熱,翻車了
預(yù)熱一般指緩存預(yù)熱,一般用在高并發(fā)系統(tǒng)中,為了提升系統(tǒng)在高并發(fā)情況下的穩(wěn)定性的一種手段。 緩存預(yù)熱是指在系統(tǒng)啟動(dòng)之前或系統(tǒng)達(dá)到高峰期之前,通過預(yù)先將常用數(shù)據(jù)加載到緩存中,以提高緩存命中率和系統(tǒng)性能的過程。緩存預(yù)熱的目的是盡可能地避免緩存擊穿...
為什么JDK 15要廢棄偏向鎖?
在JDK 1.7中,引入了偏向鎖的概念來優(yōu)化synchronized的性能,但是偏向鎖,在JDK 15中已經(jīng)被廢棄了。 那么,為什么呢?(https://openjdk.org/jeps/374 ) JDK 15決定廢棄偏向鎖的主要原因是:...
InnoDB為什么不用跳表,Redis為什么不用B+樹?
Innodb是MySQL的執(zhí)行引擎,MySQL是一種關(guān)系型數(shù)據(jù)庫,而Redis是一種非關(guān)系型數(shù)據(jù)庫。這兩者之間比較大的區(qū)別是:關(guān)系型數(shù)據(jù)庫以表的形式進(jìn)行存儲(chǔ)數(shù)據(jù),而非關(guān)系型數(shù)據(jù)庫以Key-value的形式存儲(chǔ)數(shù)據(jù)。 在InnoDB中,索引是...
解決冪等問題,只需要記住這個(gè)口訣
作為開發(fā)人員,我們每天都要開發(fā)大量的接口,其中包括了讀接口和寫接口,而對(duì)于寫接口來說,除了要保證他的性能、可用性以外,還需要有一個(gè)重要的問題,那就是考慮如何保證接口的冪等性。 冪等性 什么是冪等性? 冪等(idempotent、idempo...
CMS和G1改用三色標(biāo)記法,可達(dá)性分析到底做錯(cuò)了什么?
我們都知道, 當(dāng)JVM判斷對(duì)象不再存活的時(shí)候,便會(huì)在下一次GC時(shí)候?qū)⒃搶?duì)象回收掉,為堆騰出空間,而JVM判斷對(duì)象存活的算法大家比較熟知的有兩種,分別是引用計(jì)數(shù)法和可達(dá)性分析算法 引用計(jì)數(shù)法:給對(duì)象中添加一個(gè)引用計(jì)數(shù)器,每當(dāng)有一個(gè)地方引用它,...
CAS確定完全不需要鎖嗎?
CAS大家都知道,這是一項(xiàng)樂觀鎖技術(shù),是Compare And Swap的簡(jiǎn)稱,顧名思義就是先比較再替換。 雖然他叫樂觀鎖,但是我們都知道它是不需要加鎖的,在JDK1.5 中的JUC就是建立在CAS之上的。相對(duì)于synchronized這種...
公開發(fā)表
公開發(fā)表,作品名稱:Java面試寶典,作者:張洪亮,著作權(quán)人:張洪亮,登記號(hào):魯作登字-2023-L-00123943
并發(fā)編程的原子性 != 事務(wù)ACID的原子性
關(guān)于原子性,很多人在多個(gè)地方都聽說過,大家也都背的很熟悉。 在事務(wù)的ACID中,有原子性的概念,在并發(fā)編程的原子性、可見性、有序性中也有原子性的概念。 有人認(rèn)為他們是一樣的,甚至很多人在說原子性的時(shí)候也都是這么說的: 原子性是指事務(wù)是一個(gè)不...
Innodb的RR到底有沒有解決幻讀?
關(guān)于Innodb中的REPEATABLE READ這種隔離級(jí)別到底有沒有解決幻讀?好像眾說紛紜,大家的說法都不一致。 有的人說,RR當(dāng)然沒解決幻讀了,因?yàn)橹挥蠸erializable才能解決幻讀。 也有人說,RR解決了幻讀,因?yàn)镽R中加了間...
Spring Cloud 2022發(fā)布,這幾個(gè)組件要移除了!
繼SpringBoot 3.0和SpringFramework 6.0之后,Spring Cloud 終于也推出了新版本——2022.0.0,官網(wǎng)把這個(gè)版本命名為Kilburn。 目前在Maven倉(cāng)庫中已經(jīng)可以下載使用了,通過BOM文件即可...