日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

做架构也得讲武德

發(fā)布時間:2023/12/4 编程问答 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 做架构也得讲武德 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

這里是Z哥的個人公眾號

每周五11:45 按時送達(dá)

當(dāng)然了,也會時不時加個餐~

我的第「169」篇原創(chuàng)敬上

大家好,我是Z哥。今天分享一篇對「架構(gòu)」這件事的隨想。

我想,做「架構(gòu)」是每個熱愛技術(shù)的技術(shù)人在不斷追求想進(jìn)入的領(lǐng)域。但是很多人可能工作了很多年也沒能真正參與到做架構(gòu)這件事上。

所以,很多人對做架構(gòu)這件事的感知停留在網(wǎng)上很多大牛分享的文章里。

但是,如果你只是看網(wǎng)上的文章其實對架構(gòu)的理解會非常容易跑偏的,主要原因有兩點。

第一點,世界是在不斷發(fā)展和迭代的。技術(shù)也是人類文明的一部分,所以自然也會隨著時間的推移不斷進(jìn)化。

而很多講架構(gòu)的文章喜歡和新技術(shù)掛上鉤,一個沒用到新技術(shù)的“架構(gòu)”,會讓很多人覺得有點out,缺乏吸引力。

但是新技術(shù)的推出,要么是用來解決過去無法解決的問題,要么是可以提高當(dāng)前解決問題的效率。正如當(dāng)前的你在20年前做程序員,基于當(dāng)時的編程環(huán)境,開發(fā)效率肯定不如現(xiàn)在,這是毋庸置疑的。

也正因為如此,每一項新技術(shù)的出現(xiàn),背后必然對應(yīng)著一個典型的問題場景。能最大化發(fā)揮這項新技術(shù)價值的地方也應(yīng)該是這個場景。

如果我們僅僅停留在這項新技術(shù)本身去考慮它有什么用,那么就很容易就會陷入到“拿著錘子找釘子”的情況里。特別是出于對「架構(gòu)」的崇拜,“我怎么才能用上這個技術(shù)”會成為腦海中第一重要的目標(biāo)。

第二點,不管是創(chuàng)造新技術(shù)的人還是分享新技術(shù)使用經(jīng)驗的人,對他們來說肯定得對外展示新技術(shù)好的一面。如果寫不好的一面,這不是拆自己臺么,或者擔(dān)心表現(xiàn)出自己不會用、丟臉么。

如果你有心的話,當(dāng)你在網(wǎng)上搜某個技術(shù)的相關(guān)資料的時候其實很容易觀察到這個現(xiàn)象,講優(yōu)點的文章比講缺點、講遇到什么坑的文章多得多。

這會造成的影響就是過度拉高“旁觀者”對新技術(shù)的預(yù)期,認(rèn)為它是很牛逼的,能解決很多問題。

那么正確對待「架構(gòu)」的態(tài)度應(yīng)該是什么呢?

我根據(jù)我自己做架構(gòu)5年踩坑的經(jīng)驗總結(jié)了以下3點。希望能幫助你少踩甚至是避開我踩過的坑。

/01 ?回到現(xiàn)實的問題中/

任何技術(shù)應(yīng)該都只是解決問題的可選項之一,并沒有所謂的唯一選擇。只有你回到的現(xiàn)實中,從實際的問題出發(fā)去考慮,你才能規(guī)避掉你對某項技術(shù)所帶的偏見。(當(dāng)然,提前是你還得對每項技術(shù)有基本的了解)

比如,之前我團(tuán)隊里有個小伙伴覺得Saga模式非常酷,他認(rèn)為用它來實現(xiàn)數(shù)據(jù)的寫操作又快又準(zhǔn),還能大大降低資源競爭問題,是所有項目應(yīng)該考慮的第一選擇。于是,他在一個新項目中用上了。

但是,最終系統(tǒng)上線后,頁面操作的響應(yīng)的確挺快,但是由于數(shù)據(jù)的滯后產(chǎn)生了一系列問題,讓系統(tǒng)使用者苦不堪言。

/02? 大多數(shù)時候,「減」都比「加」好/

我問你兩個詞語,你知道「簡單」和「容易」的區(qū)別嗎?

在我看來它們有很大的區(qū)別,我的理解是,「簡單」是形容事物的,「容易」是描述做一件事的過程。所以,我們做架構(gòu)這件事,要追求的是「簡單」而不是「容易」。雖然很多時候「容易」會讓你用的時候覺得很「簡單」,但那不是真的簡單,最多算得上是局部的“簡單”。(這段話有點繞,細(xì)品一下應(yīng)該還是很容易理解的)

所以,想要架構(gòu)變得「簡單」,自然是做減法比做加法好。但是現(xiàn)實中,往往相反,更多人樂忠于增加什么新技術(shù),引入什么新技術(shù)。畢竟做加法有可能不用考慮“歷史問題”,而要做減法不得不考慮“歷史問題”,很明顯前者更「容易」。

/03? 時刻保持風(fēng)險意識/

大多數(shù)情況下,后續(xù)暴露出風(fēng)險的地方大多數(shù)是一些非功能性的點。比如,數(shù)據(jù)經(jīng)常出錯,訪問量一大數(shù)據(jù)同步就延遲的厲害,甚至宕機。

這些點說起來簡單,但是需要考慮的細(xì)節(jié)非常多。類似于「木桶原理」,只要你的整體架構(gòu)中有一塊短板拖了后腿,大大小小的問題就會接踵而來。

更加麻煩的是,這些問題還不容易解決,甚至需要做大量的推倒重新設(shè)計才能解決。

雖然說,不管怎么樣依舊無法100%規(guī)避風(fēng)險,但是時刻帶著風(fēng)險意識問自己:“這里這樣設(shè)計可能會有什么問題?”必然會大大降低風(fēng)險系數(shù)。

另外,對待已經(jīng)察覺到的潛在風(fēng)險絕對不能草率,認(rèn)為未來不一定會發(fā)生,先將就著。規(guī)模越大的系統(tǒng),越符合墨菲定律所提到規(guī)律——“凡是可能出錯的事有很大幾率會出錯”,而且時間會大大提前。

暫時就想到這么多,這個話題其實很大,后續(xù)有新的思考再分享給大家一起討論。

好了,總結(jié)一下。

這篇呢,Z哥和你分享了我對架構(gòu)這件事的隨想。

首先,對待一個陌生的技術(shù),預(yù)期不能過于樂觀。因為以下兩點會潛移默化地讓你產(chǎn)生偏見。

  • 對自己不了解的技術(shù)的崇拜感。

  • 你能查到的對外分享講優(yōu)點的遠(yuǎn)大于講缺點和坑的。

  • 對待架構(gòu)這件事我給出的3個建議是:

  • 回到現(xiàn)實的問題中。

  • 大多數(shù)時候,「減」都比「加」好。

  • 時刻保持風(fēng)險意識。

  • 希望對你有所啟發(fā)。

    架構(gòu)是“平衡”的藝術(shù),祝你早日找到你的“平衡感”。

    推薦閱讀:

    • 聊聊單元測試

    • 心想技術(shù)驅(qū)動業(yè)務(wù),卻在背道而馳

    原創(chuàng)不易,如果你覺得這篇文章還不錯,就「在看」或者「分享」一下吧。鼓勵我的創(chuàng)作 :)

    如果你有關(guān)于軟件架構(gòu)、分布式系統(tǒng)、產(chǎn)品、運營的困惑

    可以試試點擊「閱讀原文

    總結(jié)

    以上是生活随笔為你收集整理的做架构也得讲武德的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。