Spring:Spring-Cloud家族的相关学习笔记

巧了我就是萌 提交于 2020-05-06 12:46:09

前言、Spring-Cloud家族相关

  • 注册中心:Eureka(停止更新,不建议使用)、Zookeeper、Consul、Nacos(阿里巴巴提供的技术),个人觉得可以优先考虑Nacos,其次是Zookeeper
  • 服务调用:Ribbon、LoadBalancer、Feign(停止更新,不建议使用)、OpenFeign
  • 服务降级:Hystrix(不建议)、Resilience4j(国内不流行)、Spring Cloud Sentienl(阿里巴巴提供的技术,推荐使用)
  • 服务网关:Zuul(不建议使用)、GateWay(Spring自己的)
  • 服务配置:Config、Nacos(推荐)
  • 服务总线:Bus、Nacos(推荐)

建议参考网站(还是比较完整的,而且时中文文档,方便阅读): https://www.springcloud.cc/spring-cloud-dalston.html#_features

笔者写一大堆应该也没有人有耐心看吧,直接上源码 ,希望可以帮到各位 https://gitee.com/suyujie/spring-cloud-test

Alibaba相关的技术很多都在工具配置里了,不得不说,确实牛逼,解决了不少配置文件上的麻烦,各位可以到Nacos、Sentinel官网上下载工具试试吧

一、CAP原则

CAP原则又称CAP定理,分别指的是Consistency(一致性)、Avaliability(可用性)、Partition tolerance(分区容错性),其中CAP不可兼顾,所以只能有CA、CP和AP的组合,不存在CAP的组合(不能是的CAP同时存在的原因在P上)

一致性:在分布式系统中,所有数据及其备份在同一时刻的不同节点上是否是相同的值

可用性:集群中,若部分节点不可用,集群整体是否还能响应客户端的读写请求

分区容错性:系统如果在时限内,不能使得数据达到一致性,那么就出现了分区的情况

二、Ribbon的的负载均衡的算法(注意:这些规则的算法不能放在@ComponentScan注解扫描的包下)

轮询(RoundRobinRule)、随机(RandomRule)、重试(RetryRule:轮询算法中,失败了会做重试)、速度权重(WeightedResponseTimeRule:轮询算法中,响应速度最快的权重最大,选择几率更高)、最佳选择(BestAvaliableRule:先过滤经常故障或者中断的服务,再选择并发量最小的服务)、可用过滤(AvaliabilityFilteringRule:先过滤故障的实例,再选择并发较小的)、区域回避(ZoneAvoidanceRule:判断服务所在区域服务器性能和可用性进行选择)

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!