微服務(wù)架構(gòu)中,注冊(cè)中心基本上是第一個(gè)接觸到的中間件,今天就簡(jiǎn)單的分析下注冊(cè)中心的本質(zhì)和選擇依據(jù)。 下面就從以下三點(diǎn)來(lái)學(xué)習(xí)和分析吧: 注冊(cè)中心本質(zhì) Zookeeper是注冊(cè)中心...
微服務(wù)架構(gòu)中,注冊(cè)中心基本上是第一個(gè)接觸到的中間件,今天就簡(jiǎn)單的分析下注冊(cè)中心的本質(zhì)和選擇依據(jù)。 下面就從以下三點(diǎn)來(lái)學(xué)習(xí)和分析吧: 注冊(cè)中心本質(zhì) Zookeeper是注冊(cè)中心...
在分布式場(chǎng)景下,我們經(jīng)常會(huì)有需要實(shí)現(xiàn)冪等的場(chǎng)景,冪等分為請(qǐng)求冪等和業(yè)務(wù)冪等。 請(qǐng)求冪等 下面將從以下三步來(lái)整理請(qǐng)求冪等的知識(shí)點(diǎn): 請(qǐng)求冪等的本質(zhì) 怎么做請(qǐng)求冪等 如何生成業(yè)務(wù)...
最近接收一個(gè)大任務(wù),主導(dǎo)公司項(xiàng)目技術(shù)架構(gòu)重構(gòu)的工作,這對(duì)我來(lái)說(shuō)也是一個(gè)特別大的挑戰(zhàn)。畢竟一方面?zhèn)€人在之前從事的公司沒(méi)有做個(gè)這么復(fù)雜業(yè)務(wù)的系統(tǒng),另一方面也未有銀行系統(tǒng)的完整架構(gòu)...
最近寫(xiě)的技術(shù)文章質(zhì)量著實(shí)有點(diǎn)差,今天就總結(jié)了一下,順便分享點(diǎn)感悟。 初步分許 首先從淺層次來(lái)分析主要可能有兩方面引起:1、時(shí)間問(wèn)題,最近能坐下來(lái)學(xué)習(xí)以及寫(xiě)的時(shí)間只有晚上11....
準(zhǔn)備用兩篇文章來(lái)分享下如何畫(huà)架構(gòu)圖,以下純個(gè)人見(jiàn)解。 什么是架構(gòu)圖 從我個(gè)人角度來(lái)理解的話,首先要理解什么是架構(gòu),架構(gòu)是對(duì)業(yè)務(wù)場(chǎng)景的抽象出來(lái)的骨架。站在這里來(lái)理解的話,架構(gòu)圖...
今天來(lái)優(yōu)化下之前實(shí)現(xiàn)過(guò)的鏈接下一個(gè)右側(cè)節(jié)點(diǎn)算法,同時(shí)將Ⅰ和Ⅱ做了合并。 題目介紹 給定任意一個(gè)二叉樹(shù),填充它的next節(jié)點(diǎn),指向下一個(gè)右側(cè)節(jié)點(diǎn),最右側(cè)節(jié)點(diǎn)指向null。 看下...
今天延續(xù)上一章的內(nèi)容,反序列化一棵樹(shù)。 題目介紹 給定一個(gè)序列化后的字符串,反序列化為一棵樹(shù),例如: 實(shí)現(xiàn)思路 反序列化的實(shí)現(xiàn)相比序列化簡(jiǎn)單點(diǎn),整個(gè)過(guò)程如下:1、先將字符串去...
家里晚上停電,準(zhǔn)備好的技術(shù)內(nèi)容沒(méi)飯發(fā)布了,就再隨便寫(xiě)點(diǎn)思考吧。 前天公司剛搬地方,搬到了以前經(jīng)常爬的山下,昨天下午就突然想著下班去爬個(gè)山再回家。想到就去做,下班后背上電腦就上...
今天學(xué)習(xí)的算法是最基礎(chǔ)最常用的算法:序列化一棵樹(shù)。 題目介紹 給定任意一個(gè)二叉樹(shù),將樹(shù)以字符串方式輸出,例如: 實(shí)現(xiàn)思路 先按個(gè)人的第一思考方案來(lái)實(shí)現(xiàn):1、先通過(guò)之前學(xué)習(xí)過(guò)的...
今天整天都沒(méi)學(xué)習(xí),因?yàn)樵卺t(yī)院熬了十多個(gè)小時(shí)。也不知道該寫(xiě)些什么,分明一天都有很多感慨,但是回到家里,又覺(jué)得什么都不想說(shuō)了。 只能說(shuō)世事無(wú)常,我們每個(gè)渺小的個(gè)體能做的就是認(rèn)認(rèn)真...
最近真是多事之秋,好好的日更被斷了,計(jì)劃永遠(yuǎn)是趕不上變化的,乘著睡前補(bǔ)上吧。查找給定兩個(gè)節(jié)點(diǎn)最下公共祖先,俗稱(chēng)LCA算法。 題目介紹 給定任意一個(gè)二叉樹(shù),以及兩個(gè)節(jié)點(diǎn),查找它...
今天學(xué)習(xí)的是上篇算法的升級(jí)版:填充每個(gè)節(jié)點(diǎn)的下一個(gè)右側(cè)節(jié)點(diǎn)指針Ⅱ。 題目介紹 給定任意一個(gè)二叉樹(shù),填充它的next節(jié)點(diǎn),指向下一個(gè)右側(cè)節(jié)點(diǎn),最右側(cè)節(jié)點(diǎn)指向null。 看下圖吧...
今天學(xué)習(xí)的是二叉樹(shù)中的算法題目:填充每個(gè)節(jié)點(diǎn)的下一個(gè)右側(cè)節(jié)點(diǎn)指針。 題目介紹 給定一個(gè)滿(mǎn)二叉樹(shù)(所有葉子節(jié)點(diǎn)都在同一層,每個(gè)父節(jié)點(diǎn)都有兩個(gè)葉子節(jié)點(diǎn)),填充它的next節(jié)點(diǎn),指...
本文將從以下三個(gè)方面闡述全鏈路跟蹤設(shè)計(jì)與實(shí)踐 為什么要做全鏈路跟蹤 怎么做全鏈路跟蹤 開(kāi)源框架選型 為什么要做全鏈路跟蹤 場(chǎng)景介紹 在微服務(wù)架構(gòu)下,經(jīng)常出現(xiàn)以下問(wèn)題:1.某個(gè)...
今天就簡(jiǎn)單的從大的思路上來(lái)說(shuō)說(shuō)高并發(fā)設(shè)計(jì)手段,后續(xù)再完善詳細(xì)內(nèi)容。 系統(tǒng)性能衡量指標(biāo) 衡量一個(gè)系統(tǒng)的性能怎么樣,主要從以下兩個(gè)方面:1.吞吐量,粗略的可以使用QPS。2.響應(yīng)...
今天本來(lái)準(zhǔn)備優(yōu)化下中序前序構(gòu)造二叉樹(shù)的代碼,結(jié)果死磕了兩小時(shí)沒(méi)搞定,感覺(jué)才優(yōu)化一半。先上一版吧,明天接著搞。 題目介紹 題目就簡(jiǎn)單介紹下,給定兩個(gè)數(shù)組,一個(gè)是中序遍歷后的輸出...
今天學(xué)習(xí)另外一種更加常用的排序算法:快速排序。 題目介紹 還是使用之前的題目:給定一個(gè)數(shù)組,將數(shù)組按從小到大順序排序。題目理解起來(lái)也是很容易的,就不再畫(huà)圖介紹了。 歸并排序 ...
前面學(xué)習(xí)過(guò)根據(jù)中序遍歷和后序遍歷結(jié)果構(gòu)造二叉樹(shù),今天是類(lèi)似的給定一顆樹(shù)的中序遍歷和前序序遍歷兩個(gè)結(jié)果數(shù)組,構(gòu)造成一顆二叉樹(shù)。 題目介紹 題目就簡(jiǎn)單介紹下,給定兩個(gè)數(shù)組,一個(gè)是...