關于《小公司需要使用微服務架構嗎?》的讀后感

最近閱讀了一篇文章《小公司需要使用微服務架構嗎?》,這篇文章討論了微服務架構的優(yōu)缺點,以及微服務架構是否適合小公司。為了蹭一下熱度,本文將結合兩年半的練習經驗,談談我對這篇文章的讀后感。
原文摘要
New Bing 這樣總結到:
你的問題是請幫你總結一下這篇文章主體的內容。我從網上搜索了一些相關的信息,發(fā)現這篇文章的主要內容是:
這篇文章是關于小公司是否需要使用微服務架構的討論,作者分析了使用微服務的四大門派,分別是跟風派,技術派,業(yè)務派和架構派。
跟風派是指那些盲目追隨技術潮流,沒有自己的判斷和思考的人,他們認為微服務是一種萬能的解決方案,可以提高開發(fā)效率,降低維護成本,提升系統性能和穩(wěn)定性。
技術派是指那些喜歡嘗試新技術,追求技術創(chuàng)新,不懼怕技術挑戰(zhàn)的人,他們認為微服務是一種技術趨勢,可以讓他們學習更多的技術知識,提升自己的技術水平,增加自己的市場競爭力。
業(yè)務派是指那些以業(yè)務需求為導向,根據業(yè)務場景和規(guī)模選擇合適的技術方案的人,他們認為微服務是一種業(yè)務架構,可以讓他們更好地解決業(yè)務問題,提供更好的用戶體驗,實現更快的業(yè)務迭代。
架構派是指那些有架構設計能力,能夠從整體和局部的角度考慮系統的可靠性,可擴展性,可維護性,可測試性等方面的人,他們認為微服務是一種架構模式,可以讓他們更好地構建和管理復雜的系統,實現更高的系統質量。
作者認為,小公司是否需要使用微服務架構,沒有一個固定的答案,需要根據自己的實際情況和目標來決定,不要盲目地跟風或者拒絕。作者建議,小公司在使用微服務架構之前,要考慮以下幾個方面 :
微服務架構的優(yōu)勢和劣勢,以及適用的場景和條件
微服務架構的實施成本和風險,以及應對的策略和措施
微服務架構的組織和管理方式,以及配套的技術和工具
微服務架構的演進路徑和目標,以及評估和改進的方法和指標
作者最后總結,微服務架構不是一種銀彈,也不是一種魔鬼,而是一種工具,需要根據自己的需求和能力來合理地使用。
歡迎關注作者的微信公眾號“newbe技術專欄”,獲取更多技術內容。

軟件工程本質上還是工程
工程可以被簡單概括為在預期的時間內通過可控的成本達成預期的目標。 —— 正在掏下水道的良工
正如張工所說,工程問題本質就是時間、成本和目標之間進行平衡,最終以達成各方滿意的結果。而為了實現這個一結果,軟件工程中引入了各種理論、方法、工具和技術。它們或者是縮短時間、或者是控制成本、或者是改善目標,都是圍繞這個核心目標展開的。
微服務本身作為工程實踐中的一套理論和工具,也不能逃脫這個規(guī)律。為此,在決定是否采用微服務的時候,只需要考慮微服務是否能夠幫助我們實現我們的目標,是否能夠幫助我們縮短時間、控制成本、改善目標,就可以了。
例如,微服務架構的引入會由于服務數量的增加,而導致部署運維的難度增加,對應的就是增加了時間和成本。因此,在微服務架構應用時,就需要配到對應的運維工具以及有運維能力的人員,來緩解這個問題。使得整個工程的時間、成本和目標之間達到平衡。
沒有充分了解就不具備評價問題的資格
既然要做決定,你就應該有自信說出:沒人比我更懂。?? —— 和領導一起上廁所的汪總
常有人說我不懂制冷,但我有權評價空調。不過現在的場景是要造空調,因此,我需要了解空調的原理,才能夠評價空調的設計是否合理。故而,如果要評價微服務架構是否合適,那么就需要了解微服務架構的原理,才能夠評價微服務架構的設計是否合理。
作為練習時長兩年半的工程師,我可以很有自信的說出:沒人比我更不懂微服務架構了。所以我也不具備評價微服務架構是否合適的資格。不過我覺得如果有那一天能夠決策是否采用微服務架構,那么我應該做過下面這些事情:
了解微服務架構的原理,包括微服務架構的優(yōu)勢和劣勢,以及適用的場景和條件。
掌握微服務架構的實施成本和風險,以及應對的策略和措施。
明白微服務架構的組織和管理方式,以及配套的技術和工具。
清楚公司的演進路徑和目標,以及評估和改進的方法和指標。
我覺得一般來說,可以使用如下大致格式來界定評價方式:
Bilibili 代碼塊無法正常渲染,因此無法正常顯示。請關注微信公眾號“newbe技術專欄”,搜索對應文章代碼內容。

矛盾的普遍性和特殊性
如果不研究矛盾的特殊性,就無從確定一事物不同于他事物的特殊的本質,就無從發(fā)現事物運動發(fā)展的特殊的原因,或特殊的根據,也就無從辨別事物,無從區(qū)分科學研究的領域。 —— 《矛盾的普遍性和特殊性》
微服務作為一套理論和工具,實質上是為了解決軟件工程中存在的特殊矛盾而出現的。這個矛盾就是:軟件工程中的復雜性和變化性。
而實際上,幾乎任何引入到軟件工程的理論、方法、工具和技術都是為了解決這一矛盾。因此也常有人說:軟件工程唯一不變的就是變化本身。
故而,假如換做是別的理論或者工具,實際上討論的方式都是相同的。例如:
是否應該引入容器化
是否應該采用某種編程語言
是否應該劃分一個新的部門
總結
原文作者內容清晰,表述完整,邏輯嚴謹,值得學習。
微服務架構作為軟件工程中使用到的一套理論和工具,本質上是為了解決軟件工程中存在的特殊矛盾而出現的。為了能夠評估引入的合理性,我們需要了解微服務架構的原理,包括微服務架構的優(yōu)勢和劣勢,以及適用的場景和條件。這樣的評價方式同樣也適用于軟件工程中使用到的其他理論、方法、工具和技術。
參考
小公司需要使用微服務架構嗎?1
感謝您的閱讀,如果您覺得本文有用,快長按右下角大拇指??為本文點贊~
歡迎關注作者的微信公眾號“newbe技術專欄”,獲取更多技術內容。

本文作者: newbe36524
本文鏈接: https://www.newbe.pro/Others/0x021-after-reading-Do-Small-Companies-Need-to-Use-Microservices-Architecture/
版權聲明: 本博客所有文章除特別聲明外,均采用 BY-NC-SA 許可協議。轉載請注明出處!
https://www.cnblogs.com/jiujuan/p/17116605.html?