a级片网址,www.一级毛片,日批国产,中文字幕日韩精品有码视频,黄色毛片免费网站,久久久精品午夜免费不卡,天堂福利视频

您當(dāng)前的位置是:  首頁(yè) > 資訊 > 文章精選 >
 首頁(yè) > 資訊 > 文章精選 >

同志,云原生了解一下?

2019-07-17 09:56:12   作者:   來源:阿里技術(shù)   評(píng)論:0  點(diǎn)擊:


  阿里妹導(dǎo)讀:伴隨云計(jì)算的滾滾浪潮,云原生(CloudNative)的概念應(yīng)運(yùn)而生,云原生很火,火得一塌糊涂,都9102年了,作為技術(shù)人,如果你還不懂云原生,那真的 out 了。大家言必稱云原生,上網(wǎng)搜索云原生,卻沒有統(tǒng)一的解釋,今天,阿里巴巴高級(jí)技術(shù)專家醬油(花名)帶你一探究竟。
  揭秘阿里巴巴云原生路上的探索與實(shí)踐,《阿里巴巴云原生實(shí)踐 15 講》免費(fèi)下載啦!本書整合了阿里九年云原生技術(shù)沉淀,分析真實(shí)的技術(shù)案例,把自我成長(zhǎng)和專業(yè)精進(jìn)的技術(shù)養(yǎng)料回饋給廣大云原生開發(fā)者。點(diǎn)擊下方按鈕,立刻下載!
  盡管隨處可聞云原生,卻鮮少有人告訴你到底什么是云原生,若是找資料來看,讀完大多會(huì)感覺云繚霧繞,一知半解,總之虛得很,甚至?xí)屇阋欢葢岩勺约旱闹巧蹋贿^我對(duì)于讀不懂的文章,一律歸因于文章寫得不夠直白,當(dāng)然這不一定是事實(shí),但這樣的思考方式能讓我避免陷入自我懷疑的負(fù)面情緒。
  
  云原生之所以解釋不清楚,是因?yàn)樵圃鷽]有確切的定義,云原生一直在發(fā)展變化之中,解釋權(quán)不歸某個(gè)人或組織所有。
  技術(shù)的變革,一定是思想先行。
  何謂云原生?
  云原生是一種構(gòu)建和運(yùn)行應(yīng)用程序的方法,是一套技術(shù)體系和方法論。云原生(CloudNative)是一個(gè)組合詞,Cloud+Native。Cloud 表示應(yīng)用程序位于云中,而不是傳統(tǒng)的數(shù)據(jù)中心;Native 表示應(yīng)用程序從設(shè)計(jì)之初即考慮到云的環(huán)境,原生為云而設(shè)計(jì),在云上以最佳姿勢(shì)運(yùn)行,充分利用和發(fā)揮云平臺(tái)的彈性+分布式優(yōu)勢(shì)。
  Pivotal 公司的 Matt Stine 于2013年首次提出云原生(CloudNative)的概念;2015年,云原生剛推廣時(shí),Matt Stine 在《遷移到云原生架構(gòu)》一書中定義了符合云原生架構(gòu)的幾個(gè)特征:12因素、微服務(wù)、自敏捷架構(gòu)、基于 API 協(xié)作、扛脆弱性;到了2017年,Matt Stine 改了口風(fēng),將云原生架構(gòu)歸納為模塊化、可觀察、可部署、可測(cè)試、可替換、可處理6特質(zhì);而 Pivotal 最新官網(wǎng)對(duì)云原生概括為4個(gè)要點(diǎn):DevOps+持續(xù)交付+微服務(wù)+容器。
  2015年云原生計(jì)算基金會(huì)(CNCF)成立,CNCF 摻和進(jìn)來后,最初把云原生定義為包括:容器化封裝+自動(dòng)化管理+面向微服務(wù);到了2018年,CNCF 又更新了云原生的定義,把服務(wù)網(wǎng)格(Service Mesh)和聲明式 API 給加了進(jìn)來。
  可見,不同的人和組織對(duì)云原生有不同的定義,相同的人和組織在不同時(shí)間點(diǎn)對(duì)云原生也有不同的定義,我的應(yīng)對(duì)很簡(jiǎn)單,選一個(gè)我最容易記住和理解的定義:DevOps+持續(xù)交付+微服務(wù)+容器。
  總而言之,符合云原生架構(gòu)的應(yīng)用程序應(yīng)該是:采用開源堆棧(K8S+Docker)進(jìn)行容器化,基于微服務(wù)架構(gòu)提高靈活性和可維護(hù)性,借助敏捷方法、DevOps支持持續(xù)迭代和運(yùn)維自動(dòng)化,利用云平臺(tái)設(shè)施實(shí)現(xiàn)彈性伸縮、動(dòng)態(tài)調(diào)度、優(yōu)化資源利用率。
  云原生構(gòu)建應(yīng)用簡(jiǎn)便快捷,部署應(yīng)用輕松自如、運(yùn)行應(yīng)用按需伸縮。優(yōu)點(diǎn)不一而足,缺點(diǎn)微乎其微,秒殺傳統(tǒng) Web 框架,吊打祖?zhèn)?IT 模式,實(shí)在是保命或評(píng)優(yōu)晉級(jí)的不可多得的終極絕密武器。
  云原生的四要素
  微服務(wù)
  幾乎每個(gè)云原生的定義都包含微服務(wù),跟微服務(wù)相對(duì)的是單體應(yīng)用,微服務(wù)有理論基礎(chǔ),那就是康威定律,指導(dǎo)服務(wù)怎么切分,很玄乎,凡是能稱為理論定律的都簡(jiǎn)單明白不了,定律的大概意思是組織架構(gòu)決定產(chǎn)品形態(tài),不知道跟馬克思的生產(chǎn)關(guān)系影響生產(chǎn)力有無關(guān)系。
  微服務(wù)架構(gòu)的好處就是按 function 切了之后,服務(wù)解耦,內(nèi)聚更強(qiáng),變更更易;另一個(gè)劃分服務(wù)的技巧據(jù)說是依據(jù) DDD 來搞,不過鄙人對(duì) DDD 知之甚少。
  容器化
  Docker 是應(yīng)用最為廣泛的容器引擎,在思科、谷歌等公司的基礎(chǔ)設(shè)施中大量使用,是基于 LXC 技術(shù)搞的,容器也是一個(gè)進(jìn)程,容器化為微服務(wù)提供實(shí)施保障,起到應(yīng)用隔離作用;K8S 是容器編排系統(tǒng),用于容器管理,容器間的負(fù)載均衡,谷歌搞的,Docker 和 K8S 都采用 Go 編寫,都是好東西,你值得擁有。
  DevOps
  這是個(gè)組合詞,Dev+Ops,就是開發(fā)和運(yùn)維合體,不像開發(fā)和產(chǎn)品,經(jīng)常刀劍相見,實(shí)際上 DevOps 應(yīng)該還包括測(cè)試,DevOps 是一個(gè)敏捷思維,是一個(gè)溝通文化,也是組織形式,為云原生提供持續(xù)交付能力。
  持續(xù)交付
  持續(xù)交付是不誤時(shí)開發(fā),不停機(jī)更新,小步快跑,反傳統(tǒng)瀑布式開發(fā)模型,這要求開發(fā)版本和穩(wěn)定版本并存,其實(shí)需要很多流程和工具支撐。
  如何云原生?
  首先,云原生借了云計(jì)算的東風(fēng),沒有云計(jì)算,自然沒有云原生,云計(jì)算是云原生的基礎(chǔ)。
  隨著虛擬化技術(shù)的成熟和分布式框架的普及,在容器技術(shù)、可持續(xù)交付、編排系統(tǒng)等開源社區(qū)的推動(dòng)下,以及微服務(wù)等開發(fā)理念的帶動(dòng)下,應(yīng)用上云已經(jīng)是不可逆轉(zhuǎn)的趨勢(shì)。
  云計(jì)算的3層劃分,即基礎(chǔ)設(shè)施即服務(wù)(IaaS)、平臺(tái)即服務(wù)(PaaS)、軟件即服務(wù)(SaaS)為云原生提供了技術(shù)基礎(chǔ)和方向指引,真正的云化不僅僅是基礎(chǔ)設(shè)施和平臺(tái)的變化,應(yīng)用也需要做出改變,擯棄傳統(tǒng)的土方法,在架構(gòu)設(shè)計(jì)、開發(fā)方式、部署維護(hù)等各個(gè)階段和方面都基于云的特點(diǎn),重新設(shè)計(jì),從而建設(shè)全新的云化的應(yīng)用,即云原生應(yīng)用。
  1. 本地部署的傳統(tǒng)應(yīng)用往往采用 c/c++、企業(yè)級(jí) java 編寫,而云原生應(yīng)用則需要用以網(wǎng)絡(luò)為中心的 go、node.js 等新興語言編寫。
  2. 本地部署的傳統(tǒng)應(yīng)用可能需要停機(jī)更新,而云原生應(yīng)用應(yīng)該始終是最新的,需要支持頻繁變更,持續(xù)交付,藍(lán)綠部署。
  3. 本地部署的傳統(tǒng)應(yīng)用無法動(dòng)態(tài)擴(kuò)展,往往需要冗余資源以抵抗流量高峰,而云原生應(yīng)用利用云的彈性自動(dòng)伸縮,通過共享降本增效。
  4. 本地部署的傳統(tǒng)應(yīng)用對(duì)網(wǎng)絡(luò)資源,比如 ip、端口等有依賴,甚至是硬編碼,而云原生應(yīng)用對(duì)網(wǎng)絡(luò)和存儲(chǔ)都沒有這種限制。
  5. 本地部署的傳統(tǒng)應(yīng)用通常人肉部署手工運(yùn)維,而云原生應(yīng)用這一切都是自動(dòng)化的。
  6. 本地部署的傳統(tǒng)應(yīng)用通常依賴系統(tǒng)環(huán)境,而云原生應(yīng)用不會(huì)硬連接到任何系統(tǒng)環(huán)境,而是依賴抽象的基礎(chǔ)架構(gòu),從而獲得良好移植性。
  7. 本地部署的傳統(tǒng)應(yīng)用有些是單體(巨石)應(yīng)用,或者強(qiáng)依賴,而基于微服務(wù)架構(gòu)的云原生應(yīng)用,縱向劃分服務(wù),模塊化更合理。
  可見,要轉(zhuǎn)向云原生應(yīng)用需要以新的云原生方法開展工作,云原生包括很多方面:基礎(chǔ)架構(gòu)服務(wù)、虛擬化、容器化、容器編排、微服務(wù)。幸運(yùn)的是,開源社區(qū)在云原生應(yīng)用方面做出了大量卓有成效的工作,很多開源的框架和設(shè)施可以通過拿來主義直接用,2013年 Docker 推出并很快成為容器事實(shí)標(biāo)準(zhǔn),隨后圍繞容器編排的混戰(zhàn)中,2017年誕生的 k8s 很快脫穎而出,而這些技術(shù)極大的降低了開發(fā)云原生應(yīng)用的技術(shù)門檻。
 
  雖說云原生的推介文檔有引導(dǎo)之嫌,但面對(duì)它列舉的優(yōu)點(diǎn),作為杠精的我亦是無可辯駁。這么說的話,云原生也忒好了吧,應(yīng)用是不是要立刻馬上分分鐘切換到云原生架構(gòu)?我的觀點(diǎn)是:理想很豐滿,現(xiàn)實(shí)很骨感,需從應(yīng)用的實(shí)際需要出發(fā),目前的問題是否真的影響到業(yè)務(wù)發(fā)展?而推倒重來的代價(jià)能否承受得來?我曾經(jīng)經(jīng)歷過游戲團(tuán)隊(duì)要把帶狀態(tài)的游戲服務(wù)器用微服務(wù)思路去做,折騰得死去活來最后以失敗告終。
  技術(shù)的趨勢(shì)和影響
  軟件設(shè)計(jì)有兩個(gè)關(guān)鍵目標(biāo):高內(nèi)聚、低耦合,圍繞這2個(gè)核心目標(biāo),又提出了單一職責(zé)、開閉原則、里氏替換、依賴倒置、接口隔離、最少知識(shí)等設(shè)計(jì)原則。
  軟件工程師一直都在為這兩個(gè)目標(biāo)而努力奮斗,以求把軟件編寫得更加清晰、更加健壯、更加易于擴(kuò)展和維護(hù)。
  但后來,人們發(fā)現(xiàn)有更多的訴求,希望開發(fā)軟件變得更簡(jiǎn)單、更快捷,程序員希望更少編寫代碼,非專業(yè)人員也希望能開發(fā)程序,于是,更多更傻瓜式的編程語言被發(fā)明出來,更多的編程技術(shù)(組件)和編程思想(復(fù)用)被發(fā)明出來,比如庫(kù)、組件、云基礎(chǔ)設(shè)施。
  于是很多技術(shù)變成了屠龍之技,比如匯編,時(shí)代變了,然后很多軟件工程師搖身一變成了調(diào)參工程師、Call API 專家、用庫(kù)包能手、拼組件達(dá)人,這是效率分工的結(jié)果,也是技術(shù)發(fā)展的使然。
  縱觀近二十年的科技互聯(lián)網(wǎng)發(fā)展歷程,大的趨勢(shì)是技術(shù)下沉,特別是近些年,隨著云計(jì)算的發(fā)展和普及,基礎(chǔ)設(shè)施越來越厚實(shí),業(yè)務(wù)開發(fā)變得越來越容易,也越來越?jīng)]有技術(shù)含量,而之前困擾小團(tuán)隊(duì)的性能、負(fù)載、安全性、擴(kuò)展性問題都不復(fù)存在,這不禁讓互聯(lián)網(wǎng)行業(yè)的油膩大叔們噤若寒蟬,仿佛分分鐘就要被卷入歷史洪流而萬劫不復(fù)。
  雖然不可否認(rèn)技術(shù)的重要性在降低,但也還不至于那么悲觀。遙想 PC 時(shí)代,當(dāng)VB、Delphi、MFC 出現(xiàn)的時(shí)候,也有類似論調(diào),所見即所得,點(diǎn)點(diǎn)鼠標(biāo),就可以開發(fā) PC 桌面程序,有沒有很高端?那時(shí)候工程師的擔(dān)心相比現(xiàn)在恐怕是只多不少吧,但后來隨著互聯(lián)網(wǎng)興起,出現(xiàn)了后端開發(fā)這個(gè)工種,工程師很快找到了新的戰(zhàn)場(chǎng):網(wǎng)絡(luò)、分布式、數(shù)據(jù)庫(kù)、海量服務(wù)、容錯(cuò)容災(zāi),于是又不亦樂乎地玩出一堆新花樣。
  留一個(gè)話題僅供探討:如果說 PC 時(shí)代的基礎(chǔ)設(shè)施是控件庫(kù),互聯(lián)網(wǎng)時(shí)代的基礎(chǔ)設(shè)施是云,那 AI 時(shí)代基礎(chǔ)設(shè)施是什么?又會(huì)有什么高端玩法和變化?
  阿里ACE開發(fā)者社群,為開發(fā)者提供本地化的學(xué)習(xí)、交流平臺(tái)。現(xiàn)在,招募11大技術(shù)領(lǐng)域開發(fā)者,獨(dú)家技術(shù)資料包群內(nèi)領(lǐng)取,點(diǎn)擊:https://developer.aliyun.com/article/706511?spm=5176.8068049.0.0.7f0d6d19stOVlK,立即加入。
【免責(zé)聲明】本文僅代表作者本人觀點(diǎn),與CTI論壇無關(guān)。CTI論壇對(duì)文中陳述、觀點(diǎn)判斷保持中立,不對(duì)所包含內(nèi)容的準(zhǔn)確性、可靠性或完整性提供任何明示或暗示的保證。請(qǐng)讀者僅作參考,并請(qǐng)自行承擔(dān)全部責(zé)任。

相關(guān)熱詞搜索: 云原生

上一篇:收集客戶反饋的5個(gè)好處

下一篇:最后一頁(yè)

相關(guān)閱讀:

專題

CTI論壇會(huì)員企業(yè)

安庆市| 高平市| 济南市| 朝阳区| 景洪市| 车致| 石楼县| 丰镇市| 辰溪县| 诏安县| 临城县| 南溪县| 崇明县| 尖扎县| 夏邑县| 曲松县| 文水县| 安乡县| 周宁县| 庆元县| 常德市| 社旗县| 千阳县| 陵川县| 齐河县| 长武县| 陇川县| 米林县| 海兴县| 环江| 荆门市| 新绛县| 石城县| 教育| 汝南县| 绵阳市| 博罗县| 三穗县| 织金县| 石嘴山市| 桃园市|