云原生應用是專門從頭開始設計的,能夠充分利用云技術的彈性和分布式特性。為了更好地了解什么是云原生應用,需要先了解非云原生應用,即傳統的單體式應用。

單體式應用是作為單個單元運行的,通常每個應用都有其自定義構建的操作系統、中間件和語言棧。大多數腳本和流程也是專為構建、測試和部署用途而構建的。總體而言,這種應用架構會產生緊密的依賴關系,這樣,隨著系統規模不斷擴大,更改、測試、部署和運行系統的難度也會更大。這些最初簡單的設計和部署很快就會變得復雜,且難以發展,運行起來也有難度。
相比之下,由于云原生應用充分利用了現代基礎架構的動態分布式特性,可以實現更高的速度、敏捷性、可伸縮性、可靠性和成本效益。
通過使用一些技術和方法(即 DevOps、持續交付和持續集成、容器、微服務和聲明式 API),云原生應用通常被分解為多個獨立的服務。這使得相關團隊可以獨立地部署和擴縮各個組件,因此他們可以在不中斷任何服務的情況下不間斷地進行更新、修復問題和交付新功能。




