Đây là bài nằm trong tập hợp những bài viết về Kong API Gateway. Tham khảo các bài biết khác theo đường dẫn dưới đâySeries bài viết về Kong API GatewayBài 1: Kong API Gateway là gì? (Bài viết hiện tại)Bài 2: Hướng dẫn cách cài đặt Kong API GatewayBài 3: Cấu hình Kong quản lý các APIs từ các backend serversBài 4: Cấu hình bảo mật cho Kong API GatewayBài 5: Cấu hình các tính năng nâng cao khác của KongAPI Gateway là gì?Một hệ thống microservices trung bình sẽ có một vài cho tới hàng trăm services khác nhau, nếu như client giao tiếp trực tiếp với các services này thì sơ đồ việc kết nối sẽ rất rối và cực kỳ khó quản lý. Việc giao tiếp trực tiếp này sẽ dẫn đến một số vấn đề rắc rối với client- Phần code phía client sẽ trở nên phức tạp vì phải tracking nhiều endpoint- Sẽ tạo sự kết nối giữa client và backend. Client cần biết được các services đó đc phân chia như thế nào. Rất khó cho việc maitain của client và refactor service.- Mỗi một service sẽ phải handle nhiều vấn đề liên quan như authentiaction, SSL hay client rate limitingGiải pháp được đưa ra để giải quyết vấn đề này là sử dụng API Gateway

*

API Gateway làm nhiệm vụ định tuyến các yêu cầu, kết hợp và chuyển đổi các giao thức. Tất cả yêu cầu từ Client đều đi qua cổng kết nối API. Sau đó cổng kết nối API định tuyến các yêu cầu này tới microservices phù hợp. Cổng kết nối API Gateway sẽ xử lý một yêu cầu người dùng bằng cách gọi đến một loạt microservices rồi tổng hợp các kết quả. Nó có thể chuyển đổi giữa các giao thức web như HTTP, WebSocket và các giao thức nội bộ không thân thiện với web.

Bạn đang xem: Api gateway là gì

– Tối ưu đầu cuối : Khi một request của Client tới dịch vụ yêu cầu thông tin của nhiều thành phần trong hệ thống, ví dụ: Customer, Order, Invoices… API Gateway sẽ thực hiện request đồng thời tới các thành phần, lấy về các thông tin từ từng thành phần, ghép lại và phản hồi lại kết quả mong muốn cho Client.
– Ngắt kết nối API: Khi mỗi thành phần trong hệ thống dừng hoạt động, hoặc trả về số lượng lớn lỗi đạt đến ngưỡng đã được quy định, API Gateway có thể tự động thực hiện dừng gửi request tới thành phần gặp lỗi. Việc này sẽ cho đội vận hành có thời gian để phân tích log, xử lý lỗi và update lại thành phần
– Thuận tiện nâng cấp các thành phần: Khi các thành phần trong dịch vụ được nâng cấp, phát triển thêm tính năng API Gateway có các hình thức để có thể điều phối tỉ lệ các request giữa phiên bản hiện tại và phiên bản mới
– Kết nối tập trung: Client sử dụng API sẽ kết nối tập trung qua API Gateway, API Gateway sẽ thực hiện các việc xác thực request của client, log các request, giám sát các Microservices, báo cáo/phân tích log…
– Cân bằng tải: API Gateway có thể phối hợp cùng Service-discovery tool để thực hiện cân bằng tải, phân phối request tới các cụm API.

Xem thêm: Esr Là Gì – Các Xét Nghiệm Máu Phát Hiện Viêm

Nhưng bên cạnh đó, nhược điểm lớn nhất của mô hình sử dụng API Gateway là nó sẽ trở thành nút thắt cổ chai khi phát triển hệ thống vì mọi request đều đi qua nó vì vậy độ trễ của mỗi request sẽ tăng lên. Thêm kinh phí, thời gian để quản lý Gateway này.
Kong API Gateway là gì?
Kong là giải pháp API Gateway mã nguồn mở phổ biến nhất hiện nay. Kong sẽ đứng trước hệ thống API của bạn, giúp bạn nhanh chóng, thuận tiện và bảo mật trong triển khai mô hình Microservices, cũng như quản lý và triển khai các giải pháp API. Với các plugins, Kong sẽ cung cấp thêm nhiều chức năng và dịch vụ mở rộng dựa trên nền tảng lõi.

Xem thêm: Subheading Là Gì – Nghĩa Của Từ Subheading

*

*

Kong được xây dựng trên Nginx và hoạt động thông qua các RESTful API đơn giản, dễ sử dụng.Một số tính năng nổi bật của Kong phải kể đến như⦁ Authentication: Bảo vệ các dịch vụ của bạn qua tầng xác thực.⦁ Traffic Control: Quản lý, điều chỉnh và chặn các lưu lượng API vào ra.⦁ Analytics: Trình diễn, kiểm tra và giám sát các lưu lượng vào API⦁ Transformations: Chuyển đổi trực tiếp các yêu cầu và phản hồi API trong khi xử lý.⦁ Logging: Bắt luồng yêu cầu và phản hồi dữ liệu vào hệ thống ghi log.⦁ Serverless: Thực hiện các chức năng serverless qua các API.Một số ưu điểm khi sử dụng Kong⦁ Scalable: Kong có thể dễ dang mở rộng theo chiều ngang bằng cách thêm nhiều nodes mới. Kong có thể xử lý một lượng lớn requests với độ trễ thấp.⦁ Modular: Bổ sung thêm các tính năng vào Kong thông qua việc cài đặt các plugins và cấu hình dễ dàng thông qua RESTful Admin API⦁ Hoạt động trên mọi hạ tầng: Có thể dễ dàng triển khai Kong trên môi trường Cloud, On-premises, hoặc Hybrid.

Chuyên mục: Hỏi Đáp