API Gateway trong kiến trúc microservice và ứng dụng sao cho hiệu quả

![]() |
Khi chọn xây dựng ứng dụng dưới dạng một microservice,ếntrúcmicroservicevàứngdụngsaochohiệuquảvtv3 trực tiếp bóng đá hôm nay chúng ta sẽ cần quyết định các client của ứng dụng sẽ tương tác với các microservices đó như thế nào. Với một ứng dụng monolithic, chỉ có một tập hợp các endpoint (thường sẽ được replicated, load balancing). Tuy nhiên, trong kiến trúc microservices, mỗi microservice lại có một tập hợp các endpoint chi tiết. Cùng tìm hiểu điều này ảnh hưởng như thế nào đến việc giao tiếp giữa client và ứng dụng và API Gateway sẽ góp phần giúp giải quyết bài toán ra sao.
Lấy ví dụ bạn đang phát triển một client cho một ứng dụng mua sắm trên mobile. Bạn có thể cần triển khai trang sản phẩm chi tiết để hiển thị thông tin về tất cả các sản phẩm cụ thể mà dịch vụ cung cấp.
Tuy là một ứng dụng dành cho mobile nhưng trang chi tiết sản phẩm lại hiển thị rất nhiều thông tin. Ví dụ: Không chỉ có thông tin cơ bản về sản phẩm (như tên, mô tả và giá) mà trang còn hiển thị: Số lượng mặt hàng trong giỏ hàng; lịch sử đơn hàng; phản hồi của khách hàng; cảnh báo hàng tồn kho thấp; tùy chọn vận chuyển.
Các đề xuất sản phẩm thay thế
Khi sử dụng kiến trúc microservices, dữ liệu hiển thị trên trang sản phẩm nằm trong nhiều microservices khác nhau. Một số microservice sở hữu dữ liệu được hiển thị trên trang sản phẩm trong ví dụ có thể phân thành như sau: Service Giỏ hàng - Số lượng mặt hàng trong giỏ; Service Order - Lịch sử đặt hàng; Service Danh mục - Thông tin cơ bản về sản phẩm như tên, hình ảnh và giá; Service Review - Đánh giá của khách hàng; Service Hàng tồn kho - Cảnh báo hàng tồn kho thấp; Service shipping - Các tùy chọn, thời gian và chi phí vận chuyển được tách riêng từ API của nhà cung cấp dịch vụ vận chuyển; Service Đề xuất - Các mặt hàng được đề xuất.
Chúng ta cần quyết định các client truy cập các dịch vụ này như thế nào.
![]() |
Nếu giao tiếp trực tiếp Client‑to‑Microservice
Trên lý thuyết, một client có thể đưa request trực tiếp cho từng microservice. Mỗi microservice sẽ có một public endpoint. Để lấy thông tin chi tiết về sản phẩm, client gọi trực tiếp đến từng service được liệt kê ở trên qua public endpoint. Nhưng, cách làm này có nhiều thách thức và hạn chế. Đầu tiên là nhu cầu của client và các API của mỗi microservice có thể không khớp với nhau. Client trong ví dụ này phải đưa 7 request riêng biệt. Trong các ứng dụng phức tạp hơn, có thể phải gọi nhiều hơn nữa.
Một vấn đề khác khi client gọi trực tiếp đến các microservice là một số service có thể sử dụng các giao thức không thân thiện với web. Các giao thức như HTTP và WebSocket thường được khuyến nghị sử dụng.
Bên cạnh đó, việc việc tái cấu trúc các microservices, ví dụ như gộp 2 service thành 1 hay tách 1 service thành 2 sẽ cực kỳ khó khăn.
Các thách thức còn đến từ việc lập trình viên sẽ phải phát triển riêng phần Authentication, Authorization cho từng service gây tốn thời gian, gặp nhiều khó khăn, hay chưa có hệ thống monitor, logging cho từng service (latency, tỉ lệ timeout, log truy cập của từng service).
Để phân tích rõ hơn về những khó khăn này, đồng thời đưa ra giải pháp giải quyết hiệu quả hơn từ API Gateway, độc giả hãy tham gia cùng Bizfly Cloud trong buổi Bizfly Expert Talk #36 với chủ đề: ‘’API Gateway trong kiến trúc microservice” diễn ra vào ngày 09/03 tới đây.
![]() |
Tham gia ngay để nhận ngay voucher dùng thử trị giá 500K khi truy cập: https://bit.ly/3MlV1G7
API Gateway được xem là phương pháp có thể giải quyết toàn bộ những khó khăn được đề cập phía trên. API Gateway là một servers (nhóm server) đóng vai trò như là một lối vào/ra duy nhất để truy cập các service. Ngoài nhiệm vụ định tuyến API phù hợp cho từng client, API Gateway có các chức năng như xác thực, giám sát, load balancing, rate limiting, health checks, logging và security.
Cung cấp giải pháp API Gateway được đóng gói sẵn đầu tiên tại Việt Nam, developer sẽ dễ dàng và thuận tiện hơn rất nhiều trong công việc phát triển của mình, doanh nghiệp tiết kiệm được rất nhiều chi phí, rất nhiều giờ công sức cho triển khai, vận hành. Tất cả sẽ được hé lộ trong buổi Talk bổ ích, hấp dẫn từ Bizfly Cloud.
Giới thiệu diễn giả:Anh Phạm Văn Khanh - Product Owner Bizfly API Gateway
Anh đã có nhiều kinh nghiệm trong việc triển khai và vận hành hệ thống API Gateway nội bộ cho mạng quảng cáo Admicro và mạng xã hội Lotus. Có thời điểm hệ thống này phục vụ lượng request lên tới 90,000 request/s.
Bizfly Cloud - vận hành bởi VCCorp - hiện đang là đơn vị tiên phong cung cấp các giải pháp, dịch vụ hạ tầng kỹ thuật, điện toán đám mây hoàn chỉnh cho các doanh nghiệp trên toàn quốc với các khách hàng lớn như VTV, Vingroup, Đất Xanh Miền Bắc, Ahamove, SSI, Sapo, VNDirect.
相关文章
Nhận định, soi kèo Sabah vs Araz Nakhchivan, 22h30 ngày 4/3: Cửa dưới thất thế
Hư Vân - 04/03/2025 04:30 Nhận định bóng đá g2025-03-05Nhận định, soi kèo Kachin United FC vs Mawyawadi, 16h00 ngày 02/11
Hồng Quân - 02/11/2023 05:00 Nhận định bóng đ2025-03-05Nhận định, soi kèo Sivasspor vs Artvin Hopaspor, 17h00 ngày 02/11
Hồng Quân - 02/11/2023 05:00 Nhận định bóng đ2025-03-05Nhận định, soi kèo Muaither vs Umm Salal, 21h30 ngày 2/11
Phạm Xuân Hải - 02/11/2023 07:05 Nhận định bó2025-03-05Nhận định, soi kèo Urawa Red Diamonds vs Kashiwa Reysol, 13h00 ngày 2/3: Buồn cho chủ nhà
Hồng Quân - 01/03/2025 15:48 Nhật Bản2025-03-05Nhận định, soi kèo Brinje Grosuplje vs Olimpija Ljubljana, 20h00 ngày 02/11
Pha lê - 02/11/2023 06:00 Nhận định bóng đá g2025-03-05
最新评论