亞馬遜云科技 Serverless 持續進化 幫助企業應對不確定性
原創亞馬遜云科技可謂是 Serverless 的鼻祖,從 2014 年推出第一款無服務器計算服務 Amazon Lambda 后,云計算產業界就開始紛紛關注 Serverless。
亞馬遜云科技認為,Serverless是描述云服務、應用開發實踐和云原生應用架構的一種方式,能夠幫助客戶更加敏捷地構建應用程序,從而更快地創新和應對變化。
無需管理服務器,自動擴展與縮減容量,按使用量付費,更高的安全與可用性,正是 Serverless具有的這四大優勢特征,也贏得了諸多客戶的青睞。如今,全球已經有數十萬的客戶在使用亞馬遜云科技的 Serverless 服務開展業務創新。
亞馬遜云科技大中華區產品部總經理陳曉建表示,“如同云計算將客戶從復雜的物理基礎設施中解放出來一樣,亞馬遜云科技進一步通過 Serverless 將這一過程延展到了云上的虛擬基礎設施和云服務領域。我們希望客戶寫的每一行代碼都是業務邏輯,Serverless 正在讓它變為現實。過去 17 年,我們持續推進 Serverless 的發展,將 Serverless 提供的極致彈性和自動擴展能力帶給越來越多的客戶。”
打造全棧 Serverless 云服務能力
亞馬遜云科技發展 17 年來,一直持續引領 Serverless 技術創新,并且根據客戶需求豐富Serverless 服務的廣度和深度。一方面從廣度持續豐富涵蓋計算、存儲、應用集成、數據庫、數據分析等各方面的全棧 Serverless 服務;另一方面,推進現有 Serverless 計算服務的精耕細作,為客戶提供更多功能以及更高的性能。
如今,亞馬遜云科技的分析服務已全面實現 Serverless 化,包括交互式查詢服務 Amazon Athena、大數據處理服務 Amazon Managed Streaming for Apache Kafka (Amazon MSK)、實時分析服務 Amazon Kinesis 和 Amazon MSK、數據倉庫服務 Amazon Redshift、數據集成服務 Amazon Glue、商業智能服務 Amazon QuickSight 以及運營分析服務 Amazon OpenSearch Service。
在數據庫服務方面,亞馬遜云科技目前提供包括 Amazon Aurora Serverless、Amazon DynamoDB、Amazon Timestream、Amazon Keyspaces 和 Amazon Quantum Ledger Database (Amazon QLDB)六大數據庫的 Serverless 選項。
客戶在無需配置、擴展或管理底層基礎設施的情況下,即可使用亞馬遜云科技數據相關的Serverless 服務組合,構建企業端到端的數據戰略,獲得極致的高擴展性及彈性,更快地獲得數據洞察,加快業務創新。亞馬遜云科技分析服務的全部 Serverless 化,也標志著亞馬遜云科技端到端的數據能力進入 Serverless 技術創新的新范式。
Serverless 幫助企業應對不確定性
如今,我們的社會充滿了不確定性,充滿了各種風險。陳曉建認為,Serverless 是幫助企業應對不確定性的有效技術手段,亞馬遜云科技也在通過釋放 Serverless 力量,支持企業加速應用創新,更好地應對不確定性。
1.快速創新響應不可預測
Serverless 應用無需管理 API、消息隊列、存儲、數據庫,企業只需要專注于業務邏輯,將更多的精力放在業務創新上,加速應用推出時間。
2.全棧 Serverless 應對錯綜復雜的訴求
Serverless 可以消除業務不穩定起伏帶來的隱性成本,輕松應對峰值、非頻發的復雜工作負載;還可以消除數據管理系統按需擴展的復雜實施難題,無需考慮計算和存儲資源的比例,也不會出現節點讀寫狀態不一致等問題。
3.故障隔離,應對潛在風險
Amazon Lambda 融入了潛水艇隔離倉的安全理念,滿足企業級生產所需的 99.99% 高可用:執行環境在硬件虛擬化虛擬機(microVM)上運行;每個 Amazon Lambda 運行的 microVM 不會跨亞馬遜云科技賬戶共享;每個執行環境只處理一個并發調用。此外,無服務器消除了管理基礎架構的需要,企業使用無服務器架構,更多的責任例如給服務器擴容或者打補丁都是由亞馬遜云科技承擔。
實現 Serverless 的進階路徑
陳曉建表示,“大家可能沒有意識到有非常多的應用,現在都可以使用 Serverless 來實現。而且不需要花非常大的力氣去了解新服務,或是更改架構才能實現。很多客戶的場景其實也證明了這一點。”為此,亞馬遜云科技總結了企業實現 Serverless 的三大進階路徑。
進階路徑1:從遷移開始,無需代碼改造
過去,有些企業客戶并不是 Serverless 架構,但是想要通過 Serverless 技術來應對不確定因素,是否需要修改成事件驅動型架構才能使用 Amazon Lambda 呢?陳曉建表示,企業想要實現 Serverless 改造,可以使用不需要遷移代碼,不需要更改代碼的遷移路徑開始。
對于后端服務的無服務器化重構,亞馬遜云科技開發了開源工具 Lambda Web Adapter,客戶無需修改代碼,就可以將 Amazon Lambda 的 JASON 調用接口轉換成 HTTP 服務,并且可以隨意切換應用程序在 Lambda 和容器之間轉換,基于容器開發的代碼,經過鏡像打包,可以交付到 Lambda 里執行;相反基于 Lambda 開發的 Web 應用,也可以通過 web adapter 選擇采用 Lambda 還是采用容器部署和執行。
進階路徑2:擁抱事件驅動架構,靈活應對不確定性
如果企業想要有更優的 Serverless 使用方式來優化業務邏輯,就需要改用事件驅動架構。事件驅動架構(Event-Driven Architecture,EDA)是基于事件來解耦應用程序組件。由于事件之間不同的微模塊是隔離的,并且每個事件都是由事件生產者、事件路由和事件消費者組成,事件的組件間依賴性更少,因此就可以獨立部署和更新,也可以避免不同模塊之間的變化給整個系統帶來問題,同時可以最大限度降低風險,并且更加容易擴展。
Amazon S3 對象存儲服務是事件驅動架構的典范,從 2006 年的一個由 8 個獨立微服務組成的系統,如今已經進化為超過 235 個不同的微服務,并且整個過程對于用戶的服務都沒有產生任何影響。
如今,亞馬遜云科技可以幫助企業構建一個完善的、符合事件驅動架構的 Serverless 應用。亞馬遜云科技的微服務提供的事件路由的中間件,包括 Amazon Step Functions、Amazon Lambda、Amazon EventBridge;亞馬遜云科技已經有超過 200 組自己的產品和包括 40 種SaaS 的服務可以作為事件的生成者,同時還有超過 30 個 Serverless 的產品可以作為事件的消費者。
進階路徑3:Serverless First,降低應用成本
如果企業希望可以借助 Serverless 來為業務更好地創造價值,就需要考慮 Serverless First理念。Serverless First 就是在構建新的應用時首先考慮是否可以首選 Serverless 來實現。
相對于容器和有 EC2 模式,Serverless 可以以更細的顆粒度來做資源的部署,提供資源利用率,降低成本。但是,值得注意的是,容器和 Severless 并不是兩個互斥的解決方案,陳曉建表示,容器和 Serverless 面對的是不同應用、不同場景,容器面向的是持續計算的應用,而 Serverless 面向的是事件驅動的業務。據統計,80% 的亞馬遜云科技的容器服務客戶也使用了Serverless 技術。
陳曉建強調,“Serverless First 策略意味著我們能夠摒棄之前的緊耦合的單體思想,從而主動擁抱事件驅動的模式,異步的事件驅動本身就是自然世界的邏輯。經驗沒有壓縮算法,我們的全棧 Serverless 服務,是長期云服務運營經驗的結晶。我們堅信,所有的機會,都藏在進化中。所謂長期主義者,就是踏平波動,穿越周期,擁抱趨勢。”