什麼是Serverless無伺服器架構?

五柳-先生發表於2016-06-21

Serverless不代表再也不需要伺服器了,而是說:開發者再也不用過多考慮伺服器的問題,計算資源作為服務而不是伺服器的概念出現。Serverless是一種構建和管理基於微服務架構的完整流程,允許你在服務部署級別而不是伺服器部署級別來管理你的應用部署,你甚至可以管理某個具體功能或埠的部署,這就能讓開發者快速迭代,更快速地開發軟體。

  以亞馬遜的AWS Lambda為案例,Lambda能讓不用思考任何伺服器,也就是說,不用你處理伺服器上的部署、伺服器容量和伺服器的擴充套件和失敗容錯,還有伺服器上選擇什麼OS作業系統,語言的更新,日誌等等問題。你的應用程式只需要和多個第三方的API或服務打交道,也可以自我建立一個無伺服器的API。

  Serverless有以下幾個特點:

  1. Serverless意味無維護,Serverless不代表完全去除伺服器,而是代表去除有關對伺服器執行狀態的關心和擔心,它們是否在工作,應用是否跑起來正常執行等等。Serverless代表的是你不要關心運營維護問題。有了Serverless,可以幾乎無需Devops了。

  2. Serverless不代表某個具體技術,有些人會給他們的語言框架取名為Serverless,Serverless其實去除維護的擔心,如果你瞭解某個具體伺服器技術當然有幫助,但不是必須的。

  3. Serverless中的服務或功能代表的只是微功能或微服務,Serverless是思維方式的轉變,從過去:“構建一個框架執行在一臺伺服器上,對多個事件進行響應。”變為:“構建或使用一個微服務或微功能來響應一個事件。”,你可以使用 django or node.js 和express等實現,但是serverless本身超越這些框架概念。框架變得也不那麼重要了。

  Serverless規模擴充套件性方面由於充分利用雲端計算的特點,因此其擴充套件是平滑的,同時由於Serverless是基於微服務的,而一些微功能微服務的雲端計算是零收費,這樣有助於降低整體運營費用。

  將來下述具體應用將可能使用Serverless架構:

  • 物聯網Iot或家庭自動框架或專案 (使用 AWS IoT)
轉載:http://www.jdon.com/soa/serverless.html

相關文章