架構師的工作

名字想好沒。發表於2018-12-16

原文地址: itweknow.cn/detail?id=5… , 歡迎大家訪問。

架構師是個什麼樣的崗位?我們其實可以將架構師看成一個城市規劃師的角色。作為一個城市規劃師我們需要將城市分片,分成工業區,生活區等等,並且還需要為未來的變化預留空間。那麼對於架構師而言也是這樣,架構師需要規劃我們的系統,將微服務分片,需要預測未來的變化,設計的架構需要靈活可變的。那麼我們應該如何開始一個架構師的工作呢?

分割槽

首先要做的,就是像城市規劃師將城市分片一樣,將我們的系統分割槽。

  • 可以將一個服務作為一個分割槽,也可以粗粒度的一小群微服務作為一個分割槽。
  • 儘可能少的去規定分割槽內的具體實現方式。
  • 關注點應該在服務之間的互動方式,而非服務的具體實現。

原則和實踐

其實就是為了更好的達成我們的目標而制定一些原則和實踐。比如說如果我們最終的目標是很大的跨國業務,那麼我們架構在設計之初的一個原則可能就是系統必須可以很容易部署在很多不同的地方。

  • 原則最好不要超過10個,容易讓人記住。
  • 實踐是基於原則的,包括我們常說的程式碼規範,更多的是技術層面上的一些約束,所以可能會改變的比原則更頻繁一些。
  • 有些時候可能實踐會是原則本身。

架構設計中的幾條標準

  • 監控:整個系統級別,確保所有的服務使用同樣的方式報告健康狀態以及其他監控相關的資料。對與監控和日誌資料都需要集中式管理。
  • 選用少數幾種明確的介面技術來方便消費者整合。
  • 每個服務都需要有很健全的容錯機制,需要很好的處理下游服務的異常。

技術債務

先解釋一下什麼是技術債務,其實就是在我們的實際實施過程中由於一些短期的利益而偏離的我們的原則,從長遠來看這個妥協是會帶來一定的代價的。這就是技術債務。對於一個架構師來講,對與技術債務需要把握下面兩點:

  • 理解技術債務的層級以及其對系統的影響。
  • 應該給團隊提供一些溫和的指導,然後讓團隊自行決定如何去償還技術債務。

例外管理

其實我們定製的所有原則也會有一些考慮不周的,也有一些原則會隨著時間或者願景的變化而變的不再適用,那麼這時候我們就需要在恰當的時機去修改它。例外管理就是將這項工作變得可衡量。 當某個原則每破例一次的時候,我們就記錄一下。如果這樣的例外出現的次數很多,那麼我們可以通過修改原則或者實踐的方式來把理解固化下來。

集中治理和管理

什麼是治理?治理通過評估干係人的需求、當前情況及下一步的可能性來確保企業目標的達成,通過排優先順序和做決策來設定方向。對與已經達成一致的方向和目標進行監督。
架構師主要會承擔技術治理這一部分的工作。架構師還需要對很多事情負責,制定開發原則、確保這些原則衍生出來的實踐不會給開發人員帶來通過、瞭解新技術、和團隊一起工作甚至是編碼工作。在實際的工作中我們不要過度的干預團隊的決定,但是當團隊的決定會引起很重大的後果時應該進行干預。

架構師的職責

  • 願景 確保在系統級有一個經過充分溝通的技術願景,這個願景應該可以幫助你滿足客戶和組織的需求。
  • 同理心 理解你所做的決定對客戶和同事帶來的影響。
  • 合作 和儘量多的同事進行溝通,從而更好地對願景進行定義、修訂以及執行。
  • 自治性 在標準化和團隊自治之間尋找一個正確的平衡點。
  • 治理 確保系統按照技術願景的要求實現。

相關文章