19-SpringCloud面经必威体育精装版面试题.doc

19-SpringCloud面经必威体育精装版面试题.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SpringCloud面经 说说SpringBoot和SpringCloud的区别? 1、SpringCloud就是一个框架的整合集; 2、SpringCloud中最强的是SpringCloudAlibaba和Netflix(奈飞); 3、SpringBoot是用来快速开发Spring项目的; 4、SpringBoot和SpringCloud的关系是:由SpirngCloud将各类不同的框架整合,再由SpringBoot进行简化开发。 SpringCloud和Dubbo对比 1、SpringCloud与Dubbo都是实现微服务有效的工具; 2、Dubbo只是实现了服务治理,而SpringCloud子项目分别覆盖了微服务架构下的众多部件; 3、Dubbo使用RPC通讯协议(传输层,基于TPC协议),SpirngCloud使用RESTful完成通信(应用层,基于HTTP协议),Dubbo效率略高于SpringCloud。 注: RPC是TCP层(传输层)协议,底于底层协议效率更高,但功能不够丰富; RESTful是HTTP协议(应用层),功能丰富,操作更简单,但效率相对较低。 SpringCloud的核心组件有哪些? 1、服务发现—Netflix Eureka 2、客服端负载均衡—Netflix Ribbon 3、断路器—Netflix Hystrix 4、服务网关—Spring Cloud Gateway 5、分布式配置—Spring Cloud Config 说一说Eureka? Eureka是Netfilix公司公源的一个服务注册与发现的组件。 Eureka和其他Netfilix公司的服务组件(例如负载均衡、熔断器、网关等)一起被SpringCloud社区整合为Spring-Cloud-Netflix模块。 Eureka包含两个组件:EurekaServer(注册中心)和EurekaClient(服务提供者、服务消费者)。 不过Eureka目前已经停止更新了,现在一般用的是Nacos。 什么是Eureka的自我保护机制? 如果一个Eureka服务器上面注册了多个微服务,其中一个微服务器已经死机,按理说,我们Eureka服务器会把这个微服务给剔除,但是Eureka一旦开启自我保护机制(默认开启),这种死掉的机器也不会被剔除。 自我保护机制是防止微服务假死或者网络波动而导致暂时的死亡,宁可保留也不选择剔除。 说一说Ribbon? Ribbon是Netflix提供的一个基于HTTP和TCP的客户端负载均衡工具。(如果导入了Eureka的jar包,就不需要再导Ribbon的jar包) Ribbo两大主要功能: 1、简化远程调用——通过服务名称,找到服务,自动进行URL自动拼接 2、负载均衡——创建代理对象 Ribbon的负载均衡策略有哪些? Ribbon负载均衡策略(七种): 1、随机:RandomRule 2、轮询:RoundRobinRule 【默认】 3、最小并发(访问最闲的,由Eureka判断):BestAvaliableRule 4、过滤(过滤掉并发太高,或者坏掉的):AvailabilityFilteringRule 5、响应时间(发一个包,判断响应快慢):WeightedResponseTimeRule 6、轮询重试(再加一轮轮询):RetryRule 7、性能可用性(综合判断性能):ZoneAvoidanceRule 说一说Feign? Feign是一个声明式的REST客户端,它用了“基于接口”的注解方式,很方便实现客户端配置。 Feign是对Ribbon的封装,所以也可以作负载均衡。本质作用还是实现两个服务之间的远程调用。 使用Feign进行远程调用,不需要再去写URL。 Feign的底层就是http协议。 说说Feign和Dubbo的区别是什么? 相同点:都依赖注册中心、负载均衡。 不同点: Dubbo: 支持多传输协议(Dubbo、Rmi、http、redis等等),可以根据业务场景选择最佳的方式。非常灵活。 默认的Dubbo协议:利用Netty,TCP传输,单一、异步、长连接,适合数据量小、高并发和服务提供者远远少于消费者的场景。 Feign: 基于Http传输协议,短连接,不适合高并发的访问。 Hystrix有什么作用? Hystrix主要用于出现级联失败(也就是雪崩),也就是防止一个失败而导致的一连串的失败(区分“缓存雪崩”,两者不同)。 Hystrix在微服务的外面进行保护,主要功能有: 隔离 线程池隔离(操作线程):总线程池针对不同的服务,各自分配一定数量的线程数,从而防止一个服务失败,占用所有线程。 信号量隔离(操作变量):设置不同服务的线程阈(yu)值,达到阈值则不再给该服务分配线程,理由如上。

文档评论(0)

188****0747 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档