無伺服器架構的簡單介紹
該文討論了無伺服器架構的演變,幫助你瞭解它是如何工作的以及最佳實踐和可用的框架。無伺服器架構風格挑戰了軟體設計和部署的現狀,它能實現最佳開發效率、提高系統運營和管理節省開銷。雖然它繼承了微服務架構(MSA)的基本概念,但它是當前架構模式的最前沿,實現了最低水平的硬體空閒可能。儘管它是一個顯著的進步,但是採取它以及適應它將需要一個周密的研究過程,需要精確將企業解決方案要求對映到無伺服器計算上。下面我們看看無伺服器架構的演變,最初我們是直接將軟體系統部署執行在物理機器上,但是這種部署在物理伺服器上的初始實現並不能最佳地利用底層硬體的計算能力,因為在指定時間內只能有一個作業系統例項執行。後來,認識到計算資源具有時間上的共享能力之後,在相同硬體上同時執行多個計算機(虛擬主機/雲主機)能夠在CPU和I / O操作之間來回切換。這種技術的演進導致了行業中的許多創新,最重要的是雲的誕生。此時,虛擬機器是用於部署軟體並隔離計算環境的,是一種易於管理,可擴充套件和可程式設計的單元。Linux容器技術出現在2006年左右,當時Google實現了符合Linux核心特性的控制組(control groups)。Linux容器自那時以來一直存在。然而,只有大規模的、技術上超越的企業,如谷歌才能夠用到它的規模性。在2012年,微服務架構的概念由一組軟體架構師在歐洲引入。在2013年晚些時候,Docker巧妙地填補了容器生態系統中的可訪問性,可用性和支援服務的空白,因此,容器開始變得流行起來。Linux容器開啟了一個新的視野,將大型單片系統分解成獨立的自包含服務,並以細粒度的資源利用來執行它們。為了加快這些進展, 容器叢集管理系統(如Kubernetes和Mesosphere)在同一時期開始提供端到端的容器即服務(CaaS)能力。2015年晚些時候,AWS通過引入AWS Lambda實現了另一個飛躍,這可以通過按需執行微服務進一步節省軟體部署成本,並在無負載時停止。該概念類似於節能車輛中的停止 - 啟動特徵,在停車時能夠自動熄火,自動關閉內燃機以降低燃料消耗。Serverless是如何工作的?儘管術語“無伺服器”乍一看是荒謬的,但其實際意義是基於部署軟體而不涉及基礎設施的能力。無伺服器平臺根據需要自動構建,部署和啟動服務的整個過程。使用者只需要註冊所需的業務功能及其資源需求。
這些功能可以分為兩種主要型別:由客戶端請求觸發的功能和需要由時間觸發器或事件的後臺執行的功能。通常,這種無伺服器系統可以使用具有動態路由器的容器群集管理器(CCM)來實現,該動態路由器可以按需調整容器。然而,它還需要考慮路由器的延遲,容器建立時間,語言支援,協議支援,功能介面,函式初始化時間,配置引數傳遞,提供證書檔案等問題。即使這種部署方式要求在沒有負載時停止容器,但實際上在服務請求之後很快就會終止容器,這將是昂貴的,因為在短時間間隔內可能有更多請求進入。因此,更經常地,在無伺服器計算容器中將保留預先配置的時間段以重用應付更多的請求。這就類似於PaaS平臺中的自動縮放行為。一旦服務被擴充套件,例項將被保留一定時間段以處理更多請求,而不立即終止它們。Adapting Serverless Architecture - DZone Cloud
相關文章
- 簡單介紹架構設計的原則!架構
- 微服務架構的特徵簡要介紹微服務架構特徵
- 環信伺服器簡單介紹伺服器
- html文件結構簡單介紹HTML
- 單體架構、微服務和無伺服器架構架構微服務伺服器
- SVG程式碼構成簡單介紹SVG
- jQuery建構函式簡單介紹jQuery函式
- 塔式伺服器的簡單介紹及其優點伺服器
- Orchard架構介紹架構
- OpenTelemetry架構介紹架構
- LNMP架構介紹LNMP架構
- 簡單的介紹伺服器和Ajax的應用伺服器
- Webpack 的簡單介紹Web
- Promise的簡單介紹Promise
- CFRunloopObserverRef 的簡單介紹OOPServer
- 簡單介紹常見的三種架構設計模式及其優缺點!架構設計模式
- 簡單介紹網路(伺服器)線路伺服器
- jQuery構造物件例項簡單介紹jQuery物件
- js Date()建構函式簡單介紹JS函式
- 刀鋒伺服器的簡單介紹及其優點伺服器
- 機架式伺服器的簡單介紹及其優點伺服器
- LAMP架構介紹、MYSQL介紹、安裝LAMP架構MySql
- javascript建構函式的繼承簡單介紹JavaScript函式繼承
- Maven簡單介紹——必要的Java管理與構建MavenJava
- SVG簡單介紹SVG
- HTML簡單介紹HTML
- ActiveMQ簡單介紹MQ
- HTML 簡單介紹HTML
- JavaScript 簡單介紹JavaScript
- CSS 簡單介紹CSS
- SCSS 簡單介紹CSS
- UICollectionView 簡單介紹UIView
- css簡單介紹CSS
- iOS MVC架構介紹iOSMVC架構
- ELK架構簡介架構
- SpringMvc的簡單介紹SpringMVC
- javascript的this用法簡單介紹JavaScript
- noscript的作用簡單介紹