Reverse Proxy vs API Gateway vs Load Balancer

preview_player
Показать описание

Animation tools: Adobe Illustrator and After Effects.

Checkout our bestselling System Design Interview books:

ABOUT US:
Covering topics and trends in large-scale system design, from the authors of the best-selling System Design Interview series.
Рекомендации по теме
Комментарии
Автор

The most interesting thing in this video is the responsibilities, which was quickly mentioned but I think it deserves to be in the schematic. While all the items send requests to a particular backend server, they are responsible for the following:

- Reverse proxy - security (hide identity of backend service/endpoint), load distribution, SSL termination, compression & caching.
- API gateway - single point of entry for a collection of micro-services (different APIs/RPCs), routing requests, Authn/Authz, Monitoring & rate-limiting
- Load balancer - high availability & reliability by scaling a single service dynamically (up/down) depending on traffic, Implement routing algos - round robin/least connections/ip hash

The part that I think most people are confused normally is considering a system (e.g., NginX) and considering that it's only a reverse proxy. The video does a great job explaining that it may serve as both Reverse proxy as well as Load balancer.

shauvikr
Автор

My understanding is that a reverse proxy is a generic service sitting between clients and servers, effectively hiding the server's address. On top of it, if this service can also balance load across different servers, then it becomes a load balancer. On top of this, adding features like auth, monitoring and API management, you get an API gateway.

So essentially an API gateway can also act as a load balancer and reverse proxy. For example, Kong, an API gateway, is built on top of nginx, a reverse proxy.

MrAnshulji
Автор

I dropped all the programming subscriptions except for this one. You guys are making some really good explanations. Please go on.

saitaro
Автор

I learned that the three concepts here are not mutually exclusive ideas. Rather, they refer to the different roles of a server placed between the client and the application server(s). Reverse proxy is the name of this server that sits between the client and app servers, acting as the "face." API gateway handles the correct use and distribution of API requests. Load balancer means this server is managing many app servers by monitoring their health and availability. Learning something new today.

sesburg
Автор

Nginx can also route different routes to other services -> see usage as ingress in k8s

fritzfahrmann
Автор

Thank you for yet another great and informative tutorial! I absolutely love your content and please keep it coming for as long as possible! Be well, be safe and Cheers!!

samjones
Автор

How do we make presentations like these?
Are these created via PowerPoint or any other tool?

superanik
Автор

Your animations are great! Do you do it all yourself or hire out for it?

SoftwareLevelUp
Автор

Isn't API Gateway a reverse proxy too? Yes, usually API Gateway comes with more features such as auth, rate limiting, etc. But, fundamentally, API Gateway is a reverse proxy, right?

tototrapsilo
Автор

for deploying micro service application in server do i need to configure those Reverse Proxy, API Gateway, Load Balancer all together?

devops_learner
Автор

Been years since I have seen a new project use nginx, as the Azure and AWS SaaS offerings provide the same features - or better in some cases.

Tony-dprl
Автор

I watch ByteByteGo video frequently i impressed with graphics, also read book High level system design, i am very curios to know how you made this graphics ?

mytechminds
Автор

hello sir, Can you help me know what software help you made a interesting animation like that.

trihahuy
Автор

Which software do you use for making animated slides?

MdIrfan-ipbe
Автор

Adding Ingress controller aswell which is reverse proxy of kubernetes universe

RajKumar-nzru
Автор

finally one of the better designed videos

Xaoticex
Автор

I wrote my own reverse proxy in javascript..
It's not as feature rich as nginx, but it does what I need it to do..
I still want to implement websockets correctly, but that is Future Colin's problem.

ColinRichardson
Автор

In my mind :
- Reverse proxy forward requests to the right server according to the hostname in the request
- API gateway forward requests to the right server according to the path of the request
- Load balancer forward requests to the right server according to criterias of the server (aliveness, latency, requests previously sent, ...)

TotoAstro
Автор

They all are same, the name dictates where is it used.
LB is generally provided by Service provider.
Reverse proxy is a server that you install and manage.
API gateway is just fancy LB with more control over headers and http configs. It generally paired with serverless functions etc etc

leetkhan
Автор

so those three does the same thing (being in the middle) but they are called different names based on the services/task that they do

the_god_killah