微服務到底改變了什麼,你知道嗎?

来源:https://www.cnblogs.com/itlaobingge/archive/2020/01/14/12191312.html
-Advertisement-
Play Games

微服務可以幫我們成就更大的夢想,為什麼呢?請看老兵哥近些年推廣微服務架構過程中收穫的心得體會! ...


微服務的本質:一種更優的分工合作機制,加速分工,促進合作,幫我們成就更大的夢想!為什麼呢?請看老兵哥近些年推廣微服務架構過程中收穫的心得體會!

在雲計算這波科技巨浪的推動下,各行各業都加快了數字化轉型的步伐。微服務,作為雲原生應用的推薦架構,對每位IT行業的從業者來說都不會陌生,大家都聽說過大量有關微服務架構優勢的介紹,也知道典型的微服務架構包含哪些關鍵部件,對業界主流的微服務框架產品也有所瞭解。看了這麼多,瞭解這麼多,心裡定會有不少驚嘆號,也會有不少問號:要不要引進微服務架構呢?如此龐雜的技術棧該從何處著手呢?逐步演進還是一步到位呢?

這些問題讓站在路口的我們踟躕不前,到底該往左,還是往右呢?雲原生技術棧屬於應用科學範疇,如果我們找到了採用這些技術的內驅力,花些時間學習和實踐,大家都可以掌握這套技術棧,畢竟應用技術對我們來說並不難,問題的關鍵在於找到那個說服打動自己的理由。近兩年,我在推廣微服務架構的過程中不斷思考這個問題,如何幫客戶找到採用新架構的內驅力,現在將這些答案梳理出來供大家參考,希望可以幫你找到愛上微服務的理由!

如下表所示,相較於單體式架構,微服務架構有不少優點,但也伴生著許多新問。在優劣勢相持不下的情況下,我們很難決策是否採用這套新技術棧。既然根據具體的對比分析拿不定主意,那我們可否跳出問題來探尋答案呢?就像在穿越森林的過程中,你面前突然出現了好幾條岔道,機會和風險並存,如果不清楚每條道會把我們帶向何處之前,任何選擇都是賭博。此時,我們需要登上高地,或山頂或樹冠,打探出每條道的走向,這樣才能選出正確的道路,然後全力以赴。接下來,我們一起來探究一下微服務的本質是什麼?它背後蘊含著什麼樣的架構發展趨勢?

2014年以色列新銳歷史學家尤瓦爾·希拉利出版了一本書:《人類簡史:從動物到上帝》,非常流行。在書中作者剖析了我們人類從猴子一步一步演化為萬物之靈的過程。在地球上,人類文明是最高級的,相較於其他物種,我們就像造物主,想要什麼東西我們都可以建造出來,也可以按照意願改變生存環境。為什麼其他物種不行,只有人類可以呢?因為只有人類會做夢,也就是我們會幻想和追求那些原本不存在的東西,而其他物種只會吃飽了睡、睡飽了吃。

夢想,通常都不切實際,要實現它都會有挑戰。夢想越大,需要參與的人就越多。一方水土養一方人,每個人都有不同的特質。夢想,將擁有不同特長的人匯聚在一起努力打拼,這就是夢之隊。夢想、分工、合作,這三者就是推動人類文明不斷向前發展的底層機制。人類的夢越做越巨集大,上天入地,從克隆人到硅基智能;社會分工也越來越精細,從農民、工人到現在成千上萬的職業;團隊合作也越來越廣密,從幾個人範圍的合作到跨大洋、跨大洲的合作。

以人類的“飛天夢”為例,我們可以很容易驗證這個機制。“看那星星多美麗,摘下一顆親手送給你”,就像歌詞里唱的,或許我們的飛天夢源於對愛情的追求,也或許源於對自由的渴望,掙脫地球引力的束縛,從乘風箏飛行開始,到熱氣球環游世界,到萊特兄弟發明飛機,到超音速噴氣式飛機誕生,再到馬斯克殖民火星的SpaceX問世,以及科幻作家劉慈欣帶著地球去旅行的暢想,這是人類超越夢想的過程,但跟分工越來越精細、合作越來越廣密有什麼關係呢?

空客A380,史上最大的客機,最近宣佈停產了。空客A380是匯聚歐盟各個國家最尖端科技的產物,每個國家都有各自專精的科技領域,但現在因為歐盟鬧解體而無法繼續合作下去了,離開了分工合作,夢想終將無以為繼。話題扯了這麼遠,這跟我們的文章主題有什麼關係呢?微服務,一種新架構技術,在探究微服務的本質是什麼之前,我們有必要先對架構做一個定義:架構是最高層次的系統分解、系統不易改變的決定,它主要描述構成系統的核心組件、組件之間的關係(即通訊路徑、機制和預期結果)、以及關鍵流程(組件之間如何交互完成某項業務)等等。

