精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

如何避免新代碼變包袱?阿里通用方法來了

開發 架構
從零開始建立一個新的系統,新寫的每行代碼都可能成為明天的歷史包袱?如何能有效的在遺留代碼上工作?今天,阿里資深技術專家輝子為我們帶來NBF框架下軟件工程架構設計通用方法論,值得細細品讀。

什么是設計?什么是架構?從零開始建立一個新的系統,新寫的每行代碼都可能成為明天的歷史包袱?如何能有效的在遺留代碼上工作?今天,阿里資深技術專家輝子為我們帶來NBF框架下軟件工程架構設計通用方法論,值得細細品讀。

[[279081]]

Note:本文討論的是基于服務化前提下的通用軟件工程架構方法論,并未涉及到微觀設計或架構的具體細節。

前言

即使代碼多年的人都會對這兩個問題有點蒙圈:什么是設計?什么是架構?

從單詞上看:設計是Software Design,架構是Software Architecture;分別對應的作者是:Designer和Architect:

  • Architect都是Designer,但Designer未必是Architect。正如所有的架構設計都是設計,但設計未必是架構設計;
  • Design關注微觀代碼(inside component),Architecture關注宏觀軟件結構(between components);
  • Architect應該都是從Designer成長起來的。畢業了用code編寫軟件;成長了用ppt設計軟件;
  • 只會用ppt設計,但代碼寫得不好的Architect都是假的Architect;
  • Architecture里聽到比較多的詞語:Serverless、FAAS、Microservice、multi-layer、Event driven、OSGI、NBF......
  • Design里聽到比較多的詞語:SOLID、 DDD、正交設計、Design Pattern;
  • 搞不清SOLID,也不可能把軟件的層次分好,也無法理解什么是OSGI的價值;
  • 好的Designer是通往好的Architect的必經之路。

服務化架構的基本原則

 

如何避免新代碼變包袱?阿里通用方法來了

 

New System

從零開始建立一個新的系統,有幾個特征:

  • 歷史包袱小
  • 上下文簡單
  • 設計的約束小
  • 新寫的每行代碼都可能成為明天的歷史包袱

由于調用方還沒有,新系統可以比較完美的執行我們預想的架構設計,但是切記,最后那行才是最重要的那行:不要讓今天的代碼成為明天的歷史包袱,新的每行代碼都在書寫歷史。

上圖的1,2,3,4代表新建系統的順序:

  1. 由“相”抽象出“心”:先思考,那么多的業務場景下“相”,共同的特征“心”是什么。并反向用更多的相去驗證心。
  2. 將“心”具象成領域模型:關注領域模型(Domain Model),解耦數據模型(Persistence Model):將TUNNEL SPI化。
  3. 將領域模型中的依賴SPI化:解耦對外部系統的依賴,反轉依賴控制權。
  4. Mock所有spi實現,確保“心”領域模型包裹的單元測試完全通過
  5. 實現TUNNEL BUNDLE:設計數據模型(Persistence Model),關注“存”,“取”不關注領域模型。
  6. 實現依賴SPI適配BUNDLE:連接真實依賴服務。
  7. 包裝domain service:模型相關,業務無關。
  8. 根據業務需求組合/編排domain service成為scenario bundle或者業務SOP。

Working on legacy

對于一個軟件工程師來講,寫代碼最痛苦的事情莫過于coding on legacy,但同時又給了我們各種說辭:

  • 這些代碼太爛了,改起來太費勁【需要更多人】
  • 這事做不到,因為以前系統架構問題導致的【責任不在我】
  • 經過我的修改,現在已經好很多了,工單數量大批下降【我功勞顯著】
  • 知不知道:接手你代碼的人其實也在重復說上述3件事情

如何能有效的在遺留代碼上工作,業內有本非常不錯的書,叫"Working Effectively with Legacy Code",值得精讀:

 

如何避免新代碼變包袱?阿里通用方法來了

 

圖片來源:書籍《Working Effectively with Legacy Code》

