Chào mừng bạn tới với website Blogchiaseaz, Hôm nay blogchiaseaz.com sẽ giới thiệu tới bạn về bài viết Kong Api Gateway Là Gì ? Lợi Ích Quan Trọng Của Việc Dùng Api Gateway, Hãy cùng chúng tôi tìm hiểu rõ hơn về bài viết Kong Api Gateway Là Gì ? Lợi Ích Quan Trọng Của Việc Sử dụng Api Gateway bên dưới
Một hệ thống microservices trung bình sẽ sở hữu một vài hoặc hàng trăm những service khác nhau, nếu client giao tiếp trực tiếp với những service này thì sẽ rất là rối rắm và lằng nhằng. Chính vì thế, để sở hữu thể khắc phục vấn đề trên thì API Gateway đã ra đời. Vậy API Gateway là gì? Lợi ích mà nó đem lại là gì? Những san sẻ sau đâu của chúng tôi sẽ giúp bạn hiểu rõ hơn về API Gateway.
Đang xem : Api gateway là gì
Bạn đang đọc:
API Gateway là gì?
API Gateway đóng vai trò là một cổng trung gian giữa client và mạng lưới hệ thống microservices ở đằng sau. Đây là cổng duy nhất để tới mạng lưới hệ thống microservices, API Gateway sẽ nhận những requests từ phía client, nó sẽ chỉnh sửa, xác nhận và điều hướng tới những API đơn cử trên service ở phía sau .
Đây là sơ đồ của mạng lưới hệ thống API Gateway
Kế bên trách nhiệm chính là proxy request thì mạng lưới hệ thống API Gateway thường sẽ đảm nhiệm luôn một số ít vai trò khác như là : Bảo mật API, monitoring, analytics số lượng requests, cũng như thực trạng của mạng lưới hệ thống ở phía sau .
Lợi ích của API Gateway là gì?
Những quyền lợi quan yếu của việc tiêu dùng API Gateway :
Che dấu được cấu trúc của hệ thống microservices với bên ngoài
Clients sẽ tương tác với mạng lưới hệ thống trải qua API Gateway chứ ko phải gọi trực tiếp tới một services đơn cử nào đó. Những endpoints của những service sẽ được gọi nội bộ, sở hữu tức là gọi giữa những service với nhau hoặc nó được gọi từ API Gateway .
Lúc này, người tiêu dùng sẽ được gọi những API này trải qua những public endpoints từ API Gateway. Vì thế, phía client ko cần và cũng ko hề biết được những service từ phía backend được phân loại ra làm sao. Việc refactor code frontend cũng sẽ trở nên thuận tiện hơn so với những developer .
Phần code phía frontend sẽ trở nên gọn ghẽ hơn
Vì ko cần phải tracking nhiều endpoints, tổng thể chỉ việc gọi tới API Gateway nên phần code frontend sẽ trở nên ngăn nắp hơn so với việc phải tracking hàng tá endpoints trên từng service một, nhất là lúc mạng lưới hệ thống ngày một trở nên phình to ra .
Tiện lợi theo dõi và quản lý được traffic
Hầu hết những mạng lưới hệ thống API Gateway được phổ cập thoáng rộng đều sẽ đi kèm những tính năng theo dõi và quản trị được lượng traffic bằng GUI. Hoặc nó trải qua những API của mạng lưới hệ thống Gateway. Ví dụ như với Kong – bản EE .
Kong Enterprise bản EE
Requests caching – thăng bằng tải
API Gateway sẽ kiêm luôn cả vai trò load balancer của mạng lưới hệ thống. Requests sẽ ko được gửi trực tiếp tới backend nên nó sẽ tránh được những rủi ro đáng tiếc mà mạng lưới hệ thống sẽ bị quá tải .
Thêm một lớp bảo mật nữa cho hệ thống
API Gateway sẽ giúp ngăn ngừa những cuộc tiến công bằng cách sẽ thêm một lớp để bảo vệ những loại tiến công như ddos, slq injections, …
Thay thế authentication services
API Gateway thường sẽ phân phối nhiều chính sách xác nhận, hoàn toàn sở hữu thể sử dụng nó để xác nhận người tiêu dùng. Nó giúp tiết kiệm giá thành được thời hạn và làm mạng lưới hệ thống của tất cả chúng ta trở nên đơn thuần hơn .
Ví dụ như một vài chính sách xác nhận để tương hỗ bởi Kong API Gateway
Nhược điểm lúc sử dụng API Gateway là gì?
Ngoài những quyền lợi tuyệt vời trên của API Gateway thì nó cũng sở hữu những điểm yếu kém phải kể tới đó là :
Tăng thời kì response
Xem thêm:
Vì phải đi qua server trung gian nên việc response sẽ bị trễ hơn so với việc gọi trực tiếp tới mạng lưới hệ thống .
Thêm tác nhân gây lỗi
Để hoàn toàn sở hữu thể sử dụng API Gateway thì tất cả chúng ta sẽ phải config, sau đó chỉnh sửa code, quản trị server gateway, … Nó sẽ làm cho tất cả chúng ta thêm việc phải lo. Nếu chẳng may gateway sở hữu lỗi thì những requests sẽ ko hề tới được phía server .
Xem thêm : Bảng Giá Thi Công Làm Sàn Gỗ Công Nghiệp 2020, Cách Lắp Đặt Sàn Gỗ Công Nghiệp Đúng Kĩ Thuật
Mang thể gây tắc nghẽn cổ chai
Nếu như ko được scale hay config một cách kết hợp và hợp lý thì gateway sẽ hoàn toàn sở hữu thể bị quá tải và làm mạng lưới hệ thống của tất cả chúng ta bị chậm .
Triển khai API Gateway cho Microservice với Kong
Tốn thêm tiền
Tiền server, tiền điện, tiền quản trị mạng lưới hệ thống API Gateway, với những mạng lưới hệ thống to thì sẽ cần tới những tính năng sở hữu ích và tốt nhất nên sẽ cần phải tốn thêm tiền để tậu bản Enterprise của những API Gateway. Nếu tính ra thì ngân sách ko hề rẻ một tí ít nào .
Hướng dẫn bạn cách triển khai API Gateway
Dưới đây là 1 số ít góc nhìn trong việc tiến hành và sử dụng API Gateway, thứ nhất bạn cần xem xét những design issues dưới đây :
Hiệu suất và khả năng mở rộng:
Chỉ sở hữu 1 số ít ít những tổ chức hoạt động tiêu khiển theo quy mô của Netflix và cần khắc phục và xử lý hàng tỷ request mỗi ngày. Nhưng so với những ứng dụng, hiệu năng và năng lực lan rộng ra của API Gateway cũng rất trọng. Vì thế, để thiết kế xây dựng API Gateway trên một nền tảng tương hỗ I / O sự ko tương đồng, nonblocking với nhiều khoa học tiên tiến khác nhau .
Trên JVM, bạn cũng hoàn toàn sở hữu thể sử dụng một trong những frameworks NIO-based như Netty, Vertx, Spring Reactor hoặc JBoss Undertow. Một số tùy chọn non-JVM thông dụng là Node. JS. Đây là một nền tảng được thiết kế xây dựng trên JavaScript engine của chrome. Ngoài ra bạn cũng hoàn toàn sở hữu thể sử dụng NGINX Plus .
Sử dụng Reactive Programming Model
API Gateway khắc phục và xử lý 1 số ít request bằng cách đó là định tuyến chúng tới một số ít nhà sản xuất thích hợp. Nó sẽ khắc phục và xử lý những request bằng cách gọi nhiều nhà sản xuất và tổng hợp những tác dụng. Để hoàn toàn sở hữu thể tránh thời hạn hồi sinh thì API Gateway cần thực thi đồng thời những request độc lập. Nhưng đôi lúc nó còn phải nhờ vào giữa những request .
API Gateway thứ nhất cần phải xác nhận request bằng cách gọi một authentication service trước lúc định tuyến request tới một nhà sản xuất đơn cử. Tương tự, để fetch thông tin về những loại sản phẩm sở hữu trong wishlist của người tậu. Trước hết API Gateway cần phải truy xuất hồ sơ của người tậu chứa thông tin đó và sau đó sẽ lấy thông tin cho từng loại sản phẩm .
Viết API Gateway bằng cách đó là sử dụng giải pháp asynchronous callback sẽ gây ra callback hell. Code sẽ bị rối và khó hiểu và rất dễ bị lỗi. Một cách tiếp cận tốt hơn đó là viết API Gateway theo kiểu khai báo bằng cách sử dụng phương pháp phản ứng .
Service Invocation
Một ứng dụng dựa trên microservices chính là một mạng lưới hệ thống phân tán và phải sử dụng chính sách inter-process communication. Mang 2 kiểu xúc tiếp giữa những process đó là : Sử dụng chính sách đó là dựa trên asynchronous messaging – based đã sử dụng những message broker như JMS hoặc AMQP. Một số khác đó là, ví dụ tiêu biểu Zeromq, ko tiêu dùng broker mà những services xúc tiếp trực tiếp với nhau .
Một cách xúc tiếp khác giữa những process khác là chính sách synchronous như HTTP hoặc Thrift. Một mạng lưới hệ thống thường thì sẽ sử dụng cả kiểu asynchronous và synchronous. Vì thế API Gateway sẽ cần phải được tương hỗ nhiều chính sách xúc tiếp khác nhau .
Xem thêm : shop đồng hồ đeo tay nam tphcm
Service Discovery
API Gateway cần phải biết được vị trí của từng service mà nó giao tiếp. Trong một ứng dụng truyền thống, những service được nhất định ở vị trí, nhưng trong một ứng dụng microservices hiện đại, dựa trên cloud, đây chính là một vấn đề rất nan giải. Những nhà sản xuất hạ tầng hạ tầng thường sẽ sở hữu một vị trí tĩnh, nó được xác định thông qua OS environment variables.
Xem thêm:
Nhưng việc xác lập vị trí của một Application services ko phải là điều thuận tiện. Application services sẽ sở hữu được vị trí gán động. Ngoài ra, nó phải tập hợp những instance của service sẽ biến hóa tự động hóa dựa trên sự tự lan rộng ra và tăng cấp. Vì thế, API Gateway sẽ giống như bất kể ứng dụng client nào khác trong mạng lưới hệ thống. Nó cần phải sử dụng chính sách service discovery .
Lời kết
Kỳ vọng những san sẻ trên đã giúp bạn hiểu được API Gateway là gì ? Cũng như những ưu điểm và thiếu sót của nó. Mong rằng những thông tin trên sẽ giúp ích cho bạn trên con đường tăng trưởng sự nghiệp của mình .
Source:
Category:
Một hệ thống microservices trung bình sẽ sở hữu một vài hoặc hàng trăm những service khác nhau, nếu client giao tiếp trực tiếp với những service này thì sẽ rất là rối rắm và lằng nhằng. Chính vì thế, để sở hữu thể khắc phục vấn đề trên thì API Gateway đã ra đời. Vậy API Gateway là gì? Lợi ích mà nó đem lại là gì? Những san sẻ sau đâu của chúng tôi sẽ giúp bạn hiểu rõ hơn về API Gateway.
Đang xem : Api gateway là gì
Bạn đang đọc:
API Gateway là gì?
API Gateway đóng vai trò là một cổng trung gian giữa client và mạng lưới hệ thống microservices ở đằng sau. Đây là cổng duy nhất để tới mạng lưới hệ thống microservices, API Gateway sẽ nhận những requests từ phía client, nó sẽ chỉnh sửa, xác nhận và điều hướng tới những API đơn cử trên service ở phía sau .
Đây là sơ đồ của mạng lưới hệ thống API Gateway
Kế bên trách nhiệm chính là proxy request thì mạng lưới hệ thống API Gateway thường sẽ đảm nhiệm luôn một số ít vai trò khác như là : Bảo mật API, monitoring, analytics số lượng requests, cũng như thực trạng của mạng lưới hệ thống ở phía sau .
Lợi ích của API Gateway là gì?
Những quyền lợi quan yếu của việc tiêu dùng API Gateway :
Che dấu được cấu trúc của hệ thống microservices với bên ngoài
Clients sẽ tương tác với mạng lưới hệ thống trải qua API Gateway chứ ko phải gọi trực tiếp tới một services đơn cử nào đó. Những endpoints của những service sẽ được gọi nội bộ, sở hữu tức là gọi giữa những service với nhau hoặc nó được gọi từ API Gateway .
Lúc này, người tiêu dùng sẽ được gọi những API này trải qua những public endpoints từ API Gateway. Vì thế, phía client ko cần và cũng ko hề biết được những service từ phía backend được phân loại ra làm sao. Việc refactor code frontend cũng sẽ trở nên thuận tiện hơn so với những developer .
Phần code phía frontend sẽ trở nên gọn ghẽ hơn
Vì ko cần phải tracking nhiều endpoints, tổng thể chỉ việc gọi tới API Gateway nên phần code frontend sẽ trở nên ngăn nắp hơn so với việc phải tracking hàng tá endpoints trên từng service một, nhất là lúc mạng lưới hệ thống ngày một trở nên phình to ra .
Tiện lợi theo dõi và quản lý được traffic
Hầu hết những mạng lưới hệ thống API Gateway được phổ cập thoáng rộng đều sẽ đi kèm những tính năng theo dõi và quản trị được lượng traffic bằng GUI. Hoặc nó trải qua những API của mạng lưới hệ thống Gateway. Ví dụ như với Kong – bản EE .
Kong Enterprise bản EE
Requests caching – thăng bằng tải
API Gateway sẽ kiêm luôn cả vai trò load balancer của mạng lưới hệ thống. Requests sẽ ko được gửi trực tiếp tới backend nên nó sẽ tránh được những rủi ro đáng tiếc mà mạng lưới hệ thống sẽ bị quá tải .
Thêm một lớp bảo mật nữa cho hệ thống
API Gateway sẽ giúp ngăn ngừa những cuộc tiến công bằng cách sẽ thêm một lớp để bảo vệ những loại tiến công như ddos, slq injections, …
Thay thế authentication services
API Gateway thường sẽ phân phối nhiều chính sách xác nhận, hoàn toàn sở hữu thể sử dụng nó để xác nhận người tiêu dùng. Nó giúp tiết kiệm giá thành được thời hạn và làm mạng lưới hệ thống của tất cả chúng ta trở nên đơn thuần hơn .
Ví dụ như một vài chính sách xác nhận để tương hỗ bởi Kong API Gateway
Nhược điểm lúc sử dụng API Gateway là gì?
Ngoài những quyền lợi tuyệt vời trên của API Gateway thì nó cũng sở hữu những điểm yếu kém phải kể tới đó là :
Tăng thời kì response
Xem thêm:
Vì phải đi qua server trung gian nên việc response sẽ bị trễ hơn so với việc gọi trực tiếp tới mạng lưới hệ thống .
Thêm tác nhân gây lỗi
Để hoàn toàn sở hữu thể sử dụng API Gateway thì tất cả chúng ta sẽ phải config, sau đó chỉnh sửa code, quản trị server gateway, … Nó sẽ làm cho tất cả chúng ta thêm việc phải lo. Nếu chẳng may gateway sở hữu lỗi thì những requests sẽ ko hề tới được phía server .
Xem thêm : Bảng Giá Thi Công Làm Sàn Gỗ Công Nghiệp 2020, Cách Lắp Đặt Sàn Gỗ Công Nghiệp Đúng Kĩ Thuật
Mang thể gây tắc nghẽn cổ chai
Nếu như ko được scale hay config một cách kết hợp và hợp lý thì gateway sẽ hoàn toàn sở hữu thể bị quá tải và làm mạng lưới hệ thống của tất cả chúng ta bị chậm .
Triển khai API Gateway cho Microservice với Kong
Tốn thêm tiền
Tiền server, tiền điện, tiền quản trị mạng lưới hệ thống API Gateway, với những mạng lưới hệ thống to thì sẽ cần tới những tính năng sở hữu ích và tốt nhất nên sẽ cần phải tốn thêm tiền để tậu bản Enterprise của những API Gateway. Nếu tính ra thì ngân sách ko hề rẻ một tí ít nào .
Hướng dẫn bạn cách triển khai API Gateway
Dưới đây là 1 số ít góc nhìn trong việc tiến hành và sử dụng API Gateway, thứ nhất bạn cần xem xét những design issues dưới đây :
Hiệu suất và khả năng mở rộng:
Chỉ sở hữu 1 số ít ít những tổ chức hoạt động tiêu khiển theo quy mô của Netflix và cần khắc phục và xử lý hàng tỷ request mỗi ngày. Nhưng so với những ứng dụng, hiệu năng và năng lực lan rộng ra của API Gateway cũng rất trọng. Vì thế, để thiết kế xây dựng API Gateway trên một nền tảng tương hỗ I / O sự ko tương đồng, nonblocking với nhiều khoa học tiên tiến khác nhau .
Trên JVM, bạn cũng hoàn toàn sở hữu thể sử dụng một trong những frameworks NIO-based như Netty, Vertx, Spring Reactor hoặc JBoss Undertow. Một số tùy chọn non-JVM thông dụng là Node. JS. Đây là một nền tảng được thiết kế xây dựng trên JavaScript engine của chrome. Ngoài ra bạn cũng hoàn toàn sở hữu thể sử dụng NGINX Plus .
Sử dụng Reactive Programming Model
API Gateway khắc phục và xử lý 1 số ít request bằng cách đó là định tuyến chúng tới một số ít nhà sản xuất thích hợp. Nó sẽ khắc phục và xử lý những request bằng cách gọi nhiều nhà sản xuất và tổng hợp những tác dụng. Để hoàn toàn sở hữu thể tránh thời hạn hồi sinh thì API Gateway cần thực thi đồng thời những request độc lập. Nhưng đôi lúc nó còn phải nhờ vào giữa những request .
API Gateway thứ nhất cần phải xác nhận request bằng cách gọi một authentication service trước lúc định tuyến request tới một nhà sản xuất đơn cử. Tương tự, để fetch thông tin về những loại sản phẩm sở hữu trong wishlist của người tậu. Trước hết API Gateway cần phải truy xuất hồ sơ của người tậu chứa thông tin đó và sau đó sẽ lấy thông tin cho từng loại sản phẩm .
Viết API Gateway bằng cách đó là sử dụng giải pháp asynchronous callback sẽ gây ra callback hell. Code sẽ bị rối và khó hiểu và rất dễ bị lỗi. Một cách tiếp cận tốt hơn đó là viết API Gateway theo kiểu khai báo bằng cách sử dụng phương pháp phản ứng .
Service Invocation
Một ứng dụng dựa trên microservices chính là một mạng lưới hệ thống phân tán và phải sử dụng chính sách inter-process communication. Mang 2 kiểu xúc tiếp giữa những process đó là : Sử dụng chính sách đó là dựa trên asynchronous messaging – based đã sử dụng những message broker như JMS hoặc AMQP. Một số khác đó là, ví dụ tiêu biểu Zeromq, ko tiêu dùng broker mà những services xúc tiếp trực tiếp với nhau .
Một cách xúc tiếp khác giữa những process khác là chính sách synchronous như HTTP hoặc Thrift. Một mạng lưới hệ thống thường thì sẽ sử dụng cả kiểu asynchronous và synchronous. Vì thế API Gateway sẽ cần phải được tương hỗ nhiều chính sách xúc tiếp khác nhau .
Xem thêm : shop đồng hồ đeo tay nam tphcm
Service Discovery
API Gateway cần phải biết được vị trí của từng service mà nó giao tiếp. Trong một ứng dụng truyền thống, những service được nhất định ở vị trí, nhưng trong một ứng dụng microservices hiện đại, dựa trên cloud, đây chính là một vấn đề rất nan giải. Những nhà sản xuất hạ tầng hạ tầng thường sẽ sở hữu một vị trí tĩnh, nó được xác định thông qua OS environment variables.
Xem thêm:
Nhưng việc xác lập vị trí của một Application services ko phải là điều thuận tiện. Application services sẽ sở hữu được vị trí gán động. Ngoài ra, nó phải tập hợp những instance của service sẽ biến hóa tự động hóa dựa trên sự tự lan rộng ra và tăng cấp. Vì thế, API Gateway sẽ giống như bất kể ứng dụng client nào khác trong mạng lưới hệ thống. Nó cần phải sử dụng chính sách service discovery .
Lời kết
Kỳ vọng những san sẻ trên đã giúp bạn hiểu được API Gateway là gì ? Cũng như những ưu điểm và thiếu sót của nó. Mong rằng những thông tin trên sẽ giúp ích cho bạn trên con đường tăng trưởng sự nghiệp của mình .
Source:
Category: