14 階段性復(fù)習(xí):放大100倍壓力,也要找出你系統(tǒng)的技術(shù)挑戰(zhàn)!

階段性復(fù)習(xí):放大100倍壓力,也要找出你系統(tǒng)的技術(shù)挑戰(zhàn)!
本文也是我們階段性復(fù)習(xí)的一個(gè)重要環(huán)節(jié),因?yàn)槲覀兊膶W(xué)習(xí)節(jié)奏是每次更新一篇技術(shù)文章+一篇授人以漁,目的是讓大家學(xué)完一個(gè)知識(shí)之后,能夠引導(dǎo)大家對(duì)自己的系統(tǒng)進(jìn)行反思和主動(dòng)思考。
因此對(duì)階段性復(fù)習(xí)而言,我們也是每次都有兩篇文章,一篇是用思維導(dǎo)圖對(duì)學(xué)習(xí)過的知識(shí)體系的梳理,一篇是對(duì)過去一個(gè)階段學(xué)習(xí)過的知識(shí)的授人以漁環(huán)節(jié)的梳理和總結(jié),這也是非常重要的一個(gè)部分。
今天我就來帶著大家梳理一下過去一個(gè)階段的授人以漁環(huán)節(jié),我們希望大家能夠哪些問題進(jìn)行深度的思考。
第一,大家先思考一下系統(tǒng)的核心業(yè)務(wù)流程,當(dāng)然不是指那種查詢之類的操作。所謂核心鏈路指的是對(duì)你的系統(tǒng)進(jìn)行的數(shù)據(jù)更新的操作,這才是核心鏈路,因?yàn)椴樵儾僮饕话銇碚f不涉及復(fù)雜的業(yè)務(wù)邏輯,主要是對(duì)數(shù)據(jù)的展示。
對(duì)你的系統(tǒng)的核心鏈路分析一下,有哪些步驟,這些步驟各自的性能如何,綜合起來讓你的核心鏈路的性能如何?在這里是否有改進(jìn)的空間?
第二,大家可以思考一下,在你的系統(tǒng)中,是否有類似后臺(tái)線程定時(shí)補(bǔ)償?shù)倪壿嫞?/p>
比如訂單長(zhǎng)時(shí)間未支付就要自動(dòng)關(guān)閉它,你們系統(tǒng)里有沒有那種后臺(tái)線程,會(huì)定時(shí)掃描你的數(shù)據(jù),對(duì)異常數(shù)據(jù)進(jìn)行補(bǔ)償、自動(dòng)修復(fù)等操作的?
如果有的話,這種數(shù)據(jù)一般量有多大?如果沒有,你可以思考一下,你們系統(tǒng)的核心數(shù)據(jù)是否需要類似的后臺(tái)自動(dòng)掃描機(jī)制?
第三,大家可以思考一下,在你的系統(tǒng)里有沒有跟第三方系統(tǒng)進(jìn)行耦合?就是一些核心流程里需要同步調(diào)用第三方系統(tǒng)進(jìn)行查詢、更新等操作,第三方系統(tǒng)是否對(duì)你的核心鏈路有性能和穩(wěn)定性上的影響?
第四,大家可以思考一下,在你的核心鏈路中,是否存在那種關(guān)鍵步驟可能會(huì)失敗的情況?萬(wàn)一失敗了該怎么辦?
第五,大家可以思考一下,平時(shí)是否存在其他系統(tǒng)需要獲取你們數(shù)據(jù)的情況?他們是如何獲取你們數(shù)據(jù)的?
是直接跑SQL從你們數(shù)據(jù)庫(kù)里查詢?或者是調(diào)用你們的接口來獲取數(shù)據(jù)?是否存在這種情況?如果有,對(duì)你們有什么影響嗎?
第六,你們的系統(tǒng)是否存在流量洪峰的情況,有時(shí)候突然之間訪問量增大好幾倍,是否會(huì)對(duì)你們的系統(tǒng)產(chǎn)生無(wú)法承受的壓力?
希望大家能好好思考這六個(gè)問題,同時(shí)思考后的結(jié)果,歡迎發(fā)送到評(píng)論區(qū)一起交流!
End
專欄版權(quán)歸公眾號(hào)儒猿技術(shù)窩所有
未經(jīng)許可不得傳播,如有侵權(quán)將追究法律責(zé)任