API网关Gateway面试小结

  1. 什么是网关?服务访问(流量)的一个入口,类似生活中的“海关“
  2. 为什么使用网关?(服务安全,统一服务入口管理,负载均衡,限流,鉴权)
  3. Spring Cloud Gateway 应用的初始构建过程(添加依赖,配置)
  4. Gateway 服务的启动底层是通过谁去实现的?(Netty网络编程框架-ServerSocket)
  5. Gateway 服务做请求转发时一定要在注册中心进行注册吗?(不一定,可以直接通过远端url进行服务访问)
  6. 网关层面是如何实现负载均衡的?(通过服务名去查找具体的服务实例)
  7. 网关层面是如何通过服务名查找服务实例的?(Ribbon)
  8. 你了解Ribbon中的哪些负载均衡算法?(轮询,权重,hash,……可通过IRule接口进行查看分析)
  9. 网关进行请求转发的流程是怎样,有哪些关键对象?(XxxHandlerMapping,Handler,。。。)
  10. 网关层面服务的映射方式怎样的?(谓词-path,…,服务名/服务实例)
  11. 网关层如何记录服务的映射?(通过map,并要考虑读写锁的应用)
  12. 何为谓词?(网关中封装了判断逻辑的一个对象)
  13. 谓词逻辑的设计是怎样的?(谓词判断逻辑返回值为true则进行请求转发)
  14. 你了解哪些谓词逻辑?(path,请求参数,请求方式,请求头,….)
  15. 我们可以自己定义谓词工厂对象吗?(可以的)
  16. 网关过滤器的作用是什么?(对请求和响应数据做一个预处理)
  17. 网关过滤器的类型有哪些?(局部过滤器,全局过滤器)
  18. 如何理解局部过滤器?(针对具体链路的应用的过滤器,需要进行配置)
  19. 你了解哪些局部过滤器?
  20. 如何理解全局过滤器?(作用于所有请求链路)
  21. 如何自己定义全局过滤器?(直接或间接实现GlobalFilter接口)
  22. 假如现在让你进行平台的网关自研设计,你可以吗?(可以)
  23. 网关层面结合sentinel实现限流,其限流的类型有几种?(两种-route id,api)
  24. 网关层面可以自定义限流后的异常处理结果吗?(可以)
  25. 你知道Sentinel底层限流的算法有哪些?(滑动窗口,令牌桶,漏斗,。。。)

你可能感兴趣的:(面试小结,面试,gateway,java)