SpringCloud
1个回答
展开全部
微服务的优点:
1易于开发和维护,只需要关注每个服务的单独业务即可,不需要关心其他
2启动较快
3局部修改容易部署
4技术栈不受限
5按需伸缩
微服务的缺点:
1运维成本较高
3分布式复杂
4接口调整成本高
SpringCloud 的特点:
1约定优于配置
2开箱即用、快速启动
3适用于各种环境
4轻量级的组件,比如 服务发现组件 Eureka ribbon zuul
5组件的支持很丰富,功能很齐全 包含:配置中心,注册中心,智能路由
6选型中立 比如服务发现组件,不限制必须使用某一种,例如 Eureka,Zookeeper,Consul
Eureka作为服务注册中心,Eureka比Zookeeper好在哪里
著名的CAP理论指出,在一个分布式系统中, 一致性 (Consistency)、 可用性 (Availability)、分区容忍性(Partition tolerance 分区相当于对通信的时限要求)。CAP 原则指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。
一致性(C):在 分布式系统 中的所有数据备份,在同一时刻是否同样的值。(等同于所有节点访问同一份最新的数据副本)
可用性(A):在集群中一部分节点故障后, 集群 整体是否还能响应 客户端 的读写请求。(对数据更新具备高可用性)
分区容忍性(P):以实际效果而言,分区相当于对通信的时限要求。
由于分区容错性在是分布式系统中必须要保证的,因此我们只能在A和C之间进行权衡。在此Zookeeper保证的是CP, 而Eureka则是AP。
传统分布式的模式的缺点
传统式是通过restTemplate硬编码硬性指定ip和端口一旦ip和端口改变name系统直接瘫痪,这个ip和端口改变是不可避免的。
springcloud是通过eureka作为服务的发现也就是注册中心就可以解决这个问题
eureka的集群:
就是多个服务之间互相依赖你中有我我中有你
失效剔除和自我保护
默认每间隔60s服务就会通过心跳检测,检测超过90s没有响应的服务就会剔除,这时候在eureka的面板上就会有提示。
Ribbin 负载均衡
工作原理:
第一步先选择 Eureka Server, 它优先选择在同一个Zone且负载较少的Server;第二步再根据用户指定的策略
负载均衡的侧率:
1默认轮训,
2,随机
3,根据响应速度
开启默认负载均衡只需要价格注解LoadBalanced
@Bean
@LoadBalanced
public RestTemplate restTemplate() {
return new RestTemplate(new OkHttp3ClientHttpRequestFactory());
}
修改调用方式,不再手动获取ip和端口,而是直接通过服务名称调用:
1易于开发和维护,只需要关注每个服务的单独业务即可,不需要关心其他
2启动较快
3局部修改容易部署
4技术栈不受限
5按需伸缩
微服务的缺点:
1运维成本较高
3分布式复杂
4接口调整成本高
SpringCloud 的特点:
1约定优于配置
2开箱即用、快速启动
3适用于各种环境
4轻量级的组件,比如 服务发现组件 Eureka ribbon zuul
5组件的支持很丰富,功能很齐全 包含:配置中心,注册中心,智能路由
6选型中立 比如服务发现组件,不限制必须使用某一种,例如 Eureka,Zookeeper,Consul
Eureka作为服务注册中心,Eureka比Zookeeper好在哪里
著名的CAP理论指出,在一个分布式系统中, 一致性 (Consistency)、 可用性 (Availability)、分区容忍性(Partition tolerance 分区相当于对通信的时限要求)。CAP 原则指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。
一致性(C):在 分布式系统 中的所有数据备份,在同一时刻是否同样的值。(等同于所有节点访问同一份最新的数据副本)
可用性(A):在集群中一部分节点故障后, 集群 整体是否还能响应 客户端 的读写请求。(对数据更新具备高可用性)
分区容忍性(P):以实际效果而言,分区相当于对通信的时限要求。
由于分区容错性在是分布式系统中必须要保证的,因此我们只能在A和C之间进行权衡。在此Zookeeper保证的是CP, 而Eureka则是AP。
传统分布式的模式的缺点
传统式是通过restTemplate硬编码硬性指定ip和端口一旦ip和端口改变name系统直接瘫痪,这个ip和端口改变是不可避免的。
springcloud是通过eureka作为服务的发现也就是注册中心就可以解决这个问题
eureka的集群:
就是多个服务之间互相依赖你中有我我中有你
失效剔除和自我保护
默认每间隔60s服务就会通过心跳检测,检测超过90s没有响应的服务就会剔除,这时候在eureka的面板上就会有提示。
Ribbin 负载均衡
工作原理:
第一步先选择 Eureka Server, 它优先选择在同一个Zone且负载较少的Server;第二步再根据用户指定的策略
负载均衡的侧率:
1默认轮训,
2,随机
3,根据响应速度
开启默认负载均衡只需要价格注解LoadBalanced
@Bean
@LoadBalanced
public RestTemplate restTemplate() {
return new RestTemplate(new OkHttp3ClientHttpRequestFactory());
}
修改调用方式,不再手动获取ip和端口,而是直接通过服务名称调用:
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
Storm代理
2023-05-24 广告
2023-05-24 广告
StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,IP...
点击进入详情页
本回答由Storm代理提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |