Phát triển các API không máy chủ an toàn và có khả năng mở rộng

Tháng Năm 31, 2021
Nga Pham

Thêm giao diện API vào các ứng dụng không máy chủ là một cách tuyệt vời để kết nối dữ liệu, tích hợp hệ thống, hay nói một cách tổng quát là xây dựng các ứng dụng hiện đại hơn. API cho phép một doanh nghiệp chia sẻ dữ liệu và dịch vụ của mình một cách an toàn với các nhà phát triển, cả bên trong và bên ngoài doanh nghiệp. Cách làm với kiến trúc không máy chủ giúp nhà phát triển dễ dàng mở rộng các API, một cách an toàn và không đòi hỏi các kỹ thuật phức tạp thường thấy.

Lợi ích của REST API không máy chủ

Google Cloud nhận thấy rằng ngày càng nhiều khách hàng quan tâm đến việc phát triển ứng dụng trên nền tảng không máy chủ – nơi hỗ trợ xây dựng các ứng dụng có khả năng mở rộng, hướng yêu cầu hoặc hướng sự kiện (request- / event-driven applications) mà không cần thiết lập cơ sở hạ tầng chuyên dụng. Kiến trúc không máy chủ có thể cải thiện đáng kể cách bạn xây dựng các ứng dụng và dịch vụ, thúc đẩy sự đổi mới và tăng cường tính linh hoạt. Tính toán không máy chủ cũng là một yếu tố quan trọng trong chiến lược doanh nghiệp có thể kết hợp (composable enterprise), nơi có thể sử dụng lại và kết hợp dữ liệu, cũng như các chức năng theo mô-đun để tạo ra trải nghiệm khách hàng và mô hình kinh doanh mới.

Khi một tổ chức mở rộng các chương trình API của họ, một câu hỏi quan trọng cần trả lời đó chính là, làm thế nào để xây dựng các API toàn diện có khả năng mở rộng và tính bảo mật cao? Để thực hiện điều này, nhiều tổ chức đã chuyển các API quan trọng của doanh nghiệp sang các kiến trúc không máy chủ, vì các API không máy chủ mang đến những lợi ích nổi bật như sau:

  • Khả năng mở rộng
  • Giảm thiểu chi phí phần cứng và nhân công nhờ mô hình thanh toán dựa trên đám mây
  • Độ tin cậy và tính khả dụng
  • Không cần cân bằng tải, bảo trì cơ sở hạ tầng hoặc các bản vá bảo mật (security patches)
  • Hiệu quả vận hành
  • Tăng năng suất của nhà phát triển

Thiết kế API không máy chủ

Các nhà phát triển sử dụng REST API để xây dựng các ứng dụng độc lập cho thiết bị di động hoặc máy tính bảng, với các ứng dụng chạy trong trình duyệt hoặc thông qua bất kỳ loại ứng dụng nào khác, có thể gửi yêu cầu (request) đến một điểm cuối HTTP. Bằng cách xây dựng API đó trên môi trường không máy chủ như Cloud Run hoặc Cloud Functions, mã nguồn của bạn có thể được thực thi bằng cách hướng yêu cầu hoặc hướng sự kiện – điều bất khả thi trong môi trường máy ảo truyền thống hoặc môi trường dựa trên vùng chứa (container-based environment). Bởi vì việc xây dựng một ứng dụng không máy chủ mạnh mẽ có nghĩa là thiết kế với các dịch vụ và dữ liệu, điều quan trọng là phải phát triển các API như một lớp trừu tượng cho dữ liệu và dịch vụ của bạn. Ví dụ: một hoạt động trên cơ sở dữ liệu, chẳng hạn như thay đổi trên các dòng của bảng có thể được sử dụng làm trình kích hoạt sự kiện xảy ra thông qua một lệnh gọi API.

Tận dụng Google Cloud API Gateway để bảo mật các API của bạn

Google Cloud API Gateway cho phép bạn cung cấp quyền truy cập an toàn vào các dịch vụ phụ trợ của mình thông qua REST API được xác định rõ ràng, nhất quán trên tất cả các dịch vụ của bạn mà không cần quan tâm đến việc triển khai dịch vụ được thực hiện như thế nào. Điều này mang lại hai lợi ích chính:

  • Khả năng mở rộng: API Gateway cung cấp cho bạn tất cả các lợi ích của kiến trúc không máy chủ, chẳng hạn như khả năng triển khai và mở rộng linh hoạt, giúp bạn có thể tập trung vào việc xây dựng các ứng dụng tuyệt vời. Nó có thể quản lý các API cho nhiều phần mềm phụ trợ, bao gồm Cloud Functions, Cloud Run, App Engine, cũng như Compute Engine và Google Kubernetes Engine.
  • Bảo mật: Google Cloud API Gateway bổ sung thêm các lớp bảo mật, chẳng hạn như xác thực (authentication) và kiểm tra khóa (key validation), bằng cách định cấu hình các định nghĩa bảo mật, yêu cầu tất cả các lệnh gọi đến cung cấp một khóa API hợp lệ. Nó cũng cho phép việc đặt ra hạn ngạch và chỉ định giới hạn sử dụng để bảo vệ các API khỏi bị lạm dụng hoặc sử dụng quá mức.

Video dưới đây sẽ mang đến cho bạn một cái nhìn tổng quát về Google Cloud API Gateway:

Bắt đầu ngay bây giờ

Với API Gateway, bạn có thể tạo, bảo mật và giám sát các API cho back-end không máy chủ Google Cloud, bao gồm Cloud Functions, Cloud Run, và App Engine. Được xây dựng trên Envoy, API Gateway mang đến cho bạn hiệu suất cao, khả năng mở rộng và sự tự do tập trung vào việc xây dựng, phát triển ứng dụng. Bắt đầu xây dựng các API của bạn một cách miễn phí tại đây.

Nguồn: Google Cloud Blog