一区二区三区中文国产亚洲_另类视频区第一页_日韩精品免费视频_女人免费视频_国产综合精品久久亚洲

千鋒教育-做有情懷、有良心、有品質的職業(yè)教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > 大廠如何考慮開發(fā)環(huán)境與部署方案

大廠如何考慮開發(fā)環(huán)境與部署方案

來源:千鋒教育
發(fā)布人:wjy
時間: 2022-08-11 09:47:54 1660182474

  閱讀指南

  開發(fā)環(huán)境的追求

  部署方案的要求

  大廠環(huán)境因素

  整合環(huán)境因素,導出方案

  展望未來

  QA

  首先我們強調一點,任何公司的技術基建都是隨時間推移去不斷改進和建設的,任何純技術輸出都必然存在它的邊界。而業(yè)務拓展、組織架構變遷、新興技術迭代等都是不斷發(fā)生的,這意味著技術基建必然也是不斷改進的。

  拿整個互聯(lián)網來說,也是由“石器時代”不斷演變而來。

  而一切解決方案都是為了針對某類需求。

  開發(fā)環(huán)境的追求

  作為團隊中的開發(fā)者一員,無疑要追求美好的開發(fā)體驗,具體可以列舉為:

  高效的編譯速度

  屏蔽環(huán)境搭建與配置,專注內容開發(fā)

  團隊編碼規(guī)范的顯式約束

  編碼質量的保障

  各種運行環(huán)境的快速切換

  與對應需求的綁定與關聯(lián)

  部署方案的要求

  部署成果的質量與穩(wěn)定性保障

  部署流程的快捷

  高時效性的容災處理

  整合環(huán)境因素,導出方案

  除開以上普遍意義的需求,大廠本身的環(huán)境更是決定了解決方案的重要因素。 如阿里:

  人員方面: 項目組眾多(開發(fā)者數量多)、分內勤和外包(開發(fā)成員之間代碼力差距相對較大);

  技術方面:技術棧相對統(tǒng)一(主要是業(yè)務方面: JAVA-SpringCloud,JS-react,veex… ), 技術輸出明確劃分內網和開源。

  資源方面:有錢任性,相對寬松。

  結合以上,我們將需求映射成需要解決的問題:

  在云IDE之前的年代里(包括現在大多項目組還是使用本地編譯器), 如何統(tǒng)一開發(fā)者的開發(fā)環(huán)境和規(guī)范?如何統(tǒng)一生產變量?(即如何確保本地打包環(huán)境統(tǒng)一,不會出現不同版本依賴或者丟包等打出預期之外的包)

  說白了,這個問題可以簡化為: 如何抹平不同開發(fā)、生產環(huán)境的差異。

  做部署流程的整合,提效。

  來自阿里的答案

  拿阿里的DEF工具舉例:

  1、“研發(fā)套件”集成式腳手架

  無論哪個項目組的業(yè)務開發(fā),他們對于環(huán)境本身的配置其實大都是無感知的,以下圖為例

大廠如何考慮開發(fā)環(huán)境與部署方案786

  阿里的DEF工具,是通過對本地研發(fā)過程中進行總結收斂,抽象出初始化、編譯預覽、構建、測試、發(fā)布 這五個本地工具的通用功能節(jié)點。將原有的插件能力根據項目研發(fā)類型進行分類后,總結沉淀出每一類研發(fā)類型的標準本地工具 --研發(fā)套件。

  借助套件概念的封裝,用戶在不同項目之間研發(fā)的時候直接通過統(tǒng)一的命令,就能完成項目研發(fā)對應工具服務的啟動使用。

  門神

  在DEF中集成門神(相當于提交代碼前后的鉤子,可類比git-hooks的功能),負責團隊開發(fā)規(guī)范的約束(lint,cr,其他插件任務等)。

  云端IDE

  而在這兩年里,云IDE開始嶄露頭角,整個開發(fā)環(huán)境遷移至云端,更是直接從根本上解決了開發(fā)環(huán)境差異的問題。

大廠如何考慮開發(fā)環(huán)境與部署方案1088

大廠如何考慮開發(fā)環(huán)境與部署方案1089

  2、統(tǒng)一的研發(fā)部署平臺

大廠如何考慮開發(fā)環(huán)境與部署方案1104

  說白了就是對于不同的項目,基于它們的技術選型進行宏觀的分類,枚舉出每一種類型的最佳部署體驗,集成到一個平臺。

  讓用戶可以體驗“一鍵發(fā)布”的功能,而不用關心具體的部署細節(jié)配置。

  3、DEVOPS平臺

大廠如何考慮開發(fā)環(huán)境與部署方案1206

  比如上圖云效平臺,打通自產品需求-設計-開發(fā)-測試-發(fā)布-運維一條鏈路的流程管理平臺,高效提升效率。 關于DEVOPS的介紹這里就不再做其他贅述,不太了解的同學可以自行搜索一下。

  4、展望未來

  近年來,上云成了一種潮流,以云服務為核心擴展出的解決方案比比皆是。目前來看,云依然面向未來。 而隨著對AI領域的不斷探索,各大廠也大多有相關建樹。

  但無論如何,基建方案與規(guī)模的決定因素,永遠在于業(yè)務與環(huán)境。

  5、QA

  Q: 大廠開發(fā)時和部署時類庫的引用和存放是一致還是不同?

  A: 一般而言,我們要保障開發(fā)和生產環(huán)境的統(tǒng)一,以確保產出與預期一致。當然也有其他情況,這個要看項目本身有沒有不同的需求。 一句話,不要脫離業(yè)務講技術,更不要蓋棺定論。

  Q: 模塊是放在項目中還是放在CDN之類的服務器?

  A: 這個問題中“模塊”這個概念可能不太清晰。這里指的是前端吧,前后端分離的模式下,前端生產出的包都是靜態(tài)資源包,一般都是扔到CDN里嘛。

  Q: 渲染網頁用的是nginx還是其他動態(tài)web服務器?

  A: 還是那句話,不要脫離業(yè)務講技術,更不要蓋棺定論。舉個例子,某項目純node服務+SSR輸出網頁,本身就是一個web服務的項目何必再需要web服務器?

  Q: 會選擇自己寫模塊還是在社區(qū)里找模塊?

  A: 理論上來講,要盡可能的避免重復造輪子。在已有可信任的滿足當前需求的輪子的條件下,盡量不要自己造嘛,因為大家的工時都是很珍貴的。在保障不耽誤生產并且保障產品質量的情況下,為了能優(yōu)化項目本身,也可以自己做嘛。

  提倡做有意義的事,而不是多做事。

  PASS: 對于以上所有問題哈————無論什么技術方案,其本身都不是絕對的,技術是為了服務業(yè)務的。

  更多關于html5培訓的問題,歡迎咨詢千鋒教育在線名師,如果想要了解我們的師資、課程、項目實操的話可以點擊咨詢課程顧問,獲取試聽資格來試聽我們的課程,在線零距離接觸千鋒教育大咖名師,讓你輕松從入門到精通。

tags:
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業(yè)內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT