回答:1)業(yè)務(wù)數(shù)據(jù)在不斷地增長(zhǎng),不可能將所有數(shù)據(jù)全部存儲(chǔ)在 Redis 緩存中,內(nèi)存的價(jià)格遠(yuǎn)遠(yuǎn)大于磁盤。所以需要做淘汰機(jī)制的設(shè)計(jì);(2)緩存的淘汰就是根據(jù)一定的策略,將不太重要的數(shù)據(jù)從緩存中進(jìn)行刪除;(3)Redis 一共有 8 種淘汰策略,在 Redis 4.0 之前有 6 種,4.0 之后又增加了 2 種,如下圖:(4)緩存策略的解釋: ◆ volatile-random:在設(shè)置了過(guò)期時(shí)間的數(shù)據(jù)中...
回答:這是我前兩天整理的「Java后端開(kāi)發(fā)學(xué)習(xí)路線圖」,基本把Java后端開(kāi)發(fā)領(lǐng)域主流技術(shù)都?xì)w納起來(lái)了:注:本圖高清素材已收錄進(jìn)開(kāi)源項(xiàng)目:github.com/hansonwang99/JavaCollection,需要可自取。最最重要的就是編程基礎(chǔ)基礎(chǔ)部分扎實(shí)了,后面應(yīng)用框架部分的學(xué)習(xí)就會(huì)如魚得水;反之在學(xué)習(xí)應(yīng)用框架部分時(shí),如果感覺(jué)吃力,則非常有必要回頭補(bǔ)一補(bǔ)基礎(chǔ),這樣反復(fù)來(lái)回, 慢慢就能融會(huì)貫通了。...
回答:公司做了自己的分庫(kù)分表組件,下面就自己的經(jīng)驗(yàn)來(lái)看下分庫(kù)分表的優(yōu)點(diǎn)和碰到的問(wèn)題!何為分庫(kù)分表?采取一定的策略將大量的表數(shù)據(jù)分布在不同的數(shù)據(jù)庫(kù),表中實(shí)現(xiàn)數(shù)據(jù)的均衡存儲(chǔ)!分庫(kù)分表的背景:隨著信息數(shù)據(jù)的急劇增長(zhǎng),單點(diǎn)數(shù)據(jù)庫(kù)會(huì)有宕機(jī),或者單庫(kù)單表性能低下,查詢和存儲(chǔ)效率低的問(wèn)題,使用分庫(kù)分表實(shí)現(xiàn)數(shù)據(jù)的分布存儲(chǔ),性能更好,適合現(xiàn)在數(shù)據(jù)量多,用戶需求高的特點(diǎn)!分庫(kù)分表的優(yōu)點(diǎn):數(shù)據(jù)分布在不同的數(shù)據(jù)庫(kù)中,單表數(shù)據(jù)量...
...代中為什么要分為Eden和Survivor。 JVM中一次完整的GC流程是怎樣的,對(duì)象如何晉升到老年代,說(shuō)說(shuō)你知道的幾種主要的JVM參 數(shù)。 你知道哪幾種垃圾收集器,各自的優(yōu)缺點(diǎn),重點(diǎn)講下cms和G1,包括原理,流程,優(yōu)缺點(diǎn)。 垃圾回收...
...TIME_WAIT狀態(tài),為什么要等2MSL? 一次完整的HTTP請(qǐng)求過(guò)程是怎樣的DNS解析、TCP建聯(lián)、HTTP請(qǐng)求、HTTP相應(yīng) 真題匯總——2 HTTP2與HTTP的區(qū)別有哪些? 在你的項(xiàng)目中你使用過(guò)哪些設(shè)計(jì)模式?主要用來(lái)解決什么問(wèn)題? Object中的equal和hashCod...
...方式有幾種(四種)? 高并發(fā)、任務(wù)執(zhí)行時(shí)間短的業(yè)務(wù)怎樣使用線程池?并發(fā)不高、任務(wù)執(zhí)行時(shí)間長(zhǎng)的業(yè)務(wù)怎樣使用線程池?并發(fā)高、業(yè)務(wù)執(zhí)行時(shí)間長(zhǎng)的業(yè)務(wù)怎樣使用線程池? 如果你提交任務(wù)時(shí),線程池隊(duì)列已滿,這時(shí)會(huì)發(fā)生...
...務(wù)器的內(nèi)存開(kāi)銷,從而提高了服務(wù)器的性能。 Hibernate中怎樣實(shí)現(xiàn)類之間的關(guān)系?(如:一對(duì)多、多對(duì)多的關(guān)系) Hibernate中怎樣實(shí)現(xiàn)類之間的關(guān)系?(如:一對(duì)多、多對(duì)多的關(guān)系) 它們通過(guò)配置文件中的many-to-one、one-to-many、many-to-many來(lái)...
...。 Java基礎(chǔ) HashMap的源碼,實(shí)現(xiàn)原理,JDK8中對(duì)HashMap做了怎樣的優(yōu)化。 HaspMap擴(kuò)容是怎樣擴(kuò)容的,為什么都是2的N次冪的大小。 HashMap,HashTable,ConcurrentHashMap的區(qū)別。 極高并發(fā)下HashTable和ConcurrentHashMap哪個(gè)性能更好,為什么,如何...
...r JVM的GC頻率和延時(shí)都是多少,每次GC后存活對(duì)象的大小是怎樣的等。了解了這些信息我們才能明確后面調(diào)優(yōu)的方向。當(dāng)然,我們畢竟不是特別資深的JVM專家,因此也不必過(guò)多追求繁復(fù)的JVM監(jiān)控與調(diào)優(yōu)。只需要關(guān)注大的方面即可。...
...從而避免出現(xiàn)數(shù)據(jù)臟讀的現(xiàn)象。volatile實(shí)現(xiàn)原理volatile是怎樣實(shí)現(xiàn)了?比如一個(gè)很簡(jiǎn)單的Java代碼:instance = new Instancce() //instance是volatile變量在生成匯編代碼時(shí)會(huì)在volatile修飾的共享變量進(jìn)行寫操作的時(shí)候會(huì)多出Lock前綴的指令。 我...
...從而避免出現(xiàn)數(shù)據(jù)臟讀的現(xiàn)象。volatile實(shí)現(xiàn)原理volatile是怎樣實(shí)現(xiàn)了?比如一個(gè)很簡(jiǎn)單的Java代碼:instance = new Instancce() //instance是volatile變量在生成匯編代碼時(shí)會(huì)在volatile修飾的共享變量進(jìn)行寫操作的時(shí)候會(huì)多出Lock前綴的指令。 我...
...從而避免出現(xiàn)數(shù)據(jù)臟讀的現(xiàn)象。volatile實(shí)現(xiàn)原理volatile是怎樣實(shí)現(xiàn)了?比如一個(gè)很簡(jiǎn)單的Java代碼:instance = new Instancce() //instance是volatile變量在生成匯編代碼時(shí)會(huì)在volatile修飾的共享變量進(jìn)行寫操作的時(shí)候會(huì)多出Lock前綴的指令。 我...
...。 Java基礎(chǔ) HashMap的源碼,實(shí)現(xiàn)原理,JDK8中對(duì)HashMap做了怎樣的優(yōu)化。 HaspMap擴(kuò)容是怎樣擴(kuò)容的,為什么都是2的N次冪的大小。 HashMap,HashTable,ConcurrentHashMap的區(qū)別。 極高并發(fā)下HashTable和ConcurrentHashMap哪個(gè)性能更好,為什么,如何...
... JVM 中的另一個(gè)線程在數(shù)據(jù)庫(kù)中更新了同一個(gè)對(duì)象,又會(huì)怎樣呢?如果只運(yùn)用 @Cacheable 注釋,你可能會(huì)從遠(yuǎn)程緩存服務(wù)器收到過(guò)期拷貝。 為了防止發(fā)生這種情況,可以給所有數(shù)據(jù)庫(kù)更新操作添加一個(gè) @CachePut 注釋。每次調(diào)用這些...
ChatGPT和Sora等AI大模型應(yīng)用,將AI大模型和算力需求的熱度不斷帶上新的臺(tái)階。哪里可以獲得...
大模型的訓(xùn)練用4090是不合適的,但推理(inference/serving)用4090不能說(shuō)合適,...
圖示為GPU性能排行榜,我們可以看到所有GPU的原始相關(guān)性能圖表。同時(shí)根據(jù)訓(xùn)練、推理能力由高到低做了...