所以我這里的標題可能不準確,我要討論的更多是"遺留代碼的重構",什么時候我們開始討論需要把現有系統重構:

  • 代碼確實腐化到無法正常維護,或者新加一個需求代價很大;
  • 目前代碼的技術架構滿足不了下一步業務的發展;
  • 很多特性已經下線作廢,卻跟有用的代碼藕斷絲連;
  • 業務邏輯隨著發展分散到不同的應用里,界限不清;
  • 專家級的未雨綢繆,著眼未來的規劃和新技術的應用;
  • 換老大了,需要立新的flag。

架構的基本原則依然是上面那幅圖。但上下文的不同,我們的發力點和優先級有明顯的區別。阿里整個體系里的依賴關系錯綜復雜,要對阿里環境下的系統做重構是件絕對謹小慎微的事情。為了完成在這么復雜體系下的架構及代碼重構,我們必須有條不紊的分離關注點以及一如既往的堅持軟件卓越。

聚焦與收斂上游調用

 

如何避免新代碼變包袱?阿里通用方法來了

 

解耦下游依賴

 

如何避免新代碼變包袱?阿里通用方法來了

 

以服務為單位切換

 

如何避免新代碼變包袱?阿里通用方法來了

 

老系統下線

經過一步一步的分解,legacy系統已經完全被重構,并且具備隨時切換的準備。這里我給幾個建議:

  1. 先把老實現作為API的默認實現,新的實現作為老的實現的降級實現,并使用策略分流一部分流量(具體比例跟團隊信心相關);
  2. 對于有業務需求變更的部分應盡快實現在新的實現里,并將新實現作為API的默認實現,老實現作為新實現的降級實現,策略應該是即時降級,也就是新實現出現問題立刻降級到老實現;
  3. 運行一段時間沒有問題后,講所有默認實現切換為新實現,并將老實現作為新實現的降級實現;
  4. 其實這時就算所有切換完畢:老實現可以永遠作為新實現的降級實現,也就是只要我升級一次服務,上一次成功版本就可以作為這次的降級實現,這樣,線上問題回滾就是秒級的。

總結

本文基于借助NBF提供的遠程多態,服務編排等能力下基礎資料,商品,組網等系統新建,重構的經驗及方法論總結。僅供遇到架構重構,解耦等問題困擾的技術團隊參考。

本文作者:輝子

責任編輯:武曉燕 來源: 今日頭條
相關推薦

2019-09-30 10:46:46

代碼架構Architect

2023-02-05 13:06:07

ChatGPT看圖方法

2022-04-01 08:02:44

云成本服務器互聯網

2017-03-02 13:43:02

RPython文本挖掘

2023-09-11 13:12:54

模型數據

2009-03-09 17:25:34

2021-11-09 21:22:24

微軟Windows 11Windows

2011-12-26 15:51:36

用戶訪問訪問管理

2024-03-25 12:40:19

訓練模型

2016-04-08 09:24:01

脆弱代碼更新

2024-07-16 15:48:45

蘋果iPhone果粉

2024-05-22 16:01:32

2023-02-22 14:47:24

模型AI

2023-04-06 09:41:00

React 組件重渲染

2020-01-03 08:34:18

pandas代碼開發

2014-11-21 09:17:14

2021-11-05 08:28:27

內存泄漏調試

2021-05-14 14:28:15

LinuxChrome瀏覽器

2023-10-20 12:53:00

模型訓練

2009-05-27 11:30:20

C#Visual Stud協變
點贊
收藏

51CTO技術棧公眾號

