当前位置: 首页 > 工具软件 > API-Gateway > 使用案例 >

面试向:API Gateway和Load Balancer到底有什么区别

皇甫飞宇
2023-12-01

之前说过 不管是client side discovery service还是sever side discovery service. API gateway一定是要有的。不管这个Load balancer和service registery是不是结合在一起(Ribbon+Eureka, Amazon ELB)。

但是这个结论是不是正确的呢?
首先 我们知道aws lambda, API gateway和amazon ELB都能integrate with lambda.
然后 我们看看API gateway和load balancer到底有什么区别?
API gateway的功能比较多。除了两者都能把对应的rest api的请求对应的相应的微服务外。API gateway还有:

  1. authentication and authorization
  2. support request and response mapping.

可是 同样 你也要为这些功能付出额外的花费。
但是 上面的功能 比如这个验证功能和supprt request功能 不得不用。
所以 就一定要用api gateway了?

首先 我们知道 api gateway和loadbalancer都能manage and balance out network traffic. 但是两者方式不同。api gateway能够直接把request direct到固定的reource(EC2 server or lambda function)中。
而且从两者的名字可以看出来 其实两者并不冲突。gateway就像是一个网关 负责引导所有的requests去相应的地方。load balancer是为了让引入的request 能够较为均衡的引导到不同的服务器里面。

总结:
因为我们的确是需要API Gateway的验证 授权和mapping功能 所以我们还是要保留API gateway 所以现在就是API gateway + ELB/(Ribbon+Eureka)

API Gateway vs Application Load Balancer—Technical Details
Saving Money By Replacing API Gateway With Application Load Balancer’s Lambda Integration
can-api-gateway-act-load-balancer

 类似资料: