無伺服器

建立並執行應用程式,無須擔心伺服器

什麼是無伺服器?

無伺服器是雲端原種架構,讓您能夠將更多的操作責任轉移到 AWS,進而提高您的敏捷度和創新能力。無伺服器可讓您建立和執行應用程式與服務,而無須擔心伺服器的問題。這種做法可免除基礎架構管理工作,例如伺服器或叢集佈建、修補、作業系統維護和容量佈建。您可以為幾乎任何應用程式類型或後端服務建立無伺服器應用程式,它可為您包辦執行和擴展高可用性應用程式所需的一切工作。

為何要使用無伺服器?

無伺服器可讓您以更高的敏捷度和更低的總體擁有成本建構現代化的應用程式。建立無伺服器應用程式表示開發人員可以專注在核心產品上,不用擔心在雲端或現場部署管理和操作伺服器或執行時間。這可減輕開發人員的負擔,讓他們將時間和精力花在開發可擴展且可靠的優質產品上。

無伺服器有什麼好處?

無伺服器有四項主要優勢:

無須管理伺服器

可彈性擴展

按您設定的值付費

自動化的高可用性

無須佈建或維護任何伺服器。無須安裝、維護或管理軟體或執行時間。 

您的應用程式可自動擴展,或透過切換使用單位 (例如,輸送量、記憶體) 而非個別伺服器單位來調整容量。

為一致的輸送量或執行的持續時間而支付費用,而不是按伺服器單位付費。

無伺服器提供內建的可用性和容錯能力。您不需要建構這些功能,因為執行應用程式的服務預設都已提供這些功能。

案例研究

Coca Cola

可口可樂公司是美國跨國飲料企業,他們使用 AWS Lambda 和 AWS Step Functions 建立經濟實惠的無伺服器解決方案。

閱讀部落格 »

finra logo(1)

FINRA 負責監管美國的證券經紀商,包括每日分析多達 750 億次市場活動以識別詐欺和內線交易。

閱讀其他資訊 »

iRobot

領先全球的消費機器人公司 iRobot,使用 AWS Lambda 和 AWS IoT 執行 Web 應用程式,以連接到連線 WiFi 的全新 Roomba 吸塵器。

閱讀其他資訊 »

600x400_Autodesk_Logo

Autodesk 使用 AWS Lambda 來自動化 IT 操作,最小化管理基礎設施所需的時間和成本。

閱讀其他資訊 »

AWS 無伺服器平台的功能

交付可大規模執行的無伺服器生產應用程式需要一個功能完備的平台。以下是 AWS 提供的企業級無伺服器應用程式支援:

雲端邏輯層

使用 AWS Lambda 支援商業邏輯,以做為所有相互連結的基礎設施資源和 Web API 的控制平面和邏輯層。定義、協調和執行生產級的容器化應用程式和微型服務,而不需要使用 AWS Fargate 管理任何基礎設施。 

協調和狀態管理

使用 AWS Step Functions 協調並管理無伺服器應用程式中每個分散式元件或微型服務的狀態。

回應式資料來源

從各式各樣的資料來源和提供者選擇可使用的項目,以即時處理資料或觸發事件。如需回應式資料來源的清單,請參閱我們的文件

應用程式模型建立架構

使用開放原始碼 AWS Serverless Application Model 製作無伺服器應用程式和服務的模型並進行部署。使用 AWS CodePipelineAWS CodeBuild 等應用程式生命週期管理工具持續交付無伺服器應用程式。

開發人員生態系統

使用第三方工具的生態系統和開放原始碼專案,簡化從開發到生產的程式碼建立、測試和部署。瀏覽我們的開發人員工具頁面,或參閱生態系統頁面以了解第三方工具。

應用程式和整合程式庫

使用 AWS Serverless Application Repository 為各種不同的使用案例快速探索和部署無伺服器應用程式和應用程式元件,其中包括 Web 和行動後端、聊天機器人、IoT、Alexa 技術、資料處理、串流處理等。您還可以找到與熱門第三方服務的整合,例如 Slack、Algorithmia、Twilio、Loggly、Splunk、Sumo Logic、Box 等。

安全與存取控制

使用日誌、變更追蹤、存取控制和加密執行合規和保護整個 IT 環境的安全。使用 AWS Identity and Access Management (IAM) 安全地控制對 AWS 資源的存取。使用 Amazon Cognito 管理和驗證無伺服器應用程式的最終使用者。使用 Amazon Virtual Private Cloud (VPC) 建立只有您能存取的私有虛擬網路。

可靠性和效能

AWS 提供高可用性、可擴展且低成本的服務,以提供企業級的效能。AWS Lambda 使用無效字母佇列自動重試次數等內建功能,可靠地執行商業邏輯。如需了解各公司如何使用 AWS 執行應用程式的相關資訊,請參閱我們的客戶案例

擴展到全球各地

使用我們遍及全球的功能,即可在幾分鐘內將應用程式和服務帶到國際市場。多個 AWS 區域提供 AWS Lambda,且可透過 Lambda@Edge 在所有 AWS 節點進行存取。您也可以使用 AWS Greengrass 在本機連線的裝置上執行 Lambda 函數。

AWS 無伺服器平台

AWS 提供一組全受管服務,可用於建立和執行無伺服器應用程式。無伺服器應用程式不需要佈建、維護和管理後端元件伺服器,後端元件包括運算、資料庫、儲存、串流處理、訊息佇列等。同時,您也不需要再擔心應用程式的容錯能力和可用性。相反地,AWS 會為您處理所有這些功能。這樣您便能專注於產品創新,還能讓產品早日上市。