久久亚洲高清| 欧美老女人性生活| 99热手机在线| av电影在线观看一区二区三区| 奇米精品一区二区三区在线观看一| 一区二区三区视频在线 | 亚洲男人在线天堂| av高清一区| 一区二区三区四区五区视频在线观看 | 精品人妻一区二区三区蜜桃视频| jizz亚洲女人高潮大叫| 亚洲激情一二三区| 日本一区二区不卡高清更新| 国产绳艺sm调教室论坛| 国产婷婷精品| 欧美日本在线视频中文字字幕| 丝袜熟女一区二区三区| 成人在线中文| 精品久久久久久久久久久久久| 亚洲一区二区三区免费观看| 神宫寺奈绪一区二区三区| 久久精品国产久精国产爱| 久久欧美在线电影| 青青操在线视频观看| 日韩高清一级| 日韩精品综合一本久道在线视频| 18禁免费无码无遮挡不卡网站| 蜜桃av在线免费观看| 成人激情午夜影院| 91在线免费看网站| 久久亚洲天堂网| 午夜天堂精品久久久久| 国产亚洲精品久久| 日韩av成人网| av在线亚洲一区| 在线观看免费视频综合| 欧美黑人经典片免费观看| 黄色免费在线观看网站| 久久精品男人天堂av| 成人做爽爽免费视频| 成人毛片一区二区三区| 亚洲人成毛片在线播放女女| 欧美精品制服第一页| 美国美女黄色片| 超碰成人免费| 欧美岛国在线观看| 小泽玛利亚视频在线观看| 在线日韩影院| 精品欧美国产一区二区三区| 成人免费性视频| 午夜dj在线观看高清视频完整版| 久久精品人人做人人爽97| 国产伦精品一区二区三区高清版| 夜夜狠狠擅视频| 日本欧美一区二区在线观看| 国产91精品在线播放| 奇米影视第四色777| 在线观看一区视频| 欧美国产日韩在线| 久久国产精品二区| 香蕉综合视频| 美日韩在线视频| 女人裸体性做爰全过| 日韩片欧美片| 日韩中文字幕欧美| 无码黑人精品一区二区| 91一区二区三区四区| 亚洲人成自拍网站| 一二三不卡视频| 国产一区二区三区天码| 亚洲人成绝费网站色www| 人人妻人人澡人人爽| 成人影院在线| 日韩在线免费观看视频| 日韩欧美在线视频播放| 天天综合网网欲色| 九九热最新视频//这里只有精品| 欧美黑吊大战白妞| 韩日欧美一区| 欧美亚洲在线播放| 性高潮视频在线观看| 久久99精品国产麻豆婷婷洗澡| 日本成人免费在线| 日韩国产亚洲欧美| 久久精品国产成人一区二区三区| 国产久一一精品| 91影院在线播放| 国内精品在线播放| 国产成人女人毛片视频在线| 朝桐光av在线一区二区三区| 国产成人av福利| 国产在线精品一区二区三区》 | 蜜桃视频在线观看免费视频| 色噜噜狠狠色综合欧洲selulu| 少妇网站在线观看| 亚洲综合色婷婷在线观看| 亚洲精品www| 手机看片日韩av| 亚洲精品电影| 欧美一级片免费在线| 91久久久久国产一区二区| 成人v精品蜜桃久久一区| 欧美精品人人做人人爱视频| 色影院视频在线| 洋洋成人永久网站入口| www.色偷偷.com| av不卡一区| 一区二区三区视频在线| 日本视频www| 精品在线观看免费| 99视频网站| 好男人免费精品视频| 中文字幕一区二区三| 日本www在线播放| 日韩中文字幕一区二区高清99| 亚洲精品资源美女情侣酒店| 99热这里只有精品4| 亚洲专区免费| 99国产盗摄| 日本大片在线观看| 亚洲美女屁股眼交| www.com黄色片| 一道在线中文一区二区三区| 久久久av一区| 亚洲av综合一区| 91免费精品国自产拍在线不卡| 国内自拍中文字幕| 久久伊人国产| 国产午夜精品视频免费不卡69堂| 日韩成年人视频| 国产成人在线影院| 伊人av成人| 成人在线视频免费看| 亚洲毛片在线观看.| 国产一级免费av| 国产成人综合亚洲网站| 色香蕉在线观看| av中文字幕在线观看第一页| 日韩一区国产二区欧美三区| 亚洲aaa视频| 老司机精品视频导航| 日韩免费毛片| 精品国产第一福利网站| 亚洲激情视频在线| 日韩少妇裸体做爰视频| 国产盗摄女厕一区二区三区| 日本一本草久p| 国产乱码精品一区二区三区亚洲人| 伊人亚洲福利一区二区三区| 特一级黄色录像| 国产美女一区二区| 亚洲资源视频| 91精品网站在线观看| 精品国产欧美一区二区五十路| 中文字幕乱码视频| 国产精品视频麻豆| 天天操狠狠操夜夜操| 日韩免费视频| 成人高h视频在线| 黄色网页网址在线免费| 日韩欧美一区在线| 久久无码精品丰满人妻| 国产91精品一区二区麻豆网站| 亚洲五码在线观看视频| 四虎影视成人精品国库在线观看| 日韩中文字幕在线观看| 99精品久久久久久中文字幕 | 9.1成人看片免费版| 国产一区二区三区久久久久久久久| 久久精品综合一区| 亚洲欧美小说色综合小说一区| 亚洲区一区二区| 亚洲系列在线观看| 亚洲黄网站在线观看| 午夜免费福利网站| 精品9999| 日产中文字幕在线精品一区| 日韩综合av| 欧美国产日韩精品| 美女毛片在线看| 欧美日韩亚州综合| 免费在线观看av网址| 91网站在线播放| 天天干天天操天天玩| 91精品福利| www日韩av| 日韩精选视频| 色综合久久88| 精品乱码一区二区三四区视频| 欧美日韩精品系列| 久久精品欧美一区二区| 久久在线免费观看| 91日韩精品视频| 99re久久最新地址获取| 91欧美视频网站| 在线āv视频| 亚洲精品短视频| 91精品视频免费在线观看| 精品免费在线观看| 少妇高潮惨叫久久久久| 不卡欧美aaaaa| www.这里只有精品| 一区二区日本视频| 中文有码久久| 国产精品高清一区二区| 欧美孕妇与黑人孕交| a视频在线播放| 日韩精品一区二区视频| 97人人爽人人爽人人爽| 欧美午夜美女看片| 岛国片在线免费观看| 成人av片在线观看| 国产色视频在线播放| 亚洲无吗在线| 在线视频不卡国产| 天堂在线精品| 国产精品国产精品国产专区不卡| 农村妇女一区二区| 午夜精品一区二区三区在线视频| 2021av在线| 亚洲欧美激情一区| 欧美一级片免费| 在线精品视频一区二区三四| 国产一级淫片a| 国产精品国产自产拍高清av | 亚洲精品一二三**| 国产精品视频yy9099| 丰满诱人av在线播放| 亚洲视频在线看| 欧美一级特黄aaaaaa大片在线观看| 欧美少妇一区二区| 天天爽夜夜爽人人爽| 午夜精品福利一区二区蜜股av| 亚洲欧洲综合网| 成人免费高清视频| 能看的毛片网站| 亚洲欧美日韩国产一区| 日韩免费在线观看av| 97偷自拍亚洲综合二区| 日产精品高清视频免费| 蜜桃成人av| 欧美一区1区三区3区公司| 精品福利网址导航| 国产精品三区www17con| 日韩一区二区三区精品视频第3页| 国产精品三级在线| 成人开心激情| 国产精品igao视频| 激情国产在线| 4438全国亚洲精品在线观看视频| 1区2区3区在线| 91精品国产高清久久久久久| 国产拍在线视频| 91po在线观看91精品国产性色| 24小时免费看片在线观看| 欧美精品一区二区免费| 国产理论电影在线| 欧美成人免费一级人片100| 欧美18一19xxx性| 欧美成年人在线观看| 免费观看成人高潮| 久久网福利资源网站| 肉体视频在线| 91精品国产成人| 在线一区av| 国产精品久久久久久久久久久久久久| 亚洲性色av| 欧美在线免费视频| 伊人久久综合一区二区| 国产精品久久久久不卡| 成人国产一区| 亚洲free性xxxx护士hd| 亚洲国产aⅴ精品一区二区| 超碰97网站| 台湾佬综合网| 日本一区视频在线观看免费| 欧美色女视频| 久久久久福利视频| 99热在线精品观看| 日韩一级免费在线观看| 日本少妇一区二区| 亚欧精品在线视频| 91视视频在线观看入口直接观看www| 国产激情第一页| 国产日韩欧美制服另类| 久艹在线观看视频| 午夜精品久久久久| 在线观看毛片网站| 欧美成人一区二区三区片免费| 免费av一级片| 日韩精品视频在线| 精品国产丝袜高跟鞋| 羞羞色国产精品| 欧美日韩激情电影| 3d蒂法精品啪啪一区二区免费| 牛牛视频精品一区二区不卡| 日韩欧美在线电影| 黄色av成人| www亚洲成人| 不卡电影一区二区三区| 后入内射无码人妻一区| 欧美日韩国产一区二区三区| 乱子伦一区二区三区| 欧美大片一区二区| 午夜伦全在线观看| 8x拔播拔播x8国产精品| www.成人爱| 99中文视频在线| 日本不卡二三区| 国产一线二线三线女| 久久国产精品72免费观看| 老熟妇精品一区二区三区| 国产精品情趣视频| 日本特级黄色片| 日韩女优电影在线观看| 你懂的好爽在线观看| 久久久免费在线观看| 只有精品亚洲| 涩涩日韩在线| 国产精品丝袜xxxxxxx| 成人一区二区三区仙踪林| 国产精品免费久久久久| 日韩在线播放中文字幕| 亚洲国内精品在线| 亚洲精品一区二区口爆| 一区二区欧美久久| 台湾佬中文娱乐网欧美电影| 成人性色av| 欧美a级成人淫片免费看| 成年人免费大片| av电影在线观看完整版一区二区| 黑人巨大精品一区二区在线| 欧美日韩精品一区二区天天拍小说 | 国产精品爽爽爽爽爽爽在线观看| 久久超级碰碰| 亚洲欧洲精品一区二区| 日韩国产在线观看| 午夜在线观看一区| 亚洲男人天堂av网| 国产女人高潮的av毛片| 日韩电影免费在线观看中文字幕| 伦xxxx在线| 国产欧美日韩亚洲精品| 精品亚洲成人| 亚洲一区二区蜜桃| 久久免费精品国产久精品久久久久| 国产精品1000| 精品国偷自产国产一区| 金瓶狂野欧美性猛交xxxx| 91久久久久久久久| 亚洲欧洲日韩| 91丨porny丨九色| 国产精品丝袜一区| 在线免费一级片| 中文字幕最新精品| 亚洲男男av| 黄色污污在线观看| 狠狠色丁香婷婷综合久久片| 日本黄区免费视频观看| 欧美手机在线视频| 69久久夜色| 亚洲a在线播放| 黄色成人精品网站| 日本成人在线免费观看| 亚洲综合网站在线观看| 蜜臀av午夜精品| 欧美亚洲视频一区二区| japanese国产精品| 毛片毛片毛片毛| 一区二区三区高清在线| 熟妇人妻系列aⅴ无码专区友真希 熟妇人妻av无码一区二区三区 | 中文字幕中文在线| 自拍偷自拍亚洲精品播放| 国产男女猛烈无遮挡| 久久久999精品| 国产精品一区二区三区美女| 波多野结衣 作品| 国产精品亚洲专一区二区三区 | 在线日本成人| 中文人妻一区二区三区| 污片在线观看一区二区| 狠狠v欧美ⅴ日韩v亚洲v大胸 | 久久综合色88| 国模一区二区| 激情图片qvod| 91小视频免费看| 中文字幕乱码一区二区| 欧美另类第一页| 网红女主播少妇精品视频| 美女av免费在线观看| 中文字幕在线不卡一区| 国产内射老熟女aaaa∵| 91高清免费在线观看| 久久婷婷蜜乳一本欲蜜臀| 久久久精品高清| 精品福利一区二区| 日韩理伦片在线| 国产一区二区精品免费| 美女在线观看视频一区二区| 美女的奶胸大爽爽大片|