ToB企服应用市场:ToB评测及商务社交产业平台

标题: springcloud-注册中心和配置中心 [打印本页]

作者: 三尺非寒    时间: 2024-7-8 21:37
标题: springcloud-注册中心和配置中心
1 注册中心

1.1 为什么要用注册中心

微服务之间会相互调用,如果有两个服务orderService和userService,orderService会调用userService获取当前订单相干的用户信息,且userService部署了多个实例:

大家思索几个问题:
这些都可以通过注册中心来解决
1.2 注册中心的作用

以eureka注册中心为例。

答复之前的各个问题。
问题1:order-service怎样得知user-service实例地址?
获取地址信息的流程如下:
问题2:order-service怎样从多个user-service实例中选择具体的实例?
问题3:order-service怎样得知某个user-service实例是否依然健康,是不是已经宕机?
总结:注册中心的作用
1.3 常用注册中心


详细对比介绍:https://zhuanlan.zhihu.com/p/63263168
1.4 负载均衡

SpringCloud底层其实是利用了一个名为Ribbon的组件,来实现负载均衡功能的。以此为例进行介绍:
注意,Spring Cloud 2020.0.0后官方抛弃了 Netflix 技能栈(Spring Cloud Netflix 进入维护模式将不会再向模块添加新功能和版本更新。只修复block级别的bug以及安全问题),Spring Cloud Netflix中的Ribbon今后版本也不再支持,官方推荐使用Spring Cloud Loadbalancer,大家使用高级别版本的SpringCloud服务要注意。


从http://userservice/user/1到http://localhost:8081,具体的实现过程是:
SpringCloudRibbon的底层采用了一个拦截器,拦截了RestTemplate发出的请求,对地址做了修改。

基本流程如下:
常用的负载均衡规则:
内置负载均衡规则类规则描述RoundRobinRule简朴轮询服务列表来选择服务器。它是Ribbon默认的负载均衡规则。AvailabilityFilteringRule对以下两种服务器进行忽略:   (1)在默认情况下,这台服务器如果3次连接失败,这台服务器就会被设置为“短路”状态。短路状态将持续30秒,如果再次连接失败,短路的持续时间就会几何级地增加。  (2)并发数过高的服务器。如果一个服务器的并发连接数过高,配置了AvailabilityFilteringRule规则的客户端也会将其忽略。并发连接数的上限,可以由客户端的..ActiveConnectionsLimit属性进行配置。WeightedResponseTimeRule为每一个服务器赋予一个权重值。服务器响应时间越长,这个服务器的权重就越小。这个规则会随机选择服务器,这个权重值会影响服务器的选择。ZoneAvoidanceRule以区域可用的服务器为基础进行服务器的选择。使用Zone对服务器进行分类,这个Zone可以理解为一个机房、一个机架等。而后再对Zone内的多个服务做轮询。BestAvailableRule忽略那些短路的服务器,并选择并发数较低的服务器。RandomRule随机选择一个可用的服务器。RetryRule重试机制的选择逻辑1.5 Nacos介绍

Nacos是阿里巴巴的产品,现在是SpringCloud中的一个组件。相比Eureka功能更加丰富,在国内受欢迎程度较高。

Nacos也可以做配置中心。
2 配置中心

2.1 为什么使用配置中心

微服务架构下关于配置文件的一些问题:
2.2 配置中心的作用

配置中心的思路是:
此外,配置中心还有灰度发布、权限管理、版本管理&回滚等特点。
2.3 常用配置中心

Apollo
GitHub:https://github.com/apolloconfig/apollo
官方文档:https://www.apolloconfig.com/#/zh/development/apollo-development-guide
Apollo(阿波罗)是携程框架部门研发的开源配置管理中心,具备规范的权限、流程治理等特性。
Spring Cloud Config
GitHub:https://github.com/spring-cloud/spring-cloud-config
2014年9月开源,Spring Cloud 生态组件,可以和Spring Cloud体系无缝整合。
Nacos
Nacos官网:https://nacos.io/zh-cn/docs/what-is-nacos.html
2.4 Apollo配置中心

2.4.1 Apollo介绍


Apollo(阿波罗)是一款可靠的分布式配置管理中心,诞生于携程框架研发部,可以或许集中化管理应用不同环境、不同集群的配置,配置修改后可以或许及时推送到应用端,而且具备规范的权限、流程治理等特性,实用于微服务配置管理场景。
服务端基于Spring Boot和Spring Cloud开发,打包后可以直接运行,不必要额外安装Tomcat等应用容器。

2.4.2 Apollo特点

2.4.4 Apollo框架





免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4