運算

使用 AWS Lambda 執行程式碼,不必佈建或管理伺服器。只需為使用的運算時間支付費用,一旦未執行程式碼,就會停止計費。 

Lambda@Edge 可讓您在 AWS 節點執行 Lambda 函數,以回應 Amazon CloudFront 事件。

AWS Fargate 是爲容器專門打造的無伺服器運算引擎。Fargate 可擴展並管理執行容器所需的基礎設施。

儲存

Amazon Simple Storage Service (Amazon S3) 為開發人員和 IT 團隊提供安全、耐久、可高度擴展的物件儲存。Amazon S3 易於使用且具備簡單的 Web 服務界面,可讓您在 Web 上隨處存放和擷取任意數量的資料。

Amazon Elastic File System (Amazon EFS) 在 AWS 雲端提供簡易且可擴展的檔案儲存。這項設計可隨需而彈性擴展,根據您新增和移除檔案而自動增減檔案儲存容量。 

資料存放區

Amazon DynamoDB 是一種快速靈活的 NoSQL 資料庫服務,適合所有需要一致性且延遲低於 10 毫秒的任何規模應用程式。

Amazon Aurora Serverless 是適用於 Amazon Aurora (MySQL 相容版本) 的隨需自動調整規模組態,其資料庫將依據您的應用程式需求自動啟動、關閉以及擴展或縮減容量。

API 代理

Amazon API Gateway 是一種全受管的服務,可讓開發人員輕鬆地建立、發佈、維護、監控和保護任何規模的 API。Amazon API Gateway 可讓您處理數十萬個並行 API 呼叫,以及處理流量管理、授權和存取控制、監控以及 API 版本管理。

處理程序間傳訊

Amazon SNS 是全受管的發佈/訂閱簡訊服務,可輕鬆地分離和擴展微型服務、分散式系統及無伺服器應用程式。

Amazon SQS 是全受管的訊息佇列服務,可輕鬆地分離和擴展微型服務、分散式系統及無伺服器應用程式。 

協調

AWS Step Functions 可使用視覺化工作流程來輕鬆協調分散式應用程式與微型服務中的各個元件。使用可執行獨立功能的個別元件建立應用程式,能助您迅速擴展及變更應用程式。Step Functions 是協調元件與逐步執行應用程式函數的可靠方式。

分析

Amazon Kinesis 是 AWS 上的串流資料平台,可提供輕鬆載入和分析串流資料的強大服務,還能讓您針對特殊需求建置自訂的串流資料應用程式。

Amazon Athena 是一種互動式查詢服務,可讓您使用標準 SQL 輕鬆分析 Amazon S3 中的資料。Athena 沒有伺服器,所以不需管理基礎設施,而且您只需支付執行的查詢費用。

開發人員工具

AWS 提供可協助開發人員進行無伺服器應用程式開發程序的工具和服務。AWS 及其合作夥伴生態系統提供持續整合和交付、測試、部署、監控和診斷的工具、軟體開發套件、架構和整合式開發環境 (IDE) 外掛程式。

進一步了解 »

無伺服器應用程式使用案例

使用無伺服器架構幾乎可建立所有類型的應用程式或後端服務。以下是幾個使用案例:


Web 應用程式和後端

您可以使用 AWS Lambda、Amazon API Gateway、Amazon S3 和 Amazon DynamoDB 建立無伺服器 Web 應用程式和後端,以處理 Web、行動、物聯網 (IoT) 和聊天機器人請求。

範例:天氣應用程式

參考架構:範本程式碼

AWS Lambda Web 後端

範例:社群媒體應用程式的行動後端

參考架構:範本程式碼

AWS Lambda 行動後端
Bustle_logo2

Bustle 使用 AWS Lambda 和 Amazon API Gateway,在其 Bustle iOS 應用程式和網站執行無伺服器後端。使用無伺服器架構之後,Bustle 無須處理基礎設施管理,因此每位工程師都能專注在建立新功能和創新。閱讀案例研究 »


資料處理

您可以使用 AWS Lambda、Amazon Kinesis、Amazon S3 和 Amazon DynamoDB 建立各種即時資料處理系統。

範例:影像縮圖建立

參考架構:範例程式碼

AWS Lambda 檔案處理
square-enix_logo

Square Enix 使用 AWS Lambda 執行大型多人線上遊戲的影像處理。使用 Lambda 之後,它能夠可靠地處理比平常流量高出 30 倍的尖峰流量。同時還能將影像處理所需的時間從數小時縮短到 10 幾秒,並降低基礎設施和操作成本。閱讀案例研究 »

範例:串流社交媒體資料的分析

參考架構:範本程式碼

AWS Lambda 串流處理
Thomson_Reuters_logo2

Thomson Reuters 使用無伺服器架構,針對使用量分析服務每秒處理高達 4,000 個事件。該服務可靠地處理比平常流量高出兩倍的尖峰流量,同時還具有高耐久性。該公司使用 AWS 只花了五個月就將服務部署到生產環境。閱讀案例研究 »

開始使用無伺服器

icon1

註冊 AWS 帳戶

立即存取 AWS 免費方案
icon2

透過逐步教學了解

跟著 簡單的教學課程一同探索並學習。
icon3

建立無伺服器應用程式

AWS Serverless Application Repository 中尋找熱門使用案例的應用程式。

進一步了解建立無伺服器應用程式

瀏覽資源頁面
準備好開始使用了嗎?
開始使用 AWS Serverless Application Repository
還有其他問題嗎?
聯絡我們