<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          我這有本秘籍:我是如何短時間學(xué)好微服務(wù)的

          共 3682字,需瀏覽 8分鐘

           ·

          2021-09-01 18:24

          我之前寫過幾篇關(guān)于微服務(wù)的文章,讀者們看完反饋不錯。

          微服務(wù)的架構(gòu)模式(上)

          微服務(wù)的架構(gòu)模式(中)

          微服務(wù)的架構(gòu)模式(下)

          恕我直言,微服務(wù)挺好,但不適合你

          同時,也有讀者說:

          看完文章是懂了,但是自己學(xué)的時候,還是有點懵,不知道怎么下手

          授人以魚不如授人以漁。

          魚能解決一時之饑,卻不能解決長久之饑。我知道,你們需要知識,同時更需要學(xué)習(xí)知識的方法。

          所以,這篇文章就說說,正文開始。



          程序員的某些技術(shù)也會過時,就像冰箱里的食物,長期不拿出來吃掉,就會過期和腐敗。所以,程序員這個行業(yè),需要不斷的學(xué)習(xí)。

          我現(xiàn)在已經(jīng)從程序員轉(zhuǎn)成技術(shù)管理了,管理 100 多人團(tuán)隊每天一堆事……還是寫代碼、研究技術(shù)的日子比較純粹,沒有那么多浪費時間的無聊會議,沒有那么多技術(shù)無關(guān)的事。

          雖然如此,但是技術(shù)也不能丟。每當(dāng)出現(xiàn)非常流行的新技術(shù),或者團(tuán)隊技術(shù)棧準(zhǔn)備升級,我都必須去學(xué)習(xí)這些新技術(shù),爭取在短時間內(nèi),能把控住技術(shù)棧升級帶來的風(fēng)險。

          正是在這種形勢下,我也從中琢磨出了一些快速學(xué)習(xí)的套路和技巧。我分享出來,希望拋磚引玉,能對后來者有一些幫助和啟發(fā)。

          第一步:技術(shù)棧需要先分類

          當(dāng)想要學(xué)習(xí)任何新技術(shù)的時候,我經(jīng)常做的第一件事就是

          對要學(xué)習(xí)的技術(shù)領(lǐng)域去做一個分類

          比如,幾年前,公司的系統(tǒng)要改造成微服務(wù)架構(gòu),那我就必須去學(xué)習(xí)微服務(wù)的這套技術(shù)棧。但是,一學(xué)我才發(fā)現(xiàn),微服務(wù)的技術(shù)棧怎么這么多……

          這時候,就要對微服務(wù)的技術(shù)棧進(jìn)行分類。目的也很簡單,就是為了對學(xué)習(xí)作出一個規(guī)劃,根據(jù)技術(shù)棧的分類,作出一個有著明顯輕重緩急的學(xué)習(xí)計劃。

          就微服務(wù)而言,我將其劃分為如下幾類:

          • 微服務(wù)的設(shè)計
          • 微服務(wù)的原理
          • 微服務(wù)的架構(gòu)
          • 微服務(wù)的開發(fā)框架和代碼規(guī)范
          • 微服務(wù)的安全
          • 微服務(wù)的運(yùn)維

          分完類之后,再結(jié)合當(dāng)時的情況,我的計劃是這樣的。

          1.

          首先,由于我是從零開始,需要設(shè)計到落地一條龍。所以,我決定優(yōu)先摸熟微服務(wù)的設(shè)計

          這里我會找書看,通過看書弄清楚概念和知道怎么劃分業(yè)務(wù)。為什么是看書不是看網(wǎng)上文章,原因后面會說。

          2.

          然后,再根據(jù)落地的需要,去學(xué)習(xí)微服務(wù)的架構(gòu)最佳實踐以及微服務(wù)的開發(fā)框架和代碼規(guī)范。學(xué)好這些內(nèi)容,等以后把微服務(wù)落地的時候都用得上。

          學(xué)的時候,先不需要去深入語法細(xì)節(jié),我只需要明白框架的核心思想和代碼規(guī)范,把控技術(shù)落地不會脫離大方向。技術(shù)的細(xì)節(jié)可以等后面真正寫代碼的時候,再和同事們一起去鉆研,

          3.

          在微服務(wù)落地后,就需要微服務(wù)的運(yùn)維了。而微服務(wù)的運(yùn)維,其實可以淺嘗輒止的學(xué)習(xí),重點是要知道微服務(wù)的運(yùn)維組件和運(yùn)維常規(guī)工作流程。

          公司有專門運(yùn)維團(tuán)隊的,剩下的工作交給運(yùn)維同事就好了。

          4.

          在微服務(wù)運(yùn)維后,我感覺只靠學(xué)習(xí)市面上的微服務(wù)套路肯定還不太夠,如果要讓微服務(wù)能更好的適合我們自己的業(yè)務(wù),還需要根據(jù)底層微服務(wù)的原理,去搞透微服務(wù)最佳實踐為何這樣做的原因。

          很顯然,這塊的學(xué)習(xí)難度非常大,需要不少知識儲備。

          但是,再難學(xué)也值得學(xué),因為極有可能我們需要結(jié)合自己公司的業(yè)務(wù),對微服務(wù)作出個性化的定制。

          建議:找?guī)讉€兄弟一起組隊學(xué)習(xí)原理這塊。

          5.

          微服務(wù)的安全,主要是網(wǎng)關(guān)的安全措施,大部分公司都有安全團(tuán)隊,這部分交給他們負(fù)責(zé)就好了。

          所以,再經(jīng)過分門別類之后,我們就很清晰了。

          微服務(wù)的學(xué)習(xí)順序就是:

          微服務(wù)設(shè)計 > 微服務(wù)架構(gòu) > 微服務(wù)開發(fā)框架和代碼規(guī)范 > 微服務(wù)原理 > 微服務(wù)運(yùn)維 > 微服務(wù)安全

          學(xué)習(xí)內(nèi)容的詳盡程度則是:

          • 微服務(wù)設(shè)計、微服務(wù)原理需要多讀幾本書,尤其是原理,要深入學(xué)習(xí) + 和牛人廣泛討論;
          • 其他部分的學(xué)習(xí),優(yōu)先級沒那么高。

          第二步:選擇合適的書

          當(dāng)我們根據(jù)技術(shù)棧分類定出學(xué)習(xí)計劃后,接下來就要選擇合適的書籍學(xué)習(xí)了。

          這里需要強(qiáng)調(diào)一下,以我的經(jīng)驗,對一門全新的技術(shù)學(xué)習(xí),不建議完全通過看網(wǎng)上的文章。

          因為網(wǎng)上的文章有好也有壞,壞的是真坑人,而且作為初學(xué)者,你沒有什么經(jīng)驗,不知道文章是否有錯誤。

          我舉個例子,網(wǎng)上的鏈路跟蹤,尤其講 SkyWalking 的相關(guān)文章,很多都是錯的,如果對鏈路跟蹤不熟悉,就很難分辨出錯誤,到時候不慎把錯誤的觀念用到了系統(tǒng)里,再改正就非常費勁了。

          所以,入門階段還是老老實實的找一些權(quán)威書籍看吧。

          但是,權(quán)威書籍也有問題,因為書的受眾不一樣,如果一些書讀的不合適,比如,選的書籍講的都是過時的技術(shù),又或者有的書籍講的非常晦澀,理解起來非常費勁,那這些書就不合適我們?nèi)プx,讀了要么浪費時間,要么錯用過時的技術(shù)。

          怎么選擇合適的書?

          比如,我想學(xué)微服務(wù)設(shè)計,我發(fā)現(xiàn)微服務(wù)設(shè)計和領(lǐng)域驅(qū)動設(shè)計又是緊密關(guān)聯(lián)的。領(lǐng)域驅(qū)動設(shè)計又有很多的書,有講理論的,有講實戰(zhàn)的,甚至還有混雜著其他技術(shù)棧的。

          我當(dāng)時需要的是理論 + 實戰(zhàn)的書,并且最好有在已有項目移植到微服務(wù)的相關(guān)案例的書。

          接下來就是去網(wǎng)上看書評了。一般來說,現(xiàn)在豆瓣、當(dāng)當(dāng)、京東的書評和書籍簡介都比較不錯了。

          不過,我更偏好英文書一些,所以,當(dāng)時根據(jù)亞馬遜的評價找到了一本《Implementing Domain-Driven Design》,這本書后來翻譯成中文了,叫《實現(xiàn)領(lǐng)域驅(qū)動設(shè)計》—— 我粗看過,我認(rèn)為翻譯的不好。

          事后證明,這本書確實解決了我的問題,讓我摸清楚了域、子域、邊界上下文之類的關(guān)鍵概念。

          第三步:讀書需要技巧

          選完了書,就要去讀書。但是,任何一本 IT 書籍,可都是不薄的。

          像我前面舉例的《Implementing Domain-Driven Design》,這本書就是六百多頁的厚度。如果一天讀 20 頁,需要 30 多天,這個時間就太慢了。所以,就需要技巧:

          先速讀后精讀

          一般來說,對于六百多頁的書,尤其是講解的概念穿插實戰(zhàn)的,應(yīng)該開始的時候,快速閱讀。我大概一天是 100 - 200 頁左右,時間控制在 4 個小時,連續(xù)不斷的閱讀。

          這種閱讀,看上去很難,其實是建立在快速的跳讀和略讀上的。讀取的時候,只找關(guān)鍵詞,尤其是名詞。

          找到關(guān)鍵詞后,一般就要提取知識點。三五個關(guān)鍵詞,就能提取出一個關(guān)鍵知識點來。遇到不會的,也可以當(dāng)做關(guān)鍵詞提取出來。

          關(guān)鍵詞往往和小章節(jié)的標(biāo)題能對應(yīng)上,根據(jù)關(guān)鍵詞,找到章節(jié)中的解釋,看明白了,就能跳過別的章節(jié)內(nèi)容。

          速讀,弄懂即可,不需要把所有的內(nèi)容都讀完。

          這樣,一本六百多頁的書,大概一周就讀完了。

          讀完后,別著急,然后就需要根據(jù)你提取的關(guān)鍵詞和知識點去做精讀了。

          這時候,由于書籍的關(guān)鍵點已經(jīng)提取出來了,你只需要精心學(xué)習(xí)提取的知識即可。

          一般而言,知識點提取后,需要精讀的內(nèi)容往往只有原來整體內(nèi)容的幾分之一。

          我精讀這本書大概花了一周左右。

          在精讀期間,如果有一些發(fā)現(xiàn)理解不足的,還需要去查一些別的資料來補(bǔ)充理解,或者動手實踐,或者和別人一起交流,除了講解自己的看法和理解,也需要能汲取別人的看法和理解。

          精讀的最佳結(jié)果是,你能用自己的話把原來的概念和別人講清楚。

          這樣,總的算下來,讀這本六百多頁的書需要花十天、半個月的時間。

          說起來,其實大家可以問問身邊認(rèn)識大廠的高手,你會發(fā)現(xiàn),他們大多數(shù)人讀書,都是我這樣類似的讀法,確實非常有用。

          第四步:落地實踐

          書讀完了,肯定有很多不足的地方。這時候,就需要通過技術(shù)實踐去加深理解、彌補(bǔ)不足。

          實踐分為兩種:

          1. 書中的實驗

          大部分技術(shù)書籍,大部分都有些對應(yīng)的課后習(xí)題或者實驗。

          因為這些實驗都是附屬在某些具體講解、某些概念的章節(jié)后,針對性非常強(qiáng)。所以,如果能不看書,根據(jù)自己的理解,去順利把實踐做出來,那就證明,確實學(xué)習(xí)到位了,可以把學(xué)到的東西用到實戰(zhàn)中了。

          2. 實際中的場景

          當(dāng)書中的實驗都做完了,就可以考慮真實的項目場景了。

          可以先根據(jù)工作需求,打造出一個包含了所學(xué)新技術(shù)全棧的 Demo 出來。

          比如,微服務(wù),就可以搭建一套,有網(wǎng)關(guān)、有配置中心、有鏈路跟蹤的 Demo。

          Demo 搭建之后,還可以采取一些測試用例對這個 Demo 進(jìn)行測試,不管是業(yè)務(wù)測試還是性能壓測,都要進(jìn)行。

          當(dāng) Demo 的指標(biāo)達(dá)到要求后,就可以考慮抽取出一個不重要的項目進(jìn)行新技術(shù)棧的嘗試了。

          總結(jié)

          如上所說,這就是我日常學(xué)習(xí)技術(shù)的幾板斧:

          • 我是先通過對要學(xué)習(xí)的技術(shù)分類,去減少學(xué)習(xí)負(fù)擔(dān)。

          • 再去根據(jù)技術(shù)分類,提取出要解決的一些問題。

          • 然后,根據(jù)問題去預(yù)測出想要讀的書的內(nèi)容范圍。又根據(jù)這些范圍,去各種賣書、評書網(wǎng)站去選書。

          • 選書完,采用一些讀書技巧,去快速學(xué)習(xí)。

          • 學(xué)習(xí)完后,必須實踐,加深理解。如此,完成一整套新技術(shù)學(xué)習(xí)。

          原創(chuàng)不易,看完覺得有幫助,來個三連支持。


          你好,我是四猿外。

          一家上市公司的技術(shù)總監(jiān),管理的技術(shù)團(tuán)隊一百余人。

          我從一名非計算機(jī)專業(yè)的畢業(yè)生,轉(zhuǎn)行到程序員,一路打拼,一路成長。

          我會通過公眾號,
          把自己的成長故事寫成文章,
          把枯燥的技術(shù)文章寫成故事。

          我建了一個讀者交流群,里面大部分是程序員,一起聊技術(shù)、工作、八卦。歡迎加我微信,拉你入群。


          推薦閱讀

          Java學(xué)習(xí)之路上的“路障”太坑了

          瀏覽 63
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  成人精品性爱 | 亚洲精品无码三级 | 亚洲色大成网站www | 欧美在线观看黄片 | 亚洲精品一级二级 |