1.为什么要将服务注册到nacos?(为了更好的查找这些服务)
2.在Nacos中服务提供者是如何向Nacos注册中心(Registry)续约的?(5秒心跳)
3.对于Nacos服务来讲它是如何判定服务实例的状态?(检测心跳包,15,30)
4.服务消费方是如何调用服务提供方的服务的?(RestTemplate)
5.@Bean注解的作用?(一般用于配置类内部,描述相关方法,用于告诉spring此方法的返回值要交给spring管理,bean的名字默认为方法名,假如需要指定名字可以@Bean(“bean的名字”),最多的应用场景是整合第三方的资源-对象)
6.@Autowired注解的作用?(此注解用于描述属性,构造方法,set方法等,用于告诉spring框架,按找一定的规则为属性进行DI操作,默认按属性,方法参数类型查找对应的对象,假如只找到一个,则直接注入,类型多个时还会按照属性名或方法参数名进行值的注入,假如名字也不同,就出报错.)
7.Nacos中的负责均衡底层是如何实现的?(通过Ribbon实现,Ribbon中定义了一些负载均衡算法,然后基于这些算法从服务实例中获取一个实例为消费方法提供服务)
8.Ribbon 是什么?(Netflix公司提供的负载均衡客户端,一般应用于服务的消费方法)
9.Ribbon 可以解决什么问题? (基于负载均衡策略进行服务调用, 所有策略都会实现IRule接口)
10.Ribbon 内置的负载策略都有哪些?(8种,可以通过查看IRule接口的实现类进行分析)
11.@LoadBalanced的作用是什么?(描述RestTemplate对象,用于告诉Spring框架,在使用RestTempalte进行服务调用时,这个调用过程会被一个拦截器进行拦截,然后在拦截器内部,启动负载均衡策略。)
12.我们可以自己定义负载均衡策略吗?(可以,基于IRule接口进行策略定义,也可以参考NacosRule进行实现)
13.为什么使用feign?(基于Feign可以更加友好的实现服务调用,简化服务消费方对服务提供方方法的调用)。
14.@FeignClient注解的作用是什么?(告诉Feign Starter,在项目启动时,为此注解描述的接口创建实现类-代理类)
15.Feign方式的调用,底层负载均衡是如何实现的?(Ribbon)
16.@EnableFeignCleints 注解的作用是什么?(描述配置类,例如启动类)
【无标题】
最新推荐文章于 2023-08-21 19:03:38 发布
本文详细介绍了Nacos服务注册与发现的机制,包括服务提供者如何通过5秒心跳续约,Nacos如何通过检测心跳判定服务状态。此外,解释了服务消费方使用RestTemplate进行服务调用,以及Ribbon在Nacos中的负载均衡实现。@Bean和@Autowired注解的作用也在文中提及,同时讨论了FeignClient如何简化服务调用,并揭示了Feign和Ribbon在负载均衡中的角色。
摘要由CSDN通过智能技术生成