
Spring Cloud生态必问面试题
文章平均质量分 51
似来
一个老程序员
展开
-
一线大厂面试真题——nacos与eureka的区别
④Nacos集群默认采用AP方式,当集群中存在非临时实例时,采用CP模式;Eureka采用AP方式。①Nacos支持服务端主动检测提供者状态:临时实例采用心跳模式,非临时实例采用主动检测模式。Nacos与eureka都支持服务注册和服务拉取,都支持服务提供者心跳方式做健康检测。③Nacos支持服务列表变更的消息推送模式,服务列表更新更及时。②临时实例心跳不正常会被剔除,非临时实例则不会被剔除。Nacos与Eureka的区别。原创 2024-03-07 10:13:46 · 489 阅读 · 0 评论 -
一线大厂面试真题——服务注册和发现是什么意思?Spring Cloud 如何实现服务注册发现?
服务提供者会每隔30秒向eureka发送心跳,报告健康状态,如果eureka服务90秒没接收到心跳,从eureka中剔除。:服务提供者需要把自己的信息注册到eureka,由eureka来保存这些信息,比如服务名称、ip、端口等等。:消费者向eureka拉取服务列表信息,如果服务提供者有集群,则消费者会利用负载均衡算法,选择一个发起调用。我们当时项目采用的eureka作为注册中心,这个也是spring cloud体系中的一个核心组件。主要三块大功能,分别是服务注册 、服务发现、服务状态监控。原创 2024-03-07 10:10:30 · 237 阅读 · 0 评论 -
一线大厂面试真题——放弃FastDFS,拥抱MinIO的7大理由
目前可用于文件存储的网络服务选择也有不少,好比阿里云OSS、七牛云、腾讯云等等,可是收费都有点小贵。为了帮公司节约成本,以前一直是使用FastDFS做为文件服务器,准确的说是图片服务器。直到发现了MinIO,决定放弃FastDFS。一、什么是MinIO?先给大家介绍一下什么是MinIO。MinIO是专门为海量数据存储、人工智能、大数据分析而设计的对象存储系统。据官方介绍,单个对象最大可达5TB。原创 2024-03-06 09:47:28 · 1841 阅读 · 0 评论 -
一线大厂面试真题——谈谈你对NoSQL的理解
随着互联网的发展,NoSQL数据库的产生就是为了解决超大规模和高并发系统中多重数据种类带来的挑战,特别是大数据应用的难题。是,列存储数据库,主要应用于布式数据的储存与管理,分布式可扩展性强,比较有代表性的产品有。就是,图形数据库,主要应用于复杂、互连接但又低结构化的图结构场合,可以用来构建数据关系图。后就是,文档数据库,主要应用于管理半结构化数据或者面向文档的数据,比较有代表性的产品有。模较大,对数据的读性能要求很高,数据表的结构需要经常变,有时还需要做一些聚合查询,,比较容易映射复杂值的环境。原创 2024-03-06 09:38:31 · 592 阅读 · 0 评论 -
一线大厂面试真题——如何解决TCC中的悬挂问题
是否执行过的这个判断,可以在事务控制表里面插入一条事务控制记录来标记这个事务的回滚状态。们在应用的时候都是采用一些成熟的框架,比如Seata,这些框架本身就帮我们解决了。(如图)在TCC事务模式下,我们通过一个事务协调器来管理多个事务,每个事务先。事务参与者的try方法执行成功,就执行confirm方法完成真正逻辑的执行,上,在TCC这个事务解决方案里面,除了悬挂问题以外,还有空回滚、幂等性需。性的实现方案,因此当Try执行成功,就必须确保Confirm。接口有没有执行过,如果已经执行过,原创 2024-03-01 19:05:11 · 387 阅读 · 0 评论 -
一线大厂面试真题——请说一下分布式事务的理解和解决方案
2、另一种是基于BASE理论下的弱一致性事务解决方案,比如TCC事务模型、基于可靠性消息的最终一致性方案、Seata的Saga事务模型等。1、一种是基于XA协议实现的强一致性事务方案,比如Atomikos、Seata中的XA事务模型。在传统架构下,这种问题出现的情况非常少,但是在分布式微服务架构中,分布式事务的问题变得更加突出。最终一致性事务损失了数据的强一致性,通过异步补偿的方式达到数据的最终一致。三个服务所对应的数据是一致的,很显然传统的事务无法解决这个问题!统中的支付功能,它的实现流程如下(如图)。原创 2024-03-05 09:31:04 · 393 阅读 · 0 评论 -
一线大厂面试真题——说说你对CAP的理解
分布式架构之所以复杂,就是因为增加了网络通信,而网络通信本身具有不确定性。但是作为业务支撑的整个技术架构,所有业务的处理必须要具备确定性。因此在这样一个矛盾下,导致架构变得更加复杂。面试题”说说你对CAP的理解“这个问题,就是在这个背景下产生的考察目的这个问题考察难度算中等,主要针对5年以上开发经验的同学。考察目的有两个:1. 了解求职者对于分布式架构的理解2. 在分布式架构中,很多技术方案在落地的时候需要有取舍,要么是CP、要么是AP,理解CAP定理。原创 2024-03-05 09:28:53 · 198 阅读 · 0 评论 -
一线大厂面试真题——谈谈你对Seata的理解
很多面试官都喜欢问一些“谈谈你对xxx技术的理解”,大家遇到这种问题时,是不是完全不知道从何说起.那么我们来看一下,普通人和高手是如何回答这个问题的?问题解答1.在微服务架构下,由于数据库和应用服务的拆分,导致原本一个事务单元中的多个DML操作,变成了跨进程或者跨数据库的多个事务单元的多个DML操作,而传统的数据库事务无法解决这类的问题,所以就引出了分布式事务的概念。2.分布式事务本质上要解决的就是跨网络节点的多个事务的数据一致性问题,业内常见的解决方法有两种a。原创 2024-02-28 14:29:30 · 684 阅读 · 0 评论 -
一线大厂面试真题——谈谈分布式事务的3种解决方案
阶段提交或者3阶段提交的方式去实现,但是如果全局事务管理器中的多个节点,任意一个节点在进。强一致性,数据在某一个时刻会存在不一致的状态,但是最终这些数据会达成一致,这样的好处是提。一致性方案,是指通过第三方事务管理器来协调多个节点的事务性,保证每一个节点的事务达到同。认的时候,由于网络通信延迟导致了阻塞,就会影响到所有节点的事务提交,而这个阻塞过程呢,务是指事务的参与者和支持事务的服务器、资源服务器以及事务管理器,分别位于分布式系统的。质上来说,分布式事务就是为了保证不同数据库数据的一致性。原创 2024-02-28 14:25:57 · 203 阅读 · 0 评论 -
一线大厂面试真题——请你说一下你对服务降级的理解
1、主动降级:这种方式在大促的时候使用比较多,比如在电商平台中,核心服务是下单、支付。务降级本身就是一种兜底的设计方案,主要是出现在分布式架构的设计场景中。比如可以反馈“当前访问人数较多,请稍候再试”,或者让这些用户排队,并显。触发了限流之后,需要给到用户一个反馈,这个反馈同样也称为降级策略。积,造成资源消耗是的服务崩溃的问题,一般会采取熔断策略。,因为系统资源是有限的,为了避免高并发流量把系统压垮导致。点上,而是直接置为失败,这样就避免了请求堆积的问题。,一种是主动降级,一种是基于特定情况的被动降级。原创 2024-02-23 09:35:28 · 358 阅读 · 0 评论 -
一线大厂面试真题——谈谈常用的分布式ID设计方案
谈谈常用的分布式ID设计方案”!一个工作了7年的同学,被问到了这样一个问题。问题并不难,但是在实际面试的时候,如果只是回答1,2,3很难通过面试,因为作为一个高级程序员,还需要有自己的理解和思考。问题解答从几个方面来回答首先,分布式全局ID的的解决方案有很多,比如:1、使用Mysql的全局表2、使用Zookeeper的有序节点3、使用MongoDB的objectid4、redis的自增id5、UUID等等6、......这些方案只是解决基。原创 2024-02-23 09:33:08 · 309 阅读 · 0 评论 -
一线大厂面试真题——Nacos配置更新的工作流程
Nacos作为阿里的开源中间件,在加入到Spring Cloud生态以后。不管是作为配置中心还是注册中心,它的简单易用的特性,被广泛适用在各个互联网公司里面。然后大家会发现Nacos相关的面试也越来越多了。昨天,一个工作了8年的,被面试官问到了这样一个问题:“请你详细说一下Nacos客户端是如何实现配置的动态更新的”。问题解答首先,Nacos是采用长轮训的方式向Nacos Server端发起配置更新查询的功能。所谓长轮训,原创 2024-02-22 10:05:50 · 376 阅读 · 0 评论 -
一线大厂面试真题——请说一下你对分布式和微服务的理解
很难想象,在分布式架构以及微服务架构普及了近10年时间的现在,还有人不清楚微服务架构和分布式架构。问题解答分布式系统简单来说,分布式是一组通过网络进行通信,并且为了完成共同的计算任务的计算机节点组成的系统。分布式系统的设计理念,其实是来自于小型机或者大型机的计算能力的瓶颈和成本的增加。在集中式系统里面,要想提升程序的运行性能,只能不断的升级CPU以及增加内存,但是硬件的提升本身也是有瓶颈的,所以当企业对于计算要求越来越高的时候,集中式架构已经无法满足需求了。在这样。原创 2024-02-22 10:08:32 · 537 阅读 · 0 评论 -
一线大厂面试真题——Redis和Mysql如何保证数据一致性
这个问题难倒了不少工作5年以上的程序员,难的不是问题本身,而是解决这个问题的思维模式。下面来看看普通人和高手对于这个问题的回答。问题解答一般情况下,Redis用来实现应用和数据库之间读操作的缓存层,主要目的是减少数据库IO,还可以提升数据的IO性能。这是它的整体架构。当应用程序需要去读取某个数据的时候,首先会先尝试去Redis里面加载,如果命中就直接返回。如果没有命中,就从数据库查询,查询到数据后再把这个数据缓存到Redis里面。原创 2024-02-21 11:26:10 · 606 阅读 · 0 评论 -
一线大厂面试真题——说说你对一致性Hash算法的理解
最近一个工作4年的程序员,去美团面试,被面试官问到一个一致性hash算法的问题他没回答上来,然后跑过来找我希望我能帮他分析一下这个问题。具体问题是:“说说你对一致性Hash算法的理解问题解答一致性hash,是一种比较特殊的hash算法,它的核心思想是解决在分布式环境下,hash表中可能存在的动态扩容和缩容的问题。为什么会出现一致性hash。原创 2024-02-21 09:30:01 · 529 阅读 · 0 评论 -
一线大厂面试真题——服务注册中心应该是AP还是CP
在互联网去面试的时候,一定会考察求职者分布式架构领域相关的知识。而注册中心是微服务架构里面最重要的核心组件,所以面试频率会比较高。其中“服务注册中心应该是AP还是CP这个问题,就是最近一个工作了5年的遇到的一个问题。考察目的这个问题考察的难度中等偏上,主要考察工作5年以上的同学。考察目的有两个:1.应聘的公司肯定是需要用到微服务架构,所以要了解求职者是否用过注册中心2. 了解求职者是否深入理解注册中心,能够回答这个问题,至少说明对于注册中心的工作原理和价值是有清晰认知的。原创 2024-02-21 09:26:12 · 481 阅读 · 0 评论 -
一线大厂面试真题——Eureka server数据同步原理
一个工作了4年的Java程序员,去一个互联网公司面试,在面试的时候面试官一个劲的问他SpringCloudNetflix组件的底层原理,开始还能回答出来,越到后面越懵逼,最后面试没过。他有点不理解面试官怎么会问这么深,当他把简历发给我的时候,我看到简历上写了精通Spring Cloud。瞬间明白了原因。原创 2024-02-19 14:26:24 · 478 阅读 · 0 评论 -
一线大厂面试真题——什么是服务网格
今天继续来分享一个有趣的面试题,“什么是服务网格”?服务网格这个概念出来很久了,从2017年被提出来,到2018年正式爆发,很多云厂商和互联网企业都在纷纷向服务网格靠拢。像蚂蚁集团、美团、百度、网易等一线互联网公司,都有服务网格的落地应用。在我看来呢,服务网格是微服务架构的更进一步升级,它的核心目的是实现网络通信与业务逻辑的分离,使得开发人员更加专注在业务的实现上。那么基于这个问题,我们来看看普通人和高手的回答。问题解答服务。原创 2024-02-19 14:24:13 · 757 阅读 · 0 评论 -
一线大厂面试真题——说一下对SPI机制的理解以及Dubbo中有哪些SPI机制的实现
Activate 注解定义的激活扩展点,它会根据上下文的相关参数配置,来决定哪些扩展点会被动态激活,主要体现在Filter中。在SPI机制中,服务提供者为某个接口实现具体的类,而在运行时,通过SPI机制,查找到对应的实现类,并将其加载进行使用。SPI这个思想在很多地方都有实现,比如Spring里面的Spring。SPI机制的理解以及Dubbo中提供的SPI机制”。现 ,也就是根据指定名称获取并加载对应的扩展点实现类。具体的实现类由各个数据库厂商提供的驱动包来完成,SPI的思想,衍生了不同的SPI实现。原创 2024-02-04 20:10:40 · 297 阅读 · 0 评论 -
一线大厂面试真题——什么是SPI,它有什么用
(如图),简单来说,就是我们可以定义一个标准的接口,然后第三方的库里面可以实现这。,JDK里面定义了数据库驱动类Driver,它是一个接口,JDK并没有提供实现。源框架里面都借鉴了Java SPI的思想,提供了自己的SPI框架,Dubbo定义了ExtensionLoader,实现功能的扩展。SPI的思想确实很有价值,在实际业务开发中,可以利用这样的思想。在不修改核心代码的情况下,提供功能的增强和扩展。在程序运行的时候,会根据我们声明的驱动类型,来。三方实现的类,从而完成功能的动态扩展机。原创 2024-02-04 20:09:54 · 352 阅读 · 0 评论 -
一线大厂面试真题——Http协议和RPC协议有什么区别?
4、RPC只是一种协议的规范,它并没有具体实现,只有按照RPC通信协议规范实现的通信框架,也就是RPC框架,才是协议的具体实现,比如Dubbo、gRPC等。过程调用协议,它的定位是实现不同计算机应用之间的数据通信,屏蔽通信底层的复杂性,让开发者就像调用本地服务一样完成远程服务的。因此,我们可以在实现RPC框架的时候,自定义报文通信的协议规范、自定义序列化方式、自定义网络通信协议的类型等等。因此,从这个层面来说,http是成熟的应用协议,而RPC只是定义了不同服务之间的通信规范。题考察频率还挺高的。原创 2024-02-03 18:47:33 · 429 阅读 · 0 评论 -
一线大厂面试真题——RPC和HTTP协议有什么区别?
它的核心目标是,让开发人员在进行远程方法调用的时候,就像调用本地方法一样,不需要额外为了完成这个交互做过的编码。基于这样的特点,在RPC协议底层的数据传输,即可以直接使用TCP协议,也可以使用http协议。以,通过这样一个模型,就实现了RPC的目标,让开发者在没有任何感知的情况下。Rpc协议和Http协议完全不是同一个纬度的东西,这两者并没有什么可比性。作为客户端存根,代理客户端请求并把请求参数进行组装,再把组装的参数通过。认为这个问题没什么意义,就顺口问了一句,你随便回答到点上就会让你过。原创 2024-02-03 18:45:12 · 220 阅读 · 0 评论 -
一线大厂面试真题——什么是负载均衡
从四个方面去说1. 负载均衡产生的背景2负载均衡的实现技术3. 负载均衡的作用范围4. 负载均衡的常用算法负载均衡的诞生背景在互联网发展早期,由于用户量较少、业务需求也比较简单。对于软件应用,我们只需要一台高配的服务器即可完成业务的支撑,这样的软件架构称为单体架构随着用户量的增加,服务器的请流量也随之增加,在这个过程中单体架构会产生两个问题1. 软件的性能逐步下降,访问延迟越来越高2.容易出现单点故障。原创 2024-02-02 22:06:52 · 1133 阅读 · 0 评论 -
一线大厂面试真题——带大家理解何为Docker
由于Docker确保了执行环境的一致性,使得应用的迁移更加容易,Docker可以在很多平台上运行,无论是物理机,虚拟机,公有云,私有云,它们的运行结果是一致的,因此用户可以很轻易的将一个平台上运行的应用,迁移到另一个平台上,而不用担心运行环境的变化导致应用无法正常运行这类的问题。开发过程中一个常见的问题是环境一致性问题,由于开发环境,测试环境,生产环境不一致,导致有些bug并未在开发过程中被发现,持续集成,持续交付,部署。核,无需启动完整的操作系统,因此可以做到秒级,甚至毫秒级的启动时间,原创 2024-02-02 21:58:37 · 869 阅读 · 0 评论 -
一线大厂面试真题——5分钟带你快速了解什么是Kubernetes
那么,称霸容器界的k8s,究竟有什么魔力呢?的,这样一来我们就可以通过Docker和K8s来屏蔽基础设施的差异性,在上层进行容器创建以及管理就变得方便多了,所以K8。我们先以Docker容器为例,如果大家不熟悉什么是Docker的话,可以翻阅一下Docker相关的内容。不然每台centos就变成孤立的了,这里就需要用到容器编排的技术,我们就直接以K8。K8s作为当前最知名的容器编排工具,称得上是云原生时代的“操作系统”,熟悉和。这里,要跟大家强调一点,在K8s中最小的操作单元是Pod,它可以理解为是。原创 2024-01-30 21:41:45 · 641 阅读 · 0 评论 -
一线大厂面试真题——谈谈你对ES的理解
复杂的操作,比如join/nested/parent-child搜索,不然容易出现性能问题。2. 第二、使用Java编写,并对Lucene进行封装,隐藏了Lucene的复杂性。避免深分页查询,ES集群的分页查询支持from和size参数,查询的时候,每个。Restful API,不仅简化了ES的操作,还支持任何语言的客户端。当from足够大的时候,就算。生OOM,也会影响到CPU和带宽等,从而影响到整个集群的性能。,也可以作为NoSQL数据库,存储任意格式的文档和数据。数据的分析,是一个跨界开源产品。原创 2024-01-30 21:37:57 · 822 阅读 · 0 评论 -
一线大厂面试真题——关于“你对Spring Cloud的理解”
这样的技术生态,使得我们在落地微服务架构时。Cloud只是Spring官方提供的一套微服务标准定义,而真正的实现目前有。比如说配置管理、服务的注册与发现、服务调用的负载均衡、资源隔离、熔断降。是一套分布式微服务的技术解决方案,它提供了快速构建分布式系统的。一个是Spring Cloud Netflix。是基于阿里巴巴开源组件集成的一套微服务解决方案,其中包。这个公司的开源组件集成的一套微服务解决方案,4.Eureka——服务注册与发现。架构下的技术问题,从而可以让我们更。.Sentinel——熔断降级。原创 2024-01-29 21:30:37 · 493 阅读 · 0 评论 -
一线大厂面试真题——谈谈你对Spring Cloud的理解
最近,有很多应届生也挺焦虑的,说大家都卷,不卷也不行。很多应届生在面试过程中八股文背得不错,但是一聊到项目经验就不知如何说起。有位小伙伴说面试被问到对SpringCloud的理解,自己也回答了,但感觉面试官不满意,说是没有结合项目经验来回答。问题解答SpringCloud的应用背景Spring Cloud是Spring官方推出来的一套微服务解决方案。准确来说,SpringCloud其实是对微服务架构里面出现各种技术场景,定义了一套标准规范。然后,在这套标准里面,原创 2024-01-29 21:29:36 · 525 阅读 · 0 评论 -
一线大厂面试真题——什么是微服务,说一下你对微服务的理解
由于微服务是属于分布式架构下的一种针对应用架构的一种设计风格,所以我们会面临到分布式架构下的一些服务治理等复杂问题。2. 是否具备系统设计和架构能力,能否根据具体业务场景和需求设计合适的微服务架构。微服务是一种架构风格,我们可以把应用程序划分为一组小型的、松散耦合的服务。以用理解的方式去回答,把一些关键点回答正确就差不多了。务都运行在自己的进程中,并通过轻量级的通信机制进行通信。每个服务都是独立部署、独立扩展、独立更新的,从而。1. 是否真正理解微服务架构的特点和概。般面试问这个问题,有两个目的。原创 2024-01-28 19:57:59 · 310 阅读 · 0 评论 -
一线大厂面试真题——分布式事务的原理
所谓强一致性,就是指通过第三方的事务管理器来协调多个节点的事务,保证每个节点的事务达到同时成功和同时失败,为了实现这样一个需求,我们会引入Xopen/DTP模型提供的XA协议,基于2pc或者3pc的方式来实现。但是,在如果全局事务管理器中的多个节点中,如果任意一个节点再进行事务提交确认时,由于网络通信延迟导致阻塞,就会影响到所有节点事务的提交,而这个阻塞过程也会影响阻塞用户的请求线程,这对于用户体验以及整体性能的影响较大。这样的好处是提升了系统的性能。下单接口的成功与否,不仅取决于本地节点的数据库操作,原创 2024-01-28 19:57:09 · 250 阅读 · 0 评论 -
一线大厂面试真题——5分钟带你快速弄懂RPC
从三个维度了解一下RPC1什么是远程调用2什么是RPC3、RPC的运用场景和优势相信看完这个内容,你再也不用担心被问到RPC的问题了!什么是远程调用有的小伙伴误以为,远程调用,是指跨域物理距离的远。实际上,远程调用是指跨进程的功能调用,跨进程可以理解成一个计算机节点的多个进程,或者多个计算机节点的多个进程。有的小伙伴误认为,远程就是距离远。其实,远程并不是指距离上的远程,而是指由于进程和进程之间彼跨越进程的。什么是RPCRPC的概。原创 2024-01-27 18:09:15 · 426 阅读 · 0 评论 -
一线大厂面试真题——Dubbo和Spring Cloud的优缺点对比
其实个人不太愿意,拿Dubbo和SpringCloud进行对比,因为它俩最初出现并不是为了解决同一类问题。但是国内技术是在太卷,加上微服务的盛行,很多互联网大厂也经常会问到这个问题。那么今天,还是给大家来详细聊一聊。两者对比关于Dubbo和SpringCloud的优缺点,以奈菲(Netflix)版本为例,从以下5个方面来分析:1、从整体架构上来看Dubbo和SpringCloud的模式都比较接近,都需要服务提供方,注册中心,服务消费方。差异并不大。原创 2024-01-27 18:05:39 · 454 阅读 · 0 评论 -
一线大厂面试真题——说说Dubbo与Spring Cloud的区别吧
Rest接口调用远程过程的通信,相对来说,Http请求会有更大的报文,占的带宽也。是REST相比RPC更为灵活,服务提供方和调用方的依赖只依靠一纸契约,Boot的优势之上,两个框架在开始目标就不一致,Dubbo。注点主要在于服务的调用,流量分发、流量监控。诞生于微服务架构时代,考虑的是。不存在代码级别的强依赖。微服务治理的方方面面,原创 2024-01-26 22:21:44 · 197 阅读 · 0 评论 -
一线大厂面试真题——请详细说说Dubbo负载均衡的几种策略
[5,3,2],权重总和为10。现在把这些权重值平铺在一维坐标值上,[0,5)区间属于服务器。[5,8)区间属于服务器B,[8,10)区间属于服务器C。比如服务器A、B、C权重比为5:2:1,那么在8次请求中,服务。每收到一个请求,活跃数加1,完成请求后则将活跃数减1。服务运行一段时间后,性能好的服务提供者处理请求的。]的圆环上,查询的时候根据key进行md5然后。的服务,配置更高的权重进行随机访问。请求的响应时间,根据响应时间最短。将收到其中的5次请求,服务器。会收到其中的2次请求,服务器。原创 2024-01-26 22:20:50 · 485 阅读 · 0 评论 -
一线大厂面试真题——什么是Dubbo?它有哪些核心功能
第二层的RPC调用的核心层负责封装和实现整个RPC的调用过程、负载均衡、集群容错、代理等核心功能。,它提供了分布式架构下的服务之间通信方案,使得开发者可以不需要关心网络通信的细节。能、轻量级的开源RPC框架。由10层模式构成,整个分层依赖由。以使得远程服务调用方式和本地服务调用。对网络传输协议和数据转换的封装。6、可视化的服务治理与运。2、智能容错和负载均衡。3、服务自动注册和发现。业务逻辑层由我们自己来提供接。口和实现还有一些配置信息。通过这张图我们也可以将D。4、高度可扩展能力。5、运行期流量调度。原创 2024-01-25 22:07:17 · 272 阅读 · 0 评论 -
一线大厂面试真题——Dubbo的服务请求失败怎么处理
这类的问题,并不需要去花太多时间去背,如果你对于整个技术体系有一定的了解,你就很容易想象到最基本的处理方式。要注意的是,默认基于重试策略的容错机制中,需要注意幂等性的处理,否则在事务型的操作中,容易出现多次数据变更的问题。3. 失败自动恢复策略,后台记录失败请求,然后通过定时任务来对这个失败的请求进行重发。. 快速失败策略,服务消费者只发起一次请求,如果请求失败,就直接把错误抛出去。服务请求失败的场景,默认提供了重试的容错机制,也就是说,如果基于D。点返回,就表示请求执行成功。原创 2024-01-25 22:05:47 · 679 阅读 · 0 评论 -
一线大厂面试真题——Dubbo是如何动态感知服务下线的
什么情况?一个工作了5年的Java程序员,竟然无法回答出这个问题?“Dubbo是如何动态感知服务下线的”?问题解答首先,Dubbo默认采用Zookeeper实现服务的注册与服务发现,简单来说啊,就是多个Dubbo服务之间的通信地址,是使用Zookeeper来维护的。(如图)在Zookeeper上,会采用树形结构的方式来维护Dubbo服务提供端的协议地址,Dubbo服务消费端会从Zookeeper Server上去查找目标服务的地址列表,从而完成服务的注册和消费的功能。原创 2024-01-24 10:46:38 · 495 阅读 · 0 评论 -
一线大厂面试真题——Dubbo的工作原理是什么样的
启动的时候,provider和consumer根据配置信息,连接到注册中心register,阅关系,返回provider信息到consumer,同时consumer会。如果信息有变更,consumer会收到来自register的推。象,同时根据负载均衡策略,选择一台provider,同时定时向。到请求后对数据进行反序列化,然后通过代理调用具体的接口实现。理对象之后,consumer通过代理对象发起接口调用。别向注册中心注册和订阅服务。原创 2024-01-24 10:11:21 · 531 阅读 · 0 评论 -
一线大厂面试真题——简单说一下你对序列化和反序列化的理解
其次呢,序列化的前提是保证通信双方对于对象的可识别性,所以很多时候,我们会把对象先转化为通用的解析格式,比如json、xml等。也就是说,如何把当前JVM进程里面的一个对象,跨网络传输到另外一个JVM。,之所以需要序列化,核心目的是为了解决网络通信之间的对象传输问题。4、技术的成熟度,越成熟的方案使用的公司越多,也就越稳定。在实际开发中,序列化技术的选择对于性能的影响也是比较大的。2、序列化的性能,序列化耗时较长会影响业务的性能。的字节流,根据字节流里面保存的对象描述信息和状态。原创 2024-01-23 18:48:45 · 490 阅读 · 0 评论