要成为一个 Java 架构师得学习哪些知识以及方法?
“
最近在架構(gòu)師線下實(shí)戰(zhàn)中,被問到最多的一個(gè)問題,就是要成為一個(gè) Java 架構(gòu)師得學(xué)習(xí)哪些知識,以及怎樣才能做到架構(gòu)師這個(gè)級別?
今天主要澄清幾個(gè)關(guān)于架構(gòu)師的幾大誤區(qū)。
架構(gòu)師并不是人人都能做到的,如果你能走到這個(gè)稱謂,恭喜你,你完全可以進(jìn)入技術(shù)領(lǐng)域人才的TOP5系列。
如果你立志成為一名java架構(gòu)師,也許下面的內(nèi)容對你有一定的參考價(jià)值。
萬地高樓平地起,第一條,基礎(chǔ)不扎實(shí)的,想做好架構(gòu)師基本沒有什么希望。
大寫的重點(diǎn),說三遍。
基礎(chǔ)必須掌握扎實(shí)
基礎(chǔ)必須掌握扎實(shí)
基礎(chǔ)必須掌握扎實(shí)
基礎(chǔ)掌握的牢固與否,非常能說明一個(gè)人的學(xué)習(xí)能力以及思考方式,還有最重要的一個(gè)點(diǎn),是否真的對技術(shù)有持之以久的興趣,畢竟需要持久的專研學(xué)習(xí),如果沒有興趣,根本不可能持久專研,也許做個(gè)5年就轉(zhuǎn)行了。
還有一點(diǎn),很多小伙伴,剛畢業(yè)或者說剛上手沒多久,就覺得自己離架構(gòu)師非常近了。
這里也統(tǒng)一澄清一下,做技術(shù)的沒有個(gè)5年、8年的技術(shù)積累,你根本不可能有機(jī)會走到架構(gòu)師這個(gè)稱謂。在阿里有非常明確的技術(shù)定義,p6為技術(shù)主管,p7為技術(shù)專家,p8才是架構(gòu)師,大部分能走到p7就算不錯(cuò)了,以為p7就是架構(gòu)師,其實(shí)p7到p8還有很長的一段路。
阿里P6-P8的技術(shù)定義以及需要掌握的知識點(diǎn),我在之前的文章里有給出詳細(xì)的excel表格。
架構(gòu)需要掌握的技術(shù)知識點(diǎn),我在史上最全架構(gòu)技能圖譜里有非常詳細(xì)的說明。下圖已經(jīng)給到了六大知識體系,我用WEB開發(fā)做例子。
熟練使用各種數(shù)據(jù)結(jié)構(gòu)和算法,數(shù)組、哈希、鏈表、排序樹…,熟練使用linux操作系統(tǒng),必備,沒什么好說的 。
熟悉tcp協(xié)議,創(chuàng)建連接三次握手和斷開連接四次握手的整個(gè)過程,不了解的話,無法對高并發(fā)網(wǎng)絡(luò)應(yīng)用做優(yōu)化; 熟悉http協(xié)議,尤其是http頭,我發(fā)現(xiàn)好多工作五年以上的都弄不清session和cookie的生命周期以及它們之間的關(guān)聯(lián)。
系統(tǒng)集群、負(fù)載均衡、反向代理、動靜分離,網(wǎng)站靜態(tài)化 。
分布式存儲系統(tǒng)nfs,fastdfs,tfs,Hadoop了解他們的優(yōu)缺點(diǎn),適用場景 。
分布式緩存技術(shù)memcached,redis,提高系統(tǒng)性能必備,一致性hash算法 。
工具nginx必備技能超級好用,高性能,基本不會掛掉的服務(wù)器,功能多多,解決各種問題。
數(shù)據(jù)庫的設(shè)計(jì)能力,mysql必備,最基礎(chǔ)的數(shù)據(jù)庫工具,免費(fèi)好用,對它基本的參數(shù)優(yōu)化,慢查詢?nèi)罩痉治?#xff0c;主從復(fù)制的配置,至少要成為半個(gè)mysql dba。其他nosql數(shù)據(jù)庫如mongodb。
還有隊(duì)列中間件。如消息推送,可以先把消息寫入數(shù)據(jù)庫,推送放隊(duì)列服務(wù)器上,由推送服務(wù)器去隊(duì)列獲取處理,這樣就可以將消息放數(shù)據(jù)庫和隊(duì)列里后直接給用戶反饋,推送過程則由推送服務(wù)器和隊(duì)列服務(wù)器完成,好處異步處理、緩解服務(wù)器壓力,解藕系統(tǒng)等。
更多架構(gòu)內(nèi)容以及知識點(diǎn),也可以加入java進(jìn)階群:629511325
這些知識點(diǎn),我可以這樣講,基本你都需要掌握,只是掌握的深度的問題,哪些知識點(diǎn)需要熟悉,哪些是精通,阿里P6-P8的excel表格我已經(jīng)做了很清晰的劃分,一般、熟悉、精通根據(jù)級別來劃分定義。
上面這些都是純技術(shù)的角度來看架構(gòu)師,做到了也基本算合格,還有一個(gè)維度的定義,就是前瞻性,這個(gè)話題我以后會陸續(xù)補(bǔ)充完整。
什么樣的架構(gòu)師最值錢,坦率的講,經(jīng)歷過淘寶早期比如五彩石項(xiàng)目的這些人,他們是見證過淘寶從單個(gè)系統(tǒng)到分布式業(yè)務(wù)場景的一批人,知道怎樣配合業(yè)務(wù),知道有哪些拆分技術(shù)的坑,知道拆后最致命的問題等等,隨著時(shí)間的推移和自己的悟性,更加深知到技術(shù)配合業(yè)務(wù)的重要性,那就不得不提到架構(gòu)前瞻性這個(gè)話題。
如果你對程序員、架構(gòu)師、技術(shù)經(jīng)理等IT人進(jìn)階比較感興趣,可以查看優(yōu)知學(xué)院官網(wǎng)查看干貨文章。
你可能也喜歡:
總結(jié)
以上是生活随笔為你收集整理的要成为一个 Java 架构师得学习哪些知识以及方法?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java多线程系列(七):并发容器的原理
- 下一篇: Java面试进阶:Dubbo、Zooke