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

對.net系統架構改造的一點經驗和教訓

運維 系統運維
當網站架構全面Linux化,并且架構解決方案全部統一以后,其實在應用層用什么編程語言來寫,就不是一件重要的事情了。本文是作者對.net系統架構改造的一點經驗和教訓,分享給大家。

   在互聯網行業,基于Unix/Linux的網站系統架構毫無疑問是當今主流的架構解決方案,這不僅僅是因為Linux本身足夠的開放性,更因為圍繞傳統Unix/Linux社區有大量的成熟開源解決方案,覆蓋了網站應用擴展的方方面面。

  我記得十幾年前第一波互聯網浪潮的時代,采用Windows平臺ASP架構的大型網站是非常普及的,而如今采用Windows平臺.net架構的大流量知名網站已經鳳毛麟角了。很多采用Windows平臺.net架構的大型網站都面臨了架構上的擴展問題:

  例如國外的SNS網站MySpace網站面臨過很嚴重的性能擴展問題,國內電商網站京東也不止一次受困于架構擴展帶來了性能瓶頸。因此,一些Windows平臺.net架構為主的網站,不得不考慮“去.net化”,拋棄.net,全面遷移到以Java為主的架構上。

  但是大型網站的架構遷移,本身也是傷筋動骨的事情,風險極高,成功案例尚不多見,失敗案例俯拾皆是,這是因為:

  • 架構遷移是在現有業務系統上進行的,并不是從容的開發新產品,有足夠的時間測試和完善,相當于給正在高空飛行的客機換引擎,必須一次切換成功,沒有第二次機會,稍有差池,就會機毀人亡。而我們都知道,新開發一個大型系統,沒有上線磨合和完善過,無法做到一次100%完美。
  • 架構遷移意味著老的研發團隊將被淘汰,而往往老團隊體系隨著公司壯大已經掌握了足夠話語權,新架構的團隊在公司又根基未穩,出于維護自身利益的本能,新舊團隊之間很容易爆發政治斗爭,相互排擠,導致遷移失敗。

  5173“去.net化”的教訓


  5173網站以游戲裝備交易起家,曾經在客戶端網絡游戲發展黃金時期,迎來了業務爆發性的增長期。此時,用.net架構開發的網站已經不堪重負,由于現有的.net研發團隊長期無法解決網站的性能問題,5173決定將網站從.net架構全面遷移到Java為主的架構上。為此,5173花了很大的代價,從淘寶和SUN公司挖了很多工程師,組成了一個六七十人的Java架構研發部門。

  新的Java研發部門開發新的5173網站,而老的.net研發部門維護現有的5173網站,兩個部門并行工作,兩個版本的網站并行運行,這帶來了公司內部激烈的政治斗爭,新開發完成的Java版本的5173網站從未正式上線過,老的.net研發團隊在面臨嚴重生存威脅的情況下,努力解決了一些核心的可用性和穩定性問題。同時隨著端游黃金時代的結束,網站性能問題也逐漸顯得不再重要。

  在圍繞新版本網站是否要正式替換老版本網站的問題上,各個利益方爭執不下,反反復復拉鋸戰,而空降而來的女CTO不屬于任何派系,態度模棱兩可。最終斗爭的結果.net利益方戰勝了Java利益方,Java研發部門被清洗。

  我的.net系統架構改造的經驗和教訓


  3年前,我剛接手CSDN的產品和研發團隊的時候,CSDN的核心系統大約2/3是Windows平臺.net架構,1/3是LAMP架構。研發人員當時也很少:只有2個.net程序員,3個PHP程序員,后來還有1個我帶過來的Ruby程序員。當時的計劃是:網站整體架構改造的方向是Linux架構,逐漸替換掉現有的.net系統。因此不打算繼續招聘和補充.net程序員了,現有的.net程序員負責老的核心系統維護工作。

  但碩果僅存的2個.net程序員在隨后不到半年時間都走了:一個.net程序員跟著微軟出來的高管去創業,另一個.net程序員跳槽去百度做了前端工程師。這中間的道理也很簡單:既然公司要去.net化,那.net工程師就會擔心等到將來.net系統都換掉之后,自己在公司還有價值嗎,不就徹底邊緣化了嗎?

  當然我在制訂架構遷移計劃的時候,也考慮到了這一點:我給那個更資深的.net工程師制訂的是整個公司總架構師的培養計劃,那個精通JS的.net工程師制訂的是未來前端團隊Leader的培養計劃。不過有不確性的承諾總是不如現實的威脅更迫切,所以我也特別能夠理解.net工程師的流失。

  這個時候,我陷入了一個兩難的處境:

  • 如果未來還是沿著“去.net化”的計劃往下走,就算重新招聘和搭建了.net研發團隊,由于.net在公司是注定要被替換掉的,那么新的.net團隊是不可能穩定的,很可能來一兩個月,一看形勢不對,立馬走人了。而當時.net的核心系統占整個網站的比重很高,且極端復雜,一旦出問題,根本就束手無策,必須要有好手坐鎮維護。當時我已經開始review核心系統的.net代碼,準備親自上陣了。
  • 如果未來放棄“去.net化”的計劃,也許短期可以解決一些頭疼的系統維護的問題,但是對整個網站長期的發展會帶來很多不利的方面:例如網站的安全性問題,網站的架構擴展問題,網站服務端軟件全面正版化的成本問題等等。如果當時不下定決心去.net化,那么將來再想做這個事情,代價只會越來越高。

  當時,我最初的想法是:招聘2名水平尚可,沒有太大上進心,可以安于現狀,踏踏實實工作的.net程序員來維護老的.net核心系統;同時招聘和搭建ruby研發團隊,以我過去用ruby開發網站的驚人開發效率,爭取時間,逐一重寫老的.net核心系統。但是這樣做,風險也很大:

  • 我來CSDN的時間不是很長,當時CSDN線上產品又多又雜,足有上百個之多,很多系統我都不清楚干什么的;
  • 公司領導也不太支持我這么快動手,甚至很擔心我大刀闊斧的改造網站,會把當時已經很脆弱的網站徹底搞休克;
  • 我來北京以后,只帶過來1個Ruby程序員,而搭建Ruby團隊,磨合團隊,開發核心系統,都不是一朝一夕的事情,想快也很難快起來;

  幸運的是,我招聘過程中,面試到了兩個相當不錯的.net工程師,有很強的上進心,編程功底和悟性都很好。雖然不符合我當時想找安于現狀的工程師的標準,但我又不太想錯過好的人才,所以我臨時改變了自己的想法,將他們招過來,組建了新的.net團隊。

  為了避免出現之前.net團隊流失的問題,給新的.net團隊創造在公司發展的機會和空間,我想來想去,決定采取一個折衷的方案:即保留和沿用.net編程語言和框架,但是網站整體架構仍然去Windows化,概要說來:

  • 數據層放棄SQL Server數據庫和存儲過程,全部遷移到Linux平臺上的MySQL數據庫上;
  • 緩存不再依賴.net自身提供的緩存機制,遷移到部署在Linux平臺上的分布式的Redis上;
  • 服務之間的調用,避免使用.net自身專有協議,改成Restful的HTTP Web API調用;
  • 靜態資源請求,不再讓IIS自己處理,分離到Linux平臺上的nginx去處理;
  • 需要讀取的文件系統,也改成訪問Linux平臺上的分布式文件系統;
  • 部署.net代碼的Windows服務器放在LVS后面,用LVS做負載均衡和故障切換;

  簡單說來,就是單純讓.net做應用層的編程語言和框架,其他都交給Linux平臺的開源解決方案。而.net框架單純做應用層,無論ASP.net MVC的開發效率,還是.net CLR虛擬機的運行效率都非常好,目前我們單臺Windows服務器上跑幾百萬的動態請求毫無壓力,而且應用層架構是可以橫向擴展的:如果請求負載非常高,只需要添加更多Windows服務器即可。總之,做到了揚長避短。

  此外,我也比較注重不同編程語言研發團隊之間的交流,鼓勵.net工程師熟悉Linux操作系統,培養.net工程師整體架構意識。我們現在的主力.net骨干和我說,感覺來到這里以后技術上最大的提升就是視野一下被打開了。

  在后來兩年的整個網站改造過程中,也證明了這樣的做法是相當成功的:

  • .net團隊穩定的延續了下來,而且成為整個研發部門表現一直非常突出的團隊;
  • 整個系統改造的過程非常穩健和平滑,沒有碰到過什么風險;
  • 對網站用戶的沖擊很小,基本上都是在潛移默化當中,不知不覺的完成了整個網站產品的翻新;
  • 對公司線上業務也沒有造成任何影響,而且隨著系統不斷改造,對業務的支持越來越好;

  當網站架構全面Linux化,并且架構解決方案全部統一以后,其實在應用層用什么編程語言來寫,就不是一件重要的事情了,我們目前應用層現有產品線,既有.net,也有PHP和Ruby寫的,但是架構都是統一的,用什么編程語言,主要取決于研發團隊資源的調配情況而定。

  總之,以我的經驗來說,一個傳統上嚴重依賴微軟解決方案架構的網站,如果要進行架構改造,遷移到Linux平臺,甚至用其他編程語言重寫,從來都不是一個單純的技術問題,它至少涉及如下幾個層面的問題:

  • 如何保障舊系統的研發團隊的利益問題,如何做到激勵老團隊參與架構改造,分享成功。這是最重要的,往往也是架構遷移最容易出現的致命問題,如果架構改造注定要犧牲老團隊,完全不考慮和保障他們的利益,我認為一定會產生殘酷的政治斗爭,最終必然失敗;
  • 現有業務系統如何保持正常運轉和平滑過渡的問題,如果架構改造影響到了業務,那一定會夭折;
  • 如何保證網站用戶體驗的平滑過渡和改善的問題,如果架構改造影響了用戶基本使用體驗,那也一定會被叫停;
  • 領導對架構改造當中出現風險的容忍度問題,以及領導對架構改造周期拉長以后的耐心問題;

  一點題外話


  我感覺我們互聯網行業有一個不太好的現象:有些網站在促銷期間癱瘓了,有些網站經常出現訪問不穩定的現象,公司老板就喜歡跑到微博上來放狠話,請下屬喝茶,或者急就章的嚷嚷百萬年薪招CTO,這些都是很幼稚的做法。這就好比一個人,平常生活習慣差,花天酒地,從不注意養生,結果長年累月下來,終于病倒了。在這個時候狠狠的揮舞支票嚷嚷,哪個名醫能給我藥到病除,我給誰百萬報酬。

  所以,當一個網站出現嚴重的技術問題,其根源往往都不是單純的技術問題,也不是單純換個CTO就可以藥到病除的,要反思公司企業文化是不是從來沒有重視過研發,對技術團隊的激勵到位了嗎?對架構師的意見重視過嗎?對未來可能面臨的技術門檻是否有過長期的研發投入?

  關于這個現象,我記得Fenng說過一句很精辟的話:“技術問題,總是在短期被高估,在長期被低估”,我也想補充一句:“技術出現了問題,從來都不單純是技術導致的問題”。

