首頁 > 基礎設施 > 正文

內部部署的無服務器完全可以打敗基于云的無服務器

2019-04-26 11:08:19  來源:開源云中文社區

摘要:當大多數人談論無服務器架構時,首先想到的是基于云的服務,例如Lambda。在云端,無服務器允許你使用經濟高效的支付模式按需運行幾乎無限數量的功能。
關鍵詞: 服務器
  當大多數人談論無服務器架構時,首先想到的是基于云的服務,例如Lambda。在云端,無服務器允許你使用經濟高效的支付模式按需運行幾乎無限數量的功能。
 
\
 
  但是,并非所有無服務器框架都在云中。有一些可以在內部部署,例如OpenWhisk和Fission.io所提供的。
 
  為什么要內部部署無服務器?在這么做時,你需要考慮哪些注意事項?
 
  內部部署的和基于云的無服務器的區別
 
  借助基于云的無服務器架構,應用程序代碼可部署到云提供商那里,如AWS Lambda或Microsoft Azure Functions。特定的事件,從HTTP請求到GitHub(取決于云提供商支持的內容),觸發代碼。通過這種方式,基于云的無服務器架構非常有用,因為它可以通過“按使用付費”功能降低成本。
 
  然而,對于內部部署的無服務器架構,無服務器功能托管在本地基礎設施上,而不是作為云中的托管服務運行。應用程序代碼部署到本地服務器,并被觸發運行指定的事件。
 
  對于不同的公司,內部部署無服務器可以以不同的形式提供。Platform9等云管理解決方案允許用戶在托管云之上部署托管無服務器平臺。Platform9提供了多租戶云服務架構,無需運行工作負載,允許用戶在內部運行其工作負載。OpenWhisk等開源選擇也可以在內部部署。
 
  為什么選擇內部部署?
 
  雖然不需要管理物理服務器并且具有幾乎無限的可擴展性是基于云的無服務器架構的主要吸引力,但是內部部署無服務器架構也有著一些顯著的好處。
 
  ——避免云供應商鎖定:使用基于云的無服務器,你的應用程序完全依賴于第三方供應商,這意味著你依靠該供應商的持續可用性,并要考慮它們的成本(可能會有所變化) 。變更供應商幾乎肯定會導致你的應用程序發生重大變化。而通過內部實施,工作負載在本地運行,供應商鎖定帶來的風險會降低。
 
  ——安全性:對于處理非常敏感數據的公司,基于云的解決方案可能不是最佳的。大多數服務提供商都是多租戶,這意味著它們在同一物理服務器上為不同的客戶運行軟件。即使工作負載通過虛擬工作負載或容器隔離,鄰近應用程序中的任何安全漏洞或故障都可能會對應用程序代碼的可用性和一般性能產生負面影響。在本地內部部署的服務器上運行工作負載可降低這些風險并確保數據安全。
 
  ——效率和間接成本:從長遠來看,在專用本地服務器上運行工作負載可能比在基于云的無服務器架構上執行長任務要便宜得多。此外,在間歇性運行應用程序代碼的情況下,內部部署無服務器可降低基礎設施的利用率不足(因為僅在少數服務器上運行多個應用程序更有效)。
 
  結論
 
  與基于云的替代方案相比,內部部署無服務器沒有被大肆宣傳,但這并不意味著在許多情況下它不太可行。實際上,如果你的內部IT團隊擁有構建和運行無服務器平臺的專業知識,則至少應該考慮一下內部部署。因此,當你計劃無服務器策略時,不要將自己局限于云,而是應該考慮是否可以通過選擇內部部署無服務器來獲得安全性和成本效益。

第二十八屆CIO班招生
法國布雷斯特商學院MBA班招生
法國布雷斯特商學院碩士班招生
法國布雷斯特商學院DBA班招生
責編:pingxiaoli
dnf帕拉丁