App Service 概觀

Azure App Service 是 HTTP 型服務,用來裝載 Web 應用程式、REST API 和行動後端。 您可以使用您慣用的語言進行開發,不管是 .NET、.NET Core、Java、Ruby、Node.js、PHP 還是 Python 都可以。 應用程式在 Windows 和 Linux 型環境中都可輕易執行及調整。

App Service將 Microsoft Azure 的強大功能新增至您的應用程式,例如安全性、負載平衡、自動調整和自動化管理。 此外,您可以利用其 DevOps 功能,例如從 Azure DevOps、GitHub、Docker Hub和其他來源、套件管理、預備環境、自訂網域和 TLS/SSL 憑證進行持續部署。

在使用 App Service 時,您只需就您所使用的 Azure 計算資源支付費用。 您所使用的計算資源取決於您用來執行應用程式的 App Service 方案。 如需詳細資訊,請參閱 Azure App Service 方案概觀

為何要使用 App Service?

Azure App Service 是完全受控的平台即服務 (PaaS) 供應項目,適用於開發人員。 以下是 App Service 的一些主要功能︰

  • 多種語言和架構 - App Service 具有 ASP.NET、ASP.NET Core、Java、Ruby、Node.js、PHP 或 Python 的第一級支援。 您也可以將 PowerShell 和其他指令碼或可執行檔 做為背景服務來執行。
  • 受控的實際執行環境 - App Service 會自動為您修補及維護 OS 和語言架構。 您可以將時間用在撰寫絕佳的應用程式上,而讓 Azure 來擔心平台問題。
  • 容器化和 Docker - 將您的應用程式 Docker 化,並在 App Service 中裝載自訂的 Windows 或 Linux 容器。 使用 Docker Compose 執行多容器應用程式。 將您的 Docker 技能直接遷移到 App Service。
  • DevOps 最佳化 - 使用 Azure DevOps、GitHub、BitBucket、Docker Hub 或 Azure Container Registry 設定持續整合和部署。 透過 測試和預備環境升級更新。 使用 Azure PowerShell跨平台命令列介面 (CLI),在 App Service 中管理您的應用程式。
  • 具高可用性的全域調整 - 以手動或自動方式相應增加放大。 在 Microsoft 的通用資料中心基礎結構中隨處裝載您的應用程式,而 App Service SLA 會承諾高可用性。
  • SaaS 平臺和內部部署資料的連線 - 從 數百個適用于 企業 (系統的連接器中選擇,例如 SAP) 、SaaS 服務 (,例如 Salesforce) ,以及 Facebook) 等網際網路 (服務。 使用混合式連線Azure 虛擬網路存取內部部署資料。
  • 安全性和法規遵循 - App Service 為 ISO、SOC 和 PCI 相容。 使用 Azure Active DirectoryGoogleFacebookTwitterMicrosoft 帳戶來驗證使用者。 建立 IP 位址限制管理服務身分識別防止子網域接管
  • 應用程式範本 - 從 Azure Marketplace 中的廣泛應用程式範本清單中進行選擇,例如 WordPress、Joomla 和 Drupal。
  • Visual Studio 和 Visual Studio Code 整合 - Visual Studio 和 Visual Studio Code 中的專用工具可簡化建立、部署和偵錯的工作。
  • API 和行動功能 - App Service 可提供適用於 RESTful API 案例的現成 CORS 支援,並可藉由啟用驗證、離線資料同步和推播通知等功能,簡化行動應用程式案例。
  • 無伺服器程式碼 - 可隨需執行程式碼片段或指令碼,而不必明確佈建或管理基礎結構,而且只須就程式碼實際使用的計算時間支付費用 (請參閱 Azure Functions)。

除了 App Service,Azure 還提供可用來裝載網站和 Web 應用程式的其他服務。 在大部分的情況下,App Service 是最佳選擇。 對於微服務架構,請考慮使用 Azure Spring AppsService Fabric。 如果您需要能更加充分地掌控執行程式碼的 VM,則請考慮使用 Azure 虛擬機器。 如需如何在這些 Azure 服務之間做選擇的詳細資訊,請參閱 Azure App Service、虛擬機器、Service Fabric 及雲端服務的比較

Linux 上的 App Service

App Service 也可以針對支援的應用程式堆疊,在 Linux 上以原生方式裝載 Web 應用程式。 其也可以執行自訂的 Linux 容器 (也稱為用於容器的 Web App)。

內建語言和架構

Linux 上的 App Service 支援許多語言特定的內建映像。 您可直接部署程式碼。 支援的語言包括:Node.js、Java (8、11 和 17)、Tomcat、PHP、Python、.NET Core 和 Ruby。 執行 az webapp list-runtimes --os linux 以檢視最新的語言和支援的版本。 如果內建映像不支援應用程式所需的執行階段,您可以使用自訂容器進行部署。

已過期的執行階段會從入口網站中的 Web 應用程式 [建立] 和 [設定] 刀鋒視窗定期移除。 這些執行階段在維護組織淘汰或發現有重大弱點時,會從入口網站中隱藏。 這些選項都是隱藏的,以將客戶引導至最成功的最新執行階段。

從入口網站中隱藏過期的執行階段時,使用該版本的任何現有網站都會繼續執行。 如果執行階段已從 App Service 平台完全移除,您的 Azure 訂用帳戶擁有者將會在移除之前收到電子郵件通知。

如果您需要使用已過期的執行階段版本 (不再顯示在入口網站上) 來建立另一個 Web 應用程式,請參閱語言設定指南,以取得如何取得網站執行階段版本的指示。 您可以使用 Azure CLI,以相同的執行階段建立另一個網站。 或者,您可以使用入口網站中 Web 應用程式刀鋒視窗上的 [匯出範本] 按鈕,匯出網站的 ARM 範本。 您可以重複使用此範本來部署具有相同執行階段和設定的新網站。

限制

注意

Linux 和 Windows App Service 方案現在可以共用資源群組。 此限制已從平台提高,而為支援這項限制,現有的資源群組也已更新。

  • 共用定價層不支援 Linux 上的 App Service。
  • Azure 入口網站只會顯示目前適用於 Linux 應用程式的功能。 功能啟用之後,就會在入口網站上啟動。
  • 在部署至內建映像時,您的程式碼和內容會配置給 Web 內容的存放磁碟區,並受到 Azure 儲存體支援。 相較於容器檔案系統的延遲,此磁碟區的磁碟延遲比較高且變化較大。 自訂容器選項可能有益於需要對於內容檔案進行大量唯讀存取的應用程式,這類應用程式會將檔案放在容器檔案系統上,而非內容磁碟區上。

後續步驟

建立您的第一個 Web 應用程式。