ASP.NET Core: Tổng quan về App Service
App Service Azure là một dịch vụ dựa trên HTTP để lưu trữ các ứng dụng web, API REST và phần cuối dành cho thiết bị di động. Bạn có thể phát triển bằng ngôn ngữ yêu thích của mình, có thể là .NET, .NET Core, Java, Node.js, PHP và Python. Các ứng dụng chạy và mở rộng dễ dàng trên cả môi trường dựa trên Windows và Linux.
App Service bổ sung sức mạnh của Microsoft Azure vào ứng dụng của bạn, chẳng hạn như bảo mật, cân bằng tải, tự động thay đổi quy mô và quản lý tự động. Ngoài ra, bạn có thể tận dụng các khả năng DevOps của nó, chẳng hạn như triển khai liên tục từ Azure DevOps, GitHub, Docker Hub và các nguồn khác, quản lý gói, môi trường dàn dựng, miền tùy chỉnh và chứng chỉ TLS/SSL.
Với App Service, bạn trả tiền cho các tài nguyên điện toán Azure mà bạn sử dụng. Tài nguyên điện toán bạn sử dụng được xác định bởi gói App Service mà bạn chạy ứng dụng trên đó. Để biết thêm thông tin, hãy xem Tổng quan về các gói App Service Azure.
Tại sao nên sử dụng App Service?
App Service Azure là một nền tảng được quản lý hoàn toàn dưới dạng dịch vụ (PaaS) cung cấp cho các nhà phát triển. Dưới đây là một số tính năng chính của App Service:
- Nhiều ngôn ngữ và framework - App Service có hỗ trợ hạng nhất cho ASP.NET, ASP.NET Core, Java, Ruby, Node.js, PHP hoặc Python. Bạn cũng có thể chạy PowerShell và các tập lệnh hoặc tệp thực thi khác dưới dạng dịch vụ nền.
- Môi trường production được quản lý - App Service tự động vá lỗi và duy trì hệ điều hành và framework ngôn ngữ cho bạn. Dành thời gian viết các ứng dụng tuyệt vời và để Azure lo lắng về nền tảng.
- Containerization và Docker - Dockerize ứng dụng của bạn và lưu trữ bộ chứa Windows hoặc Linux tùy chỉnh trong App Service. Chạy các ứng dụng nhiều vùng chứa với Docker Compose. Chuyển trực tiếp các kỹ năng Docker của bạn sang App Service.
- Tối ưu hóa DevOps - Thiết lập tích hợp và triển khai liên tục với Azure DevOps, GitHub, BitBucket, Docker Hub hoặc Azure Container Registry. Thúc đẩy các bản cập nhật thông qua môi trường thử nghiệm và dựng. Quản lý ứng dụng của bạn trong App Service bằng cách sử dụng Azure PowerShell hoặc giao diện dòng lệnh đa nền tảng (CLI).
- Quy mô toàn cầu với tính sẵn sàng cao - Tăng hoặc giảm quy mô theo cách thủ công hoặc tự động. Lưu trữ ứng dụng của bạn ở mọi nơi trong cơ sở hạ tầng trung tâm dữ liệu toàn cầu của Microsoft và SLA App Service hứa hẹn tính khả dụng cao.
- Kết nối với nền tảng SaaS và dữ liệu tại chỗ - Chọn từ hàng trăm trình kết nối cho hệ thống doanh nghiệp (chẳng hạn như SAP), dịch vụ SaaS (chẳng hạn như Salesforce) và dịch vụ internet (chẳng hạn như Facebook). Truy cập dữ liệu tại chỗ bằng Kết nối kết hợp và Mạng ảo Azure.
- Bảo mật và tuân thủ - App Service tuân thủ ISO, SOC và PCI. Tạo giới hạn địa chỉ IP và nhận dạng dịch vụ được quản lý. Ngăn chặn việc tiếp quản tên miền phụ.
- Xác thực - Xác thực người dùng bằng thành phần xác thực tích hợp. Xác thực người dùng bằng tài khoản Azure Active Directory, Google, Facebook, Twitter hoặc Microsoft.
- Mẫu ứng dụng - Chọn từ danh sách mở rộng các mẫu ứng dụng trong Azure Marketplace, chẳng hạn như WordPress, Joomla và Drupal.
- Tích hợp Visual Studio và Visual Studio Code - Các công cụ chuyên dụng trong Visual Studio và Visual Studio Code hợp lý hóa công việc tạo, triển khai và gỡ lỗi.
- Tính năng API và thiết bị di động - App Service cung cấp hỗ trợ CORS chìa khóa trao tay cho các kịch bản API RESTful và đơn giản hóa các kịch bản ứng dụng di động bằng cách bật xác thực, đồng bộ hóa dữ liệu ngoại tuyến, thông báo đẩy, v.v.
- Mã không có máy chủ - Chạy đoạn mã hoặc tập lệnh theo yêu cầu mà không phải cung cấp hoặc quản lý cơ sở hạ tầng một cách rõ ràng và chỉ trả tiền cho thời gian tính toán mà mã của bạn thực sự sử dụng (xem Chức năng Azure).
Bên cạnh App Service, Azure cung cấp các dịch vụ khác có thể được sử dụng để lưu trữ các trang web và ứng dụng web. Đối với hầu hết các tình huống, App Service là lựa chọn tốt nhất. Đối với kiến trúc vi dịch vụ, hãy xem xét Azure Spring Apps hoặc Service Fabric. Nếu bạn cần kiểm soát nhiều hơn đối với máy ảo mà mã của bạn chạy trên đó, hãy xem xét Azure Virtual Machines. Để biết thêm thông tin về cách chọn giữa các dịch vụ Azure này, hãy xem so sánh App Service Azure, Virtual Machines, Service Fabric và Cloud Services.
App Service trên Linux
App Service cũng có thể lưu trữ các ứng dụng web nguyên bản trên Linux cho các ngăn xếp ứng dụng được hỗ trợ. Nó cũng có thể chạy các bộ chứa Linux tùy chỉnh (còn được gọi là Ứng dụng web dành cho bộ chứa).
Các ngôn ngữ và framework tích hợp
App Service trên Linux hỗ trợ một số hình ảnh tích hợp dành riêng cho ngôn ngữ. Chỉ cần triển khai mã của bạn. Các ngôn ngữ được hỗ trợ bao gồm: Node.js, Java (8, 11 và 17), Tomcat, PHP, Python, .NET Core và Ruby. Chạy az webapp list-runtimes --os linux để xem các ngôn ngữ mới nhất và các phiên bản được hỗ trợ. Nếu thời gian chạy mà ứng dụng của bạn yêu cầu không được hỗ trợ trong các hình ảnh tích hợp, thì bạn có thể triển khai nó với một vùng chứa tùy chỉnh.
Thời gian chạy lỗi thời được xóa định kỳ khỏi các blade Web Apps Create và Configuration trong Portal. Các thời gian chạy này bị ẩn khỏi Portal khi chúng không được tổ chức bảo trì sử dụng hoặc phát hiện có lỗ hổng nghiêm trọng. Các tùy chọn này được ẩn để hướng dẫn khách hàng đến thời gian chạy mới nhất mà họ sẽ thành công nhất.
Khi thời gian chạy lỗi thời bị ẩn khỏi Portal, bất kỳ trang web hiện tại nào của bạn sử dụng phiên bản đó sẽ tiếp tục chạy. Nếu thời gian chạy bị xóa hoàn toàn khỏi nền tảng App Service, (các) chủ sở hữu đăng ký Azure của bạn sẽ nhận được thông báo qua email trước khi xóa.
Nếu bạn cần tạo một ứng dụng web khác có phiên bản thời gian chạy đã lỗi thời không còn được hiển thị trên Portal, hãy xem hướng dẫn cấu hình ngôn ngữ để biết cách tải phiên bản thời gian chạy của trang web của bạn. Bạn có thể sử dụng Azure CLI để tạo một trang web khác có cùng thời gian chạy. Ngoài ra, bạn có thể sử dụng nút Export Template trên blade ứng dụng web trong Portal để xuất mẫu ARM của trang web. Bạn có thể sử dụng lại mẫu này để triển khai một trang web mới có cùng thời gian chạy và cấu hình.
Hạn chế
- App Service trên Linux không được hỗ trợ trên bậc giá chia sẻ.
- Cổng thông tin Azure chỉ hiển thị các tính năng hiện đang hoạt động cho các ứng dụng Linux. Khi các tính năng được bật, chúng sẽ được kích hoạt trên cổng thông tin.
- Khi được triển khai cho hình ảnh tích hợp sẵn, mã và nội dung của bạn được phân bổ một ổ lưu trữ cho nội dung web, được hỗ trợ bởi Azure Storage. Độ trễ đĩa của ổ đĩa này cao hơn và thay đổi nhiều hơn độ trễ của hệ thống tệp vùng chứa. Các ứng dụng yêu cầu quyền truy cập chỉ đọc nặng đối với các tệp nội dung có thể hưởng lợi từ tùy chọn vùng chứa tùy chỉnh, tùy chọn này sẽ đặt các tệp trong hệ thống tệp vùng chứa thay vì trên ổ đĩa nội dung.
Bước tiếp theo
Tạo ứng dụng web đầu tiên của bạn.