【039期】JavaEE面试题(十一):Spring Cloud(2)
【032期】JavaEE面试题(四)Spring(2)
开篇介绍
大家好,我是Java最全面试题库的提裤姐,今天这篇是JavaEE系列的第十一篇,主要总结了SpringCloud相关的问题,这篇是第二篇;在后续,会沿着第一篇开篇的知识线路一直总结下去,做到日更!如果我能做到百日百更,希望你也可以跟着百日百刷,一百天养成一个好习惯。
Q:
Eureka怎么实现高可用?
集群:
注册多台 Eureka,把 SpringCloud服务互相注册,客户端从 Eureka获取信息时,按照 Eureka的顺序来访问。
Q:
ZuulFilter常用有哪些方法?
run()
:过滤器的具体业务逻辑shouldFilter()
:判断过滤器是否有效filterOrder()
:过滤器执行顺序filterType()
:过滤器拦截位置
Q:
如何实现动态Zuul网关路由转发?
通过path
配置拦截请求,通过 Serviceld
到配置中心获取转发的服务列表,zuul内部使用 Ribbon
实现本地负载均衡和转发。
Q:
Zuul网关如何搭建集群?
使用Nginx的 upstream
设置Zuul服务集群,通过location
拦截请求并转发到 upstream
,默认使用轮询机制对Zuul集群发送请求。
Q:
负载平衡的意义什么?
通俗易懂的理解:
集群:是把一个的事情交给多个人去做,假如要做1000个产品给一个人做要10天,叫10个人做就是一天;
负载均衡:用来控制集群,他把做的最多的人让他慢慢做休息会,把做的最少的人让他加量让他做多点。
在计算中:
负载平衡可以改善跨计算机计算机集群,网络链接,中央处理单元或磁盘驱动器等多种计算资源的工作负载分布,负载平衡旨在优化资源使用,最大化吞吐量,最小化响应时间并避免任何单一资源的过载,使用多个组件进行负载平衡,而不是单个组件,可能会通过冗余来提高可靠性和可用性,负载平衡通常及专用软件或硬件,例如多层交换机或域名系统服务器进程。
Q:
服务降级底层是如何实现的?
Hystrix实现服务降级的功能是通过重写 HystrixCommand
中的 getFallback()
方法,当 Hystrix的run方法或 construct执行发生误时转而执行 getFallback()
方法。
Q:
什么是 Spring Cloud Bus?
Spring Cloud Bus就像个分布式执行器,用于扩展的 Spring Boot应用程序的配置文件,但也可以用作应用程序之间的通信通道。
Spring Cloud Bus不能单独完成通信,需要配合MQ支持
Spring Cloud Bus一般是配合Spring Cloud Config做配置中心的
Spring Cloud config实时刷新也必须采用 SpringCloud Bus消息总线
Q:
Spring Cloud Bus 原理?
发送端(endpoint)构造事件event,将其publish到context上下文中(spring cloud bus有一个父上下文,bootstrap),然后将事件发送到channel中(json串message),接收端从channel中获取到message,将message转为事件event,然后将event事件publish到context上下文中,最后接收端(Listener)收到event,调用服务进行处理。
整个流程中,只有发送/接收端从context上下文中取事件和发送事件是需要我们在代码中明确写出来的,其它部分都由框架封装完成。
Q:
SpringCloud Config可以实现实时刷新吗?
springcloud config实时刷新采用 SpringCloud Bus
消息总线
Q:
什么是服务熔断?什么是服务降级?
熔断机制:
是应对雪崩效应的一种微服务链路保护机制
。
当某个微服务不可用或者响应时间太长时,会进行服务降级,进而熔断该节点微服务的调用,快速返回“错误”的响应信息。当检测到该节点微服务调用响应正常后恢复调用链路。
在SpringCloud框架里熔断机制通过Hystrix
实现,Hystrix会监控微服务间调用的状况,当失败的调用到一定阈值,缺省是5秒内调用20次,如果失败,就会启动熔断机制。
服务降级:
一般是从整体负荷考虑。就是当某个服务熔断之后,服务器将不再被调用,此时客户端可以自己准备一个本地的fallback回调,返回一个缺省值
Q:
什么是服务雪崩效应?
雪崩效应是在大型互联网项目中,当某个服务发生宕机时,调用这个服务的其他服务也会发生宕机,大型项目的微服务之间的调用是互通的,这样就会将服务的不可用逐步扩大到各个其他服务中,从而使整个项目的服务宕机崩溃
“一个专注于分享各类Java面试题的号主,长按二维码关注我吧 ”
祝大家都能拿到心仪的offer!
等风也等你
文章都看完了不点个 吗