Spring Cloud 的一个伟大之处在于它构建在 Spring Boot 的概念之上。Spring Cloud 是建立在 Spring 框架的一些常见构建块之上的,这些构建块如下:

1.智能路由和服务发现
2.服务间调用
3.负载均衡
4.领导选举
5.全局锁
6.分布式配置
7.分布式消息传递

智能路由和服务发现

在使用 Spring Cloud 构建微服务时,需要处理前两个主要的微服务:配置服务和发现服务。

features-of-spring-cloud.png

Spring Cloud 的特点

上面的图表示了一组四个微服务。每个服务之间的连接表示依赖关系。所有服务彼此依赖。配置服务位于顶部,发现服务位于底部。中间有两个微服务,分别是推荐服务和电影服务。

服务间调用

这是“微服务如何通过服务注册表或 Eureka 服务器与其他依赖的微服务进行通信”的过程。服务间调用遵循一系列的步骤。

1.注册服务
2.获取注册表
3.查找下游服务
4.解析底层 IP 地址
5.调用 REST 终端点

负载均衡

负载均衡有效地将网络流量分布到多个后端服务器或服务器池。负载均衡的目标是最大化吞吐量,最小化响应时间,提高效率,并优化资源使用。它避免了任何单个资源的过载。使用具有负载均衡的多个组件可以通过冗余性增加可靠性和可用性。

领导选举

领导选举允许应用程序通过第三方系统与其他应用程序一起工作。领导选举用于在不牺牲可用性的情况下提供全局状态或全局排序。

全局锁

全局锁用于确保没有两个线程同时访问同一资源。程序员使用一种机制来消除这种情况,这称为锁。每个线程首先获取锁,对资源进行操作,然后释放锁供其他线程使用。

分布式配置

分布式配置是为所有微服务的每个实例进行配置的过程。"Spring Cloud Config 服务器"为分布式系统中的外部化配置提供了客户端支持。通过分布式配置,我们有一个集中的位置来管理所有环境中应用程序的外部属性。

分布式消息传递

分布式消息传递系统具有可靠性、可伸缩性和持久性的优点。消息传递模式遵循发布-订阅(Pub-Sub)模型。在发布-订阅模型中,消息的发送者称为发布者,消息的接收者称为订阅者。Apache Kafka 和 RabbitMQ 是流行的高吞吐量消息传递系统。

标签: spring, Spring教程, spring cloud, spring cloud教程, spring cloud框架, spring cloud面试题, springcloud组件, springcloud微服务架构, springcloud入门教程, springcloud主件, spring cloud架构图