前提 分布式事務(wù)是微服務(wù)實(shí)踐中一個(gè)比較棘手的問題,在筆者所實(shí)施的微服務(wù)實(shí)踐方案中,都采用了折中或者規(guī)避強(qiáng)一致性的方案。 參考Ebay多年前提出的本地消息表方案,基于Rabbi...
CompletableFuture特別是對微服務(wù)架構(gòu)而言,會有很大的作為。舉一個(gè)具體的場景,電商的商品頁面可能會涉及到商品詳情服務(wù)、商品評論服務(wù)、相關(guān)商品推薦服務(wù)等等。獲取商...
在日常生活中,包括在設(shè)計(jì)計(jì)算機(jī)軟件時(shí),我們經(jīng)常要判斷一個(gè)元素是否在一個(gè)集合中。比如在字處理軟件中,需要檢查一個(gè)英語單詞是否拼寫正確(也就是要判斷 它是否在已知的字典中);在 ...
1.全局異常 將返回值統(tǒng)一封裝時(shí)我們沒有考慮當(dāng)接口拋出異常的情況。當(dāng)接口拋出異常時(shí)讓用戶直接看到服務(wù)端的異??隙ㄊ遣粔蛴押玫?,而我們也不可能每一個(gè)接口都去try/catch進(jìn)...
一、JVM內(nèi)存結(jié)構(gòu) 由上圖可以清楚的看到JVM的內(nèi)存空間分為3大部分: 堆內(nèi)存 方法區(qū) 棧內(nèi)存 其中棧內(nèi)存可以再細(xì)分為java虛擬機(jī)棧和本地方法棧,堆內(nèi)存可以劃分為新生代和老...
Redisson 提供的分布式鎖 使用實(shí)例 如果拿到分布式鎖的節(jié)點(diǎn)宕機(jī),且這個(gè)鎖正好處于鎖住的狀態(tài)時(shí),會出現(xiàn)鎖死的狀態(tài),為了避免這種情況的發(fā)生,鎖都會設(shè)置一個(gè)過期時(shí)間。這樣也...
什么是系統(tǒng)架構(gòu)師? 系統(tǒng)架構(gòu)師是一個(gè)既需要掌控整體又需要洞悉局部瓶頸并依據(jù)具體的業(yè)務(wù)場景給出解決方案的團(tuán)隊(duì)領(lǐng)導(dǎo)型人物。一個(gè)架構(gòu)師得需要足夠的想像力,能把各種目標(biāo)需求進(jìn)行不同維...