有关微服务Zuul⽹关⾯试题分享【持续更新中】
⼀、⽹关与过滤器有什么区别?
答:⽹关是对所有服务的请求进⾏分析过滤,过滤器是对单个服务⽽⾔。
⼆、常⽤的⽹关框架有哪些?
nginx和网关怎么配合使用
答:Nginx、Zuul、Gateway。
三、Zuul与Nginx有什么区别?
答:Zuul是Java语⾔实现的,主要为Java服务提供⽹关服务,尤其是在微服务架构中可以更加灵活的对⽹关进⾏操作。Nginx 是使⽤C语⾔实现,性能⾼于Zuul,但是实现⾃定义操作需要熟悉Lua语⾔,对程序员要求较⾼,可以使⽤Nginx做Zuul集。
四、既然Nginx可以实现⽹关?为什么还需求使⽤Zuul框架?
答:Zuul是SpringCloud集成的⽹关,使⽤Java语⾔编写,可以对SpringCloud架构提供更灵活的服务。
五、如何设计⼀套API接⼝?
答:考虑到API接⼝的分类可以将API接⼝分为开发API接⼝和内⽹API接⼝,内⽹API接⼝⽤于局域⽹,为内部服务器提供服务。开放API接⼝⽤于对外部合作单位提供接⼝调⽤,需要遵循Oauth2.0权限认证协议。同时还需要考虑安全性、幂等性能问题。
六、ZuulFilter常⽤有哪些⽅法?
答:run() :过滤器的具体业务逻辑。
shouldFilter() :判断过滤器是否有效。
filterOrder() :过滤器执⾏顺序。
filterType() :过滤器拦截位置。
七、如何实现动态Zuul⽹关路由转发?
答:通过Path配置拦截请求,通过ServiceId到配置中⼼获取转发的服务列表,Zuul内部使⽤Ribbon实现本地负载均衡和转发。
⼋、Zuul⽹关如何搭建集?
答:使⽤Nginx的upstream设置Zuul服务集,通过location拦截请求并转发到upstream,默认使⽤轮询机制对Zuul集发送请求。
九、什么是⽹关?
答:⽹关相当于⼀个⽹络服务架构的⼊⼝,所有⽹络请求必须通过⽹关转发到具体的服务。
⼗、⽹关的作⽤是什么?
答:统⼀管理微服务请求、权限控制、负载均衡、路由转发、监控、安全控制⿊名单和⽩名单等。
⼗⼀、什么是SpringCloudZuul(服务⽹关)
答:Zuul是对SpringCloud提供成熟的路由⽅案,它会根据请求的路径不同。⽹关会定位到指定的微服务,并代理请求到不同的微服务接⼝,它对外隐蔽了微服务的真正接⼝地址。
三个重要概念:动态路由表、路由定位、反向代理。
动态路由表:Zuul⽀持Eureka路由,⼿动配置路由,这两种都⽀持⾃动更新。
路由定位:根据请求路径,Zuul有⾃⼰的⼀套定位服务规则以及路由表达式匹配。
反向代理:客户端请求到路由⽹关,⽹关受理之后,再对⽬标发送请求,拿到响应之后再给客户端。它可以和Eureka、Ribbon、Hystrix等组件配合使⽤。
Zuul的应⽤场景:对外暴露、权限校验、服务聚合、⽇志审计等。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。