簡而言之,架構就是規範分工與合作的機制。劃分組件讓其具備獨一無二的功能,各司其職,這就是分工;規範組件之間的通訊機制,互通有無,這就是合作。從事應用架構或系統架構等崗位,我們需要瞭解各種主流中間件、軟硬體設備的特性,以便做出合理的分工。同時,我們還需要懂得在特定業務場景下選用合適的產品來滿足需求,讓它們能夠緊密地合作。有了這層理解之後,我們就能理解各種類型架構的事情了,例如:組織架構的變革等。

現在我們知道微服務的本質就是:一種更優的分工合作機制,加速分工,促進合作,幫我們成就更大的夢想!好,今天先分享到這裡,後續老兵哥將繼續講述這個有關夢想、分工與合作的故事:

  1. 我們為什麼要引進微服務架構?
  2. 微服務為何從前後端分離開始?
  3. 如何逐步演進至全微服務架構?
  4. 微服務實施包括哪些關鍵步驟?
  5. 哪些系統適合改造成微服務呢?

堅持原創不易,如果你覺得有價值,麻煩動動手指點下文 「 推薦 」按鈕,讓更多小伙伴可以看到,老兵哥會更有動力堅持分享的。另外,我後續還會分享職業規劃、應聘面試、技能提升、影響力打造等經驗,歡迎 關註 本專欄或微信公眾號 「 IT老兵哥 」


關註「IT老兵哥」,賦能程式人生

 

下麵是老兵哥 2019 年在職業規劃、技能提升、影響力打造等方向上輸出的熱評文章,供大家參考。如文章未附鏈接,請移步公眾號,查看《2019 好評文章合集》:

架構師入門系列

 

【跳槽找工作系列】

 

【裁員小知識系列】

 

【影響力打造系列】

  • 如何在打造影響力的路上碼不停?
  • 知識付費,讓我賺了一筆小錢!
  • 培訓授課遭遇美女砸場怎麼辦?
  • 如何做個全時四驅的培訓師?
  • 影響力大師教我們如何搞定客戶
  • 技術人要不要掌握營銷能力?
  • 如何從演講者進階到引導師?
  • 如何營造輕鬆的培訓氛圍?

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 寫正則表達式, 根據字元串來寫正則表達式進行匹配 經驗: 1.找規律 2.不要追求完美 身份證的正則表達式 15位或者18位 ([1-9][0-9]{14})|([1-9][0-9]{16}[0-9xX]) ([1-9][0-9]{14})([0-9]{2}[0-9xX])? 1. 座機號碼的正則表 ...
  • 正則表達式 也叫規則表達式, 按照一定的規則組成的一個表達式, 這個表達式的作用主要是匹配字元串的 "我的電話:10086,他的電話:10010,你的電話:10000" 正則表達式, 把這個字元串中的所有的數字找到 正則表達式的作用: 匹配字元串的 在大多數編程語言中都可以使用 正則表達式的組成: ...
  • 1、data-xx命名:xx可以用“-”和“_”,但是不能有大寫字母; 2、用$ele.data()獲取值的時候,不需要“data-”首碼:$ele.data('xx'); 3、$ele.data()與$ele.attr()的區別: 1)data()的值保存在jQuery堆記憶體中,attr()的值保 ...
  • 有的時候需要獲取頁面名稱,為此我在這裡封裝了一個方。 一、分別根據傳遞不同的參數,獲取到html頁面的名稱。 通過傳遞參數,獲取到html頁面的名稱;參數params 以下是參數解釋說明 (1)params=1,只獲取頁面名稱,不帶.html尾碼 1.1 例如 url路徑是 https://www. ...
  • 小程式開發成本低,一個小程式,可同時運行在iOS和Android系統上;開發周期短,技術學習成本低,獲取用戶成本低,安裝下載成本低;運營成本低,畢竟無論是微信還是支付寶等,都有大量的用戶所在。總而言之,船小好調頭,試錯成本小。 ...
  • 有的時候需要測試下web項目中post、get請求是否正確,但是這個時候電腦上沒有安裝測試工具,怎麼辦呢?直接用瀏覽器控制台測試,打開網站,F12控制台,在控制臺下複製粘貼下麵的ajax請求,之後ajax請求。 第一步:控制台寫方法 第二步:控制台調用 url:請求的URL,method:post/ ...
  • 1.前言 我們經常使用 cron 表達式來定義定時任務的執行策略,今天我們就總結一下 cron 表達式的一些相關知識。 2. cron 表達式的定義 cron 表達式是一個字元串,該字元串由 個空格分為 個域,每一個域代表一個時間含義。 格式如下: 通常定義 “年” 的部分可以省略,實際常用的由 前 ...
  • 前段時間參加了IAS2019(互聯網架構峰會),本次峰會以中台為主題,所以又稱中台戰略大會,據說是全國首屆關於中台戰略的會議,會議上有許多優秀的企業架構師帶來了他們各自在實踐中台過程中的心得。本文就筆者對自己參與的會場的情況做一些分享,同時也寫寫自己參會以及查閱相關資料後關於中台這一概念的理解和體會 ...
