+116 votes
,post bởi (1.1k điểm)

2 Answers

+603 votes
,post bởi

Giới thiệu

Kiến trúc không máy chủ cho phép các dịch vụ web phụ trợ được triển khai trên cơ sở khi cần thiết. Thay vì cần duy trì cấu hình máy chủ của riêng bạn, cấu trúc phần mềm của bạn cho các nhà cung cấp không có máy chủ có thể giảm thiểu chi phí liên quan. Các ứng dụng serverless thường được triển khai từ kho lưu trữ Git vào một môi trường có thể tăng hoặc giảm quy mô khi cần thiết.

Điều này có nghĩa là các chức năng không có máy chủ có thể “mở rộng quy mô về 0” một cách hiệu quả - một chức năng hoặc điểm cuối không được tiêu thụ tài nguyên miễn là nó không được truy cập. Tuy nhiên, điều này cũng có nghĩa là các chức năng serverless phải hoạt động tốt và chỉ nên khả dụng từ trạng thái nhàn rỗi để cung cấp các phản hồi riêng lẻ cho các yêu cầu đầu vào. Những phản hồi này có thể chuyên sâu về mặt tính toán nếu cần, nhưng phải được gọi và kết thúc theo cách có thể đoán trước được.

Hướng dẫn này sẽ trình bày một số phương pháp hay nhất để viết một ví dụ về hàm không máy chủ.

Điều kiện tiên quyết

Để làm theo hướng dẫn này, bạn sẽ cần:

  • Môi trường trình bao cục bộ có cài đặt công cụ triển khai không máy chủ. Một số nền tảng không máy chủ sử dụng serverlesslệnh, trong khi hướng dẫn này sẽ phản ánh các công cụ của DigitalOcean doctl sandboxCả hai đều cung cấp chức năng tương tự. Để cài đặt và cấu hình doctl, hãy tham khảo tài liệu của nó .

  • Công cụ kiểm soát phiên bản Git có sẵn trong môi trường phát triển của bạn. Nếu bạn đang làm việc trên Ubuntu, bạn có thể tham khảo cách cài đặt Git trên Ubuntu 20.04

Bước 1 - Xây dựng kho lưu trữ ứng dụng không có máy chủ

Một ứng dụng không máy chủ hoàn chỉnh chỉ có thể chứa tối thiểu hai tệp - tệp cấu hình, thường sử dụng .ymlcú pháp, khai báo siêu dữ liệu cần thiết cho ứng dụng của bạn với nhà cung cấp không máy chủ và tệp chứa chính mã, ví dụ my_app.pymy_app.jshoặc my_app.goNếu ứng dụng của bạn có bất kỳ phụ thuộc ngôn ngữ nào, nó thường cũng sẽ khai báo chúng bằng cách sử dụng các quy ước ngôn ngữ chuẩn, chẳng hạn như package.jsontệp cho Node.js.

Để khởi tạo một ứng dụng không có máy chủ, bạn có thể sử dụng doctl sandbox inittên của một thư mục mới:

+439 votes
,post bởi (560 điểm)
Nhà phát triển ứng dụng! Ngừng lo lắng về quản lý cơ sở hạ tầng - học cách viết các hàm không máy chủ.
...