責任編輯:黃丹 來源: robbinfan.com
相關推薦

2013-05-14 12:06:26

.Net系統架構架構設計

2015-11-02 09:43:25

ASP.NET異步編程

2012-10-30 10:09:56

Redis

2014-09-17 10:30:25

代碼

2021-05-17 11:47:41

多租戶系統私有化

2012-03-06 09:17:11

開源項目運作

2013-03-06 10:19:56

重構架構設計

2015-07-29 10:39:33

代碼審查經驗教訓

2012-09-26 09:54:52

Scrum

2009-06-17 14:36:02

學習Java心得

2009-08-03 09:17:30

ASP.NET Ses

2014-11-25 11:52:15

.NET

2021-11-18 10:08:43

企業IT技術

2009-11-03 09:09:19

VB.NET類

2009-08-04 16:34:13

ASP.NET代碼分離

2010-05-10 18:22:03

2014-09-23 11:21:05

代碼命名程序員架構設計

2009-11-02 16:30:29

VB.NET構造器

2009-10-28 14:30:16

VB.NET RmDi

2011-05-24 11:09:30

Access數據庫
點贊
收藏

51CTO技術棧公眾號

蜜桃av一区二区三区| 欧美一区电影| 欧美日韩国产一中文字不卡| 欧美成人综合一区| 中文字幕在线视频第一页| 中文在线播放一区二区| 亚洲国产第一页| 中文久久久久久| 大香伊人久久| 国产欧美一区二区精品忘忧草 | 国产夫妻在线播放| 国产伦精一区二区三区| 欧美一区二三区| 999精品在线视频| 亚洲v天堂v手机在线| 宅男在线国产精品| 国产xxxxx在线观看| 久操视频在线播放| 国产三级精品在线| 粉嫩精品一区二区三区在线观看 | 欧美日韩精品系列| 人妻少妇精品久久| 日本中文字幕电影在线免费观看 | 欧美亚洲专区| 欧美成人性色生活仑片| 国产成人一区二区在线观看| 福利在线一区| 欧美一区二区三区不卡| 国产精品无码一本二本三本色| 在线观看h网| 中文字幕欧美区| 久久99精品久久久久久久久久 | 成人av中文字幕| 国产在线观看91精品一区| 成人在线免费看视频| 好吊日精品视频| 不卡伊人av在线播放| 国产第一页精品| 国产一区二区三区网| 日韩经典一区二区三区| 丰满熟女人妻一区二区三区| 青青在线精品| 欧美三级韩国三级日本一级| 国产在线青青草| caoporn视频在线| 亚洲一区在线播放| 97在线免费视频观看| a在线免费观看| 成人欧美一区二区三区小说| 亚洲精品一区二区三区蜜桃久| 国产专区在线| 国产喷白浆一区二区三区| 蜜桃久久影院| 国产中文在线观看| 国产三级精品三级| 亚洲视频导航| 欧洲日本在线| 亚洲视频一区在线观看| 亚洲AV无码成人精品一区| 久做在线视频免费观看| 亚洲欧美激情视频在线观看一区二区三区 | 怡红院成永久免费人全部视频| 日韩激情一区二区| 国产精品久久久久99| 中文字幕在线观看高清| 精一区二区三区| 91在线精品视频| 国产av一区二区三区| 国产一区二区女| 91超碰在线电影| 天堂在线视频免费观看| 久久综合精品国产一区二区三区| 欧美中文娱乐网| av电影在线观看网址| 国产精品美女久久久久久| 国产精品无码乱伦| 青草在线视频| 精品成人国产在线观看男人呻吟| 欧美一级黄色片视频| 亚洲精品.com| 欧美一级国产精品| a级一a一级在线观看| 久久99国产精一区二区三区| 日韩一级黄色av| 欧美日韩在线视频免费播放| 亚洲日本激情| 国产精品美乳在线观看| 国产激情无套内精对白视频| 91色|porny| 亚洲精品一卡二卡三卡四卡| 色呦呦在线看| 色欧美日韩亚洲| 特级西西444www| 欧美黑人做爰爽爽爽| 亚洲人成五月天| 黄色录像免费观看| 国产日本精品| 成人久久一区二区| 污污网站在线免费观看| 国产精品乱码久久久久久| 777av视频| 青草综合视频| 亚洲欧美日本另类| 中文字幕另类日韩欧美亚洲嫩草| 国产精品美女久久久浪潮软件| 国产日韩在线视频| 欧美理论在线观看| 亚洲综合清纯丝袜自拍| www.涩涩涩| 欧美激情影院| 美女少妇精品视频| 波多野结衣视频在线观看| 风间由美性色一区二区三区| 日韩区国产区| 午夜伦理福利在线| 精品毛片乱码1区2区3区| 欧美日韩国产黄色| 国产亚洲一区在线| 91精品免费| 天天综合视频在线观看| 欧美日韩一区二区免费在线观看| 在线观看中文av| 日韩激情在线| 日韩免费高清在线观看| 三级视频在线看| 一区二区在线观看免费| 在线观看免费不卡av| 国产欧美日韩影院| 57pao精品| 免费观看毛片网站| 亚洲欧美一区二区三区极速播放 | 国产精品亚洲视频| 一本色道久久综合亚洲二区三区| 亚洲精品日产| 亚洲精品videossex少妇| 青青草精品在线视频| 久久国产精品露脸对白| 日韩欧美精品一区二区| 美女福利一区二区| 亚洲精品视频网上网址在线观看 | 制服诱惑一区二区| 国产98在线|日韩| 最新国产在线拍揄自揄视频| 欧美精品aⅴ在线视频| 国产馆在线观看| 免费不卡在线视频| 亚洲一区二区精品在线| 精品女同一区二区三区在线观看| 亚洲天堂成人在线| 精产国品一区二区| 国产亚洲精品久| 999精品视频在线| 成人羞羞视频在线看网址| 国产精品高潮呻吟久久av野狼 | jizz欧美激情18| av亚洲免费| 国产欧美在线观看| 国产黄色小视频在线| 日韩午夜激情视频| 国产在线观看你懂的| 不卡的av中国片| 国产免费一区二区三区视频| 亚洲精华一区二区三区| 日本国产精品视频| 成人动漫在线播放| 91精品欧美久久久久久动漫| 欧美日韩大片在线观看| a美女胸又www黄视频久久| 怡红院av亚洲一区二区三区h| 在线日本制服中文欧美| 国产精品久久久久久久久久小说| 色三级在线观看| 日韩一区二区三区免费观看| 久久机热这里只有精品| 成人av在线一区二区三区| 久久9精品区-无套内射无码| 日本道不卡免费一区| 51国偷自产一区二区三区| av中文字幕电影在线看| 亚洲欧美中文日韩在线v日本| 在线观看亚洲一区二区| 一级精品视频在线观看宜春院 | 一区二区三区欧美日| 在线看黄色的网站| 秋霞成人午夜伦在线观看| 四虎4hu永久免费入口| 婷婷亚洲精品| 91牛牛免费视频| 久草免费福利在线| 国产波霸爆乳一区二区| 国产精品99久久久久久久vr| 欧美 丝袜 自拍 制服 另类 | 亚洲精品欧美二区三区中文字幕| av在线网址导航| 在线免费观看欧美| 亚洲精品一区二| 久久亚洲黄色| 国产日韩在线一区| 特黄毛片在线观看| 久久视频在线播放| 美国成人毛片| 精品免费国产二区三区| 中文字幕av影视| 偷拍一区二区三区四区| 黑人操日本美女| 久久精品一区八戒影视| 香蕉视频在线观看黄| 三级久久三级久久| 福利视频一二区| 亚洲精品国产成人影院| 久久久久久久久久久久久久久久av| 99热这里有精品| 国产精品av在线播放| 第一福利在线视频| 久久在线观看视频| 91网在线播放| 亚洲性夜色噜噜噜7777| 香蕉国产在线视频| 精品美女一区二区| 国产熟女一区二区丰满| 欧美午夜精品电影| 日韩在线视频不卡| 午夜成人免费电影| 免费一级黄色大片| 亚洲麻豆国产自偷在线| 亚洲色图日韩精品| 国产欧美精品一区二区三区四区 | 蜜桃在线一区二区| 欧美一区二区黄| 911美女片黄在线观看游戏| 一本大道久久a久久精二百| 精品一区二区三区四| 亚洲精品福利视频网站| 精品国产视频一区二区三区| 中文字幕av免费专区久久| 中文幕无线码中文字蜜桃| 成人精品国产免费网站| youjizz.com日本| 国产成人自拍网| 日本黄色www| 国产精品资源在线看| 日本77777| 久久99蜜桃精品| 特黄视频免费观看| 韩国成人精品a∨在线观看| 男人的天堂最新网址| 蜜桃视频第一区免费观看| 国产精品视频黄色| 日本美女一区二区| 蜜臀一区二区三区精品免费视频| 蜜臀99久久精品久久久久久软件| www.色偷偷.com| 美日韩一区二区三区| 久久国产这里只有精品| 久久99国产精品尤物| 国产精欧美一区二区三区白种人| 国内精品视频一区二区三区八戒| 欧美一级小视频| 国产精品888| 国产激情视频网站| 久久网站最新地址| аⅴ天堂中文在线网| 国产精品精品国产色婷婷| 天天综合天天做| 亚洲一区二区三区小说| 亚洲精品1区2区3区| 色综合久久综合网欧美综合网 | 欧美一区二区黄| 免费观看的毛片| 亚洲天堂一区二区三区| 欧美激情黑人| 欧美黑人性猛交| 欧美极品videos大乳护士| 国产精品极品美女粉嫩高清在线| 老司机精品视频网| av一区二区在线看| 最新亚洲精品| 久久av喷吹av高潮av| 狠狠色丁香久久综合频道| 免费无码av片在线观看| 老鸭窝一区二区久久精品| 白丝校花扒腿让我c| 久久色.com| 男女性高潮免费网站| 图片区小说区区亚洲影院| 亚洲无码精品在线观看| 精品国产电影一区二区| 国产视频网址在线| 色综合91久久精品中文字幕 | 男人舔女人下部高潮全视频| 亚洲欧洲性图库| 日本一区二区三区四区五区| 欧洲国内综合视频| 亚洲奶汁xxxx哺乳期| 亚洲最新av在线网站| 第一av在线| 91精品久久久久久久久不口人| 欧美黑人巨大videos精品| 中国一区二区三区| 夜久久久久久| 女王人厕视频2ⅴk| 中文字幕电影一区| 日本在线免费观看| 欧美肥胖老妇做爰| 男人天堂网在线观看| 欧美国产日韩视频| 欧美极品在线| 欧美一区国产一区| 亚洲人成免费| 潘金莲一级淫片aaaaa| 中文字幕精品三区| 黄色av网站免费观看| 亚洲国产又黄又爽女人高潮的| 欧美成人视屏| 国产精品91久久| 麻豆精品少妇| 欧美日韩中文字幕在线播放| 蜜臀久久99精品久久久久久9| 久久性爱视频网站| 亚洲精品日日夜夜| 国产一区二区三区视频免费观看| 亚洲欧洲免费视频| 美女高潮视频在线看| 成人欧美一区二区三区视频xxx| 日韩精品四区| 久久久精品麻豆| 国产日韩欧美a| 一级片视频在线观看| 亚洲精品成a人在线观看| 欧洲黄色一区| 97人人澡人人爽| 综合精品一区| 亚洲视频在线不卡| 亚洲视频你懂的| 国产毛片一区二区三区va在线 | 波多野结衣在线播放| 成人欧美一区二区| 影音先锋日韩资源| 91传媒理伦片在线观看| 亚洲午夜精品久久久久久久久| 午夜精品久久久久久久99| 欧美美最猛性xxxxxx| 日韩一区二区三区色| 波多野结衣与黑人| 国产高清久久久| 国产第一页第二页| 亚洲国产精品久久久久秋霞不卡| 变态调教一区二区三区| 国内一区二区三区在线视频| 亚洲三级观看| 亚洲欧美色图视频| 91国偷自产一区二区三区成为亚洲经典 | 99精品欧美一区二区三区综合在线| 久久精品国产亚洲AV无码男同| 精品国产乱码久久久久久免费| 超碰97免费在线| 久久艳妇乳肉豪妇荡乳av| 久久久人人人| 亚洲一二三四视频| 欧美一区二区高清| av2020不卡| 欧美三级网色| 激情六月婷婷久久| 国产小视频在线看| 亚洲另类欧美自拍| 久久国产三级| 成人小视频在线观看免费| av在线播放成人| 免费一级a毛片| 久久在线精品视频| 欧美a大片欧美片| 国产 porn| 亚洲欧美另类小说视频| 天天综合网天天综合| 国产精品欧美日韩| 狠狠色丁香久久综合频道| 国产在线观看h| 911国产精品| 牛牛精品一区二区| 婷婷久久伊人| 国产+成+人+亚洲欧洲自线| av图片在线观看| 久久久精品在线| 日韩极品少妇| 久久久久久综合网| 福利一区福利二区微拍刺激| 在线视频1区2区| 国产精品亚洲综合| 人人超碰91尤物精品国产| 男女性高潮免费网站| 亚洲欧美一区二区激情| 激情综合五月| 熟妇人妻无乱码中文字幕真矢织江| 成人欧美一区二区三区1314| 神马电影在线观看| 99久久精品免费看国产一区二区三区 | 爱情岛论坛亚洲首页入口章节| 亚洲一区二区在线免费看| av网在线观看| 精品日韩电影|