一周排行
    -Advertisement-
    Play Games
  • 概述:在C#中,++i和i++都是自增運算符,其中++i先增加值再返回,而i++先返回值再增加。應用場景根據需求選擇,首碼適合先增後用,尾碼適合先用後增。詳細示例提供清晰的代碼演示這兩者的操作時機和實際應用。 在C#中,++i 和 i++ 都是自增運算符,但它們在操作上有細微的差異,主要體現在操作的 ...
  • 上次發佈了:Taurus.MVC 性能壓力測試(ap 壓測 和 linux 下wrk 壓測):.NET Core 版本,今天計劃準備壓測一下 .NET 版本,來測試並記錄一下 Taurus.MVC 框架在 .NET 版本的性能,以便後續持續優化改進。 為了方便對比,本文章的電腦環境和測試思路,儘量和... ...
  • .NET WebAPI作為一種構建RESTful服務的強大工具,為開發者提供了便捷的方式來定義、處理HTTP請求並返迴響應。在設計API介面時,正確地接收和解析客戶端發送的數據至關重要。.NET WebAPI提供了一系列特性,如[FromRoute]、[FromQuery]和[FromBody],用 ...
  • 原因:我之所以想做這個項目,是因為在之前查找關於C#/WPF相關資料時,我發現講解圖像濾鏡的資源非常稀缺。此外,我註意到許多現有的開源庫主要基於CPU進行圖像渲染。這種方式在處理大量圖像時,會導致CPU的渲染負擔過重。因此,我將在下文中介紹如何通過GPU渲染來有效實現圖像的各種濾鏡效果。 生成的效果 ...
  • 引言 上一章我們介紹了在xUnit單元測試中用xUnit.DependencyInject來使用依賴註入,上一章我們的Sample.Repository倉儲層有一個批量註入的介面沒有做單元測試,今天用這個示例來演示一下如何用Bogus創建模擬數據 ,和 EFCore 的種子數據生成 Bogus 的優 ...
  • 一、前言 在自己的項目中,涉及到實時心率曲線的繪製,項目上的曲線繪製,一般很難找到能直接用的第三方庫,而且有些還是定製化的功能,所以還是自己繪製比較方便。很多人一聽到自己畫就害怕,感覺很難,今天就分享一個完整的實時心率數據繪製心率曲線圖的例子;之前的博客也分享給DrawingVisual繪製曲線的方 ...
  • 如果你在自定義的 Main 方法中直接使用 App 類並啟動應用程式,但發現 App.xaml 中定義的資源沒有被正確載入,那麼問題可能在於如何正確配置 App.xaml 與你的 App 類的交互。 確保 App.xaml 文件中的 x:Class 屬性正確指向你的 App 類。這樣,當你創建 Ap ...
  • 一:背景 1. 講故事 上個月有個朋友在微信上找到我,說他們的軟體在客戶那邊隔幾天就要崩潰一次,一直都沒有找到原因,讓我幫忙看下怎麼回事,確實工控類的軟體環境複雜難搞,朋友手上有一個崩潰的dump,剛好丟給我來分析一下。 二:WinDbg分析 1. 程式為什麼會崩潰 windbg 有一個厲害之處在於 ...
  • 前言 .NET生態中有許多依賴註入容器。在大多數情況下,微軟提供的內置容器在易用性和性能方面都非常優秀。外加ASP.NET Core預設使用內置容器,使用很方便。 但是筆者在使用中一直有一個頭疼的問題:服務工廠無法提供請求的服務類型相關的信息。這在一般情況下並沒有影響,但是內置容器支持註冊開放泛型服 ...
  • 一、前言 在項目開發過程中,DataGrid是經常使用到的一個數據展示控制項,而通常表格的最後一列是作為操作列存在,比如會有編輯、刪除等功能按鈕。但WPF的原始DataGrid中,預設只支持固定左側列,這跟大家習慣性操作列放最後不符,今天就來介紹一種簡單的方式實現固定右側列。(這裡的實現方式參考的大佬 ...