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

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

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


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

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

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

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

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

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

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

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

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

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

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

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


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

 

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

架構師入門系列

 

【跳槽找工作系列】

 

【裁員小知識系列】

 

【影響力打造系列】

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

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

更多相關文章
  • 寫正則表達式, 根據字元串來寫正則表達式進行匹配 經驗: 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(互聯網架構峰會),本次峰會以中台為主題,所以又稱中台戰略大會,據說是全國首屆關於中台戰略的會議,會議上有許多優秀的企業架構師帶來了他們各自在實踐中台過程中的心得。本文就筆者對自己參與的會場的情況做一些分享,同時也寫寫自己參會以及查閱相關資料後關於中台這一概念的理解和體會 ...
一周排行
  • 這是一個個人敘述自己建設博客的帖子,既然是第一篇那肯定是不牽扯代碼了,主要講一下大體的東西,微軟最新的web框架應該就數asp.net core 3.1了這是一個長期支持版,而且是跨平臺又開源版本,所以大家可以去GitHub上找源碼,也可以研究源碼是怎麼寫的。 大過年的偏偏出現這個疫情,所以只能窩屋 ...
  • 上一篇帖子講了用了哪些技術,這個帖子就先介紹介紹api項目吧,項目就是一個普通的webapi項目,賬戶系統用的identity ,什麼是identity呢? 其實就是官方封裝好的一系列的可以用來操作資料庫的類,對用戶信息進行增刪改查。主要牽扯的類有如下幾個: UserManager SignInMa ...
  • 1、添加php的yum軟體倉庫 sudo rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm 2、安裝php相關軟體,執行過程中全部選擇yes即可 sudo yum install php71w.x86_64 php71w-cli.x86_ ...
  • 預設情況下,CentOS6 64 bit 已經早已不支持php5.2.x ,但是某些php程式還需要zend optimizer支持,怎麼辦呢?目前大部分的yum repos 都已經不支持直接安裝php5.2了,怎麼在CentOS6.x/6.5/6.4/6.3/6.2/7.x 64位安裝php5.2 ...
  • Dart Bool類型和其他語言類似,比較簡單 其特點有: 1.使用 bool 表示布爾類型 2.布爾值只有 true 和 false 3.布爾類型bool預設值是null bool isTrue = true; bool isFalse = false; bool defaultBool ; pr ...
  • 今天在資料庫中生成數據表,生成遷移文件時報了一堆錯。 最重要的就是TypeError: __init__() missing 1 required positional argument: 'on_delete', 他說我缺少一個必要的參數。 代碼如下: 關聯外鍵 sgrade = models.F ...
  • —— 終端中的編輯器 01. 簡介 在工作中,要對 伺服器 上的文件進行 簡單 的修改,可以使用 遠程登錄到伺服器上,並且使用 進行快速的編輯即可 常見需要修改的文件包括: 源程式 配置文件 ,例如 的配置文件 在沒有圖形界面的環境下,要編輯文件, 是最佳選擇! 每一個要使用 Linux 的程式員, ...
  • 認識 Python 人生苦短,我用 Python —— Life is short, you need Python 01. Python 的起源 Python 的創始人為吉多·範羅蘇姆(Guido van Rossum) 1. 1989 年的聖誕節期間,吉多·範羅蘇姆為了在阿姆斯特丹打發時間,決心 ...
  • 01. 第一個 程式 1.1 Python 源程式的基本概念 1. Python 源程式就是 一個特殊格式的文本文件 ,可以 使用任意文本編輯軟體 做 的開發 2. Python 程式的 文件擴展名 通常都是 1.2 演練步驟 在桌面下,新建 目錄 在 目錄下新建 文件 使用 gedit 編輯 並且 ...
  • PyCharm 的官方網站地址是:https://www.jetbrains.com/pycharm/ 01. 恢復 PyCharm 的初始設置 的 配置信息 是保存在 用戶家目錄下 的 目錄下的, 表示當前使用的 的版本號 如果要恢復 的初始設置,可以按照以下步驟進行: 1. 關閉正在運行的 2. ...
x