SpingCloud学习笔记(一)基础性知识

参考链接:https://blog.csdn.net/lzb348110175/article/details/107732513

1.什么是微服务?

  • 微服务架构,是一种架构模式。它提倡将单一应用程序划分成一组小的服务,服务之间相互协调、互相配置,为用户提供最终价值。
  • 每个服务运行在独立的进程中,服务与服务之间采用轻量级的通信机制互相协作(通常是基于 HTTP 协议的 Restful API)。
  • 每个服务都围绕着具体业务进行构建,并且能够被独立的部署到生产环境、类生产环境 等。另外,应当尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据业务上下文,选择合适的语言、工具来对其进行构建。

2.什么是SpringCloud?

  • Spring Cloud 其实是一系列框架的有序集合。它利用 Spring Boot 的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册配置中心消息总线负载均衡断路器数据监控等,都可以用 Spring Boot 的开发风格做到一键启动和部署;
  • Spring Cloud 并没有重复制造轮子,它只是将各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot 风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。
  • 我们可以这样理解:Spring Cloud = 分布式微服务架构的一站式解决方案,是多种微服务架构落地技术的集合体,俗称微服务全家桶

3.Dubbo与SpringCLoud对比(待补充)

1.通信机制方面:Dubbo采用的是RPC协议通信,SpringCloud采用的是HTTP 协议的 Restful API进行通信;

2.组件完善度方面:

3.SpringCloud常用组件说明

在这里插入图片描述

服务注册中心: 推荐使用 Spring Cloud Alibaba Nacos ,不推荐使用 Consul(如果公司不想用新的技术,也可以使用 ZK 作为服务注册中心)
负载均衡: 使用的是 Ribbon。但是这个小伙伴也有点小问题,是个半生不熟的玩意,也进入到了维护的状态。Spring 官方还在继续用,但是后续会推出一个 Spring Cloud LoadBalancer ,它会慢慢取代 Ribbon(官方说明:Ribbon 可以继续使用,但停止更新)(用一句搞笑话来说:Ribbon 停更是轻度患者,Eureka 是进ICU了,已经挂了。)
服务调用: 跟 Ribbon 齐名的 Feign,这哥们差不多也挂了。这哥们长期不更新,Spring 社区实在是等不起了,就自己新出了一个 OpenFeign。(Feign 可以不用了,死翘翘了,2020年推荐使用 OpenFeign
服务降级: 服务降级领域,当属豪猪哥 Hystrix了 。但是豪猪哥也寿终正寝了。官网已经不推荐使用。但是在国内 Hystrix 豪猪哥 是 Spring Cloud 自带的一套服务降级和熔断框架,还在大规模的使用。Hystrix 停更后,国外老外推荐使用 resilience4j,但是在国内,我们还是推荐使用Spring Cloud Alibaba 的 Sentinel(强烈推荐,比 Hystrix 还好用)
服务网关: Zuul,也属于 Netflix。它就有点搞笑了,内部开发团队产生分裂,自己把自己作死了。 Netflex 公司后台想自己再出一个 Zuul2,但是没有开发出来便胎死腹中。此时,Spring 便自己开发出了一个新的服务网关 gateway ,这也是目前推荐的主流网关服务组件。
服务配置: Spring Cloud Config 。它也不再使用了。现在主流推荐:1.携程网的 apolo 2. 强烈推荐使用 Spring Cloud Alibaba Nacos(强烈推荐)
服务总线: Spring Cloud 原生,使用的是 Bus,现在也慢慢的被 Spring Cloud Alibaba Nacos替换了

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

おすすめ

転載: blog.csdn.net/jatej/article/details/114277698