天天看點

【分布式】什麼是雲原生

前言

本文摘自:​​什麼是雲原生?這回終于有人講明白了 -https://zhuanlan.zhihu.com/p/150190166​​

概念熟悉

什麼是雲原生

雲原生是一種建構和運作應用程式的方法,是一套技術體系和方法論。

雲原生(CloudNative),Cloud+Native。Cloud表示應用程式位于雲中,Native表示應用程式從設計之初即考慮到雲的環境,原生為雲而設計,在雲上以最佳姿勢運作,充分利用和發揮雲平台的彈性+分布式優勢。

雲原生4個要點概述

雲原生概括為4個要點:DevOps+持續傳遞+微服務+容器。

【分布式】什麼是雲原生

雲原生架構的應用程式

總而言之,符合雲原生架構的應用程式應該是:采用開源堆棧(K8S+Docker)進行容器化,基于微服務架構提高靈活性和可維護性,借助靈活方法、DevOps支援持續疊代和運維自動化,利用雲平台設施實作彈性伸縮、動态排程、優化資源使用率。

雲原生建構應用簡便快捷,部署應用輕松自如、運作應用按需伸縮。優點不一而足,缺點微乎其微;秒殺傳統Web架構,吊打祖傳IT模式,實在是保命**、評優晉級不可多得的終極絕密武器。

概念深入

雲原生4個要點詳細說明

微服務:幾乎每個雲原生的定義都包含微服務,跟微服務相對的是單體應用,微服務有理論基礎,那就是康威定律,指導服務怎麼切分,很玄乎,凡是能稱為理論定律的都簡單明白不了,不然就忒沒b格,大概意思是組織架構決定産品形态,不知道跟馬克思的生産關系影響生産力有無關系。

微服務架構的好處就是按function切了之後,服務解耦,内聚更強,變更更易;另一個劃分服務的技巧據說是依據DDD來搞。

容器化:Docker是應用最為廣泛的容器引擎,在思科谷歌等公司的基礎設施中大量使用,是基于LXC技術搞的,容器化為微服務提供實施保障,起到應用隔離作用,K8S是容器編排系統,用于容器管理,容器間的負載均衡,谷歌搞的,Docker和K8S都采用Go編寫,都是好東西。

繼續閱讀