一年没有面试了,想着试着面试一下,看看外边行情,检验自己的技术深度,不料被面试官的提问难倒了,面试官提问: 你们项目架构中使用到了哪些技术栈?SpringBoot、SpringCloud
自我介绍谈谈自己负责的项目(背景、自己负责的模块流程)SpringCloud基于什么协议?用过Dubbo吗?说说SpringCloud和Dubbo的区别?因此带着问题重新学习SpringCloud和Dubbo等知识。1.什么是SpringCloud?
Spring Cloud为开发人员提供了工具,以快速构建分布式系统中的一些常见模式(例如,配置管理,服务发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁,领导选举,分布式会话,群集状态)。它们可以在任何分布式环境中正常工作,包括开发人员自己的笔记本电脑,裸机数据中心以及Cloud Foundry等托管平台。
待有时间更新。
复制代码
13.Ribbon是什么?
提供云端负载均衡,有多种负载均衡策略可供选择,可配合服务发现和断路器使用。
14.Ribbon负载均衡的注解是?
@LoadBalanced
15.Ribbon负载均衡策略有哪些?
RandomRule : 随机。
RoundRobinRule : 轮询。
RetryRule : 重试。
WeightedResponseTimeRule : 权重。
ClientConfigEnabledRoundRobinRule : 一般不用,通过继承该策略,默认的choose就实现了线性轮询机制。可以基于它来做扩展。
BestAvailableRule : 通过便利负载均衡器中维护的所有服务实例,会过滤到故障的,并选择并发请求最小的一个。
PredicateBasedRule : 先过滤清单,再轮询。
AvailabilityFilteringRule :继承了父类的先过滤清单,再轮询。调整了算法。
ZoneAvoidanceRule : 该类也是PredicateBasedRule的子类,它可以组合过滤条件。以ZoneAvoidancePredicate为主过滤条件,以AvailabilityPredicate为次过滤条件。
16.什么是服务熔断?
服务熔断的作用类似于我们家用的保险丝,当某服务出现不可用或响应超时的情况时,为了防止整个系统出现雪崩,暂时停止对该服务的调用。
17.什么是服务降级?
服务降级是当服务器压力剧增的情况下,根据当前业务情况及流量对一些服务和页面有策略的降级,以此释放服务器资源以保证核心任务的正常运行。
18.什么是Hystrix?
熔断器,容错管理工具,旨在通过熔断机制控制服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力。、
19.断路器Hystrix的有哪些功能?
通过第三方客户端访问依赖服务出现高延迟或者失败时,为系统提供保护和控制 。在复杂的分布式系统中防止级联失败(服务雪崩效应) 。快速失败 (Failfast) 同时能快速恢复。提供失败回滚 (Fallback) 和优雅的服务降级机制。提供近实时的监控、 报警和运维控制手段。
20.Hystrix将远程调用封装到?
HystrixCommand 或者 HystrixObservableCommand对象中。
21.启动熔断降级服务的注解?
@EnableHystrix
22.什么是Feign?
Feign是一种声明式、模板化的HTTP客户端。
复制代码
23.Feign优点?
1.feign采用的是基于接口的注解。 2.feign整合了ribbon,具有负载均衡的能力。 3.整合了Hystrix,具有熔断的能力。