企業如何選擇合適的雲應用開發平台?
問題:哪個雲平台是應用程序開發工作的最佳選擇? 答案:這取決於它是PaaS,還是AWS Lambda。
如果你不希望維護自己的應用基礎設施,而且你正在專注於雲應用開發平台,可能會麵臨一個平台即服務選擇(如Heroku或Cloud Foundry)的困境,以及像Amazon Web Services(AWS)Lambda這樣的無服務器平台。但這兩個選項有何不同呢? 讓我們來看看。
基本計算單元:對於PaaS,計算的基本單位是應用程序本身,你仍然需要配置實例,盡管這些實例的維護由PaaS平台負責; 對於Lambda,操作的基本單元是功能或任務。有一些實例運行在幕後,但作為一個應用開發人員,他們是不可見的。
任務期限:在雲應用開發平台的世界中,PaaS適用於長時間運行的應用程序,無論任務是否正在運行。Lambda用於在任務結束時具有確定終點的短期任務上。
必需的元數據:使用PaaS以及代碼,你需要指定其他元數據,如語言、框架和運行時要求。而無服務器,所需的元數據要簡單得多。例如,對於AWS Lambda,你隻需要指定身份和訪問管理角色、所需的RAM和超時間隔。對於雲應用開發平台,無服務器更簡單,而PaaS對基礎設施提供了更多的控製性和靈活性。
通過RESTful API進行公共訪問:PaaS應用程序的代碼通過REST端點或網頁來公開。而Lambda功能隻能從受信任的來源訪問,卻無法從公共互聯網訪問。
定價模式:使用PaaS,你可以為應用程序使用的計算資源或實例付費。使用Lambda,你隻需對在應用程序中執行的成功的功能或任務付費。如果你的應用程序具有不可預知的或短期的工作負載,這可能會有很大的節省。
結論
PaaS和無服務器平台相似,它們都抽象出底層基礎架構,並讓你管理應用程序的代碼。但它們的運作方式不同。如果你的應用程序運行時間長,你需要對基礎架構進行一些控製,並且希望采用更一致的支出模式,可以選擇PaaS作為雲應用開發平台。 如果你願意為每個任務付費,因為你擁有的是短期和不定期的任務,且希望完全無障礙地管理基礎設施,那麼可以選擇像AWS Lambda這樣的無服務器作為雲應用開發平台。
本文轉自d1net(轉載)
最後更新:2017-08-13 22:39:10