極客新聞 19 如何從單體架構平滑過渡到微服務

2021-09-23 23:54:11 字數 861 閱讀 1647

本文筆記全部來自《極客新聞》——新鮮的技術資訊、權威的趨勢剖析、別樣的技術洞察

一旦決定在開發實踐中引入微服務架構,如何將積累下來的龐大的巨無霸系統潤物細無聲的過渡到微服務架構將是乙個巨大的挑戰。

推倒重新來過肯定不可取,架構師們最想通過微服務化取代的部分,往往是公司的主要盈利核心,改造難度不亞於飛行中更換引擎。從業界公開的資訊來看還沒有哪家做到了完美公升級,更多的可能無外乎兩種:

改造後苟延殘喘,研發疲於奔命;

改造中就直接休克。

因此為使微服務能順利的應用,架構師從不應該幻想一蹴而就,可以從以下三方面採取行動:

技術人都善於吧面臨的問題變成技術問題,然後在自己最擅長的領域去把它解決。這就造成乙個悖論:能用技術解決的問題就不是問題,真正的問題在受限的情景下僅靠技術是解決不了的,實施微服務最大的攔路虎也不是技術本身。

從行業內的實踐來看,最大的問題不是如何做好微服務,而是就微服務應該是什麼達成乙個一致的看法。

因此,可以實施前通過多數人參與打討論或培訓,使認知達成一致。這類似編碼規範中的命名規範,使用那種命名方法不重要,重要的是人人都使用同一種命名方法。

絞殺者模式 是指,對於無法通過修繕者模式改進的系統,在系統外重新構建新功能來逐步剝離重構,對功能服務逐個絞殺。好處是不影響原來的環境,一旦條件成熟就能快速切換。而缺點是可能需要一段時間同時維護兩套系統,付出額外的開發維護成本。

監獄模式是同程內部的一種叫法,允許一些短期無力改動的系統通過監獄視窗(microproxy)接入微服務平台並委託proxy將其暴露成微服務,單體架構往往擁有龐大的服務介面梳理,往往需要開多個監獄視窗。每個監獄視窗都會被包裝分割成微服務,條件成熟了能很方便的替換成原生微服務,成為刑滿釋放。

Java高階 極客 單例模式(二)優化

同步 synchronized getinstance方法 同步 synchronized getinstance方法 public class singleton 在靜態方法中例項化靜態物件。1 多執行緒下,保證執行緒安全加synchronized,消耗資源多,呼叫次數要少 return publ...

極客新聞 08 高效團隊善用的3個敏捷方法

本文筆記全部來自 極客新聞 新鮮的技術資訊 權威的趨勢剖析 別樣的技術洞察 實現敏捷的高管團隊對某些事情的處理方式會有所不同。基於與這些團隊的合作經驗,本文作者韓微文建議,那些想要變得更為敏捷的高管團隊需要採取如下舉措 一 對待辦事項進行優先順序排序 在企業層面,可以把公司的舉措視為一些待辦事項,就...

極客新聞 12 錯誤和失敗的區別是什麼?

本文筆記全部來自 極客新聞 新鮮的技術資訊 權威的趨勢剖析 別樣的技術洞察 錯誤讓人更強大,失敗讓人更弱小,這是錯誤和失敗的本質區別。克里斯蒂娜 扎普萊塔在 我們遇到的是錯誤還是失敗,完全取決於我們的自我選擇 文章中,講述了失敗和錯誤的區別。我們遇到的是錯誤還是失敗,完全取決於我們的自我選擇。這到底...