SpringCLoud官网架构图
SpringCloud简介
SpringCloud是一系列框架的有序集合。它基于SpringBoot的便利性融合了一整套实现微服务的框架并提供了服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等组件。
SpringCloud个人理解应该包括以下服务
- 服务注册与发现 Eureka
- 服务调用 OpenFeign
- 服务熔断、降级、限流 Hystrix
- 负载均衡 RIbbon
- 服务消息驱动 Stream
- 配置中心 Config
- 服务监控 HystrixDashboard
- 全链路追踪 Sleuth
- 服务定时任务调度
- 自动化构建部署
SpringCloud的特点
- 约定优于配置
- 开箱即用、快速启动
- 适用于各种环境
- 轻量级的组件
- 组件支持丰富,功能齐全
服务调度方式
不同于dubbo的RPC,SpringCloud服务调度方式为REST API
Eureka基础知识理解
什么是服务治理
在传统的rpc远程调用框架中,管理每个服务与服务之间依赖关系比较复杂,所以使用服务治理来管理服务与服务之间的依赖关系,可以实现服务调用、负载均衡、容错、服务发现与注册等。
注册与发现
Eureka Server作为五福注册功能的服务器,它是服务注册中心,系统中的其他微服务使用Eureka Client连接到Eureka Server并维持心跳连接。 这样就可以通过Eureka Server来监控系统中各个服务是否正常。
当服务启动的时候,会吧自己的服务器信息如服务名、服务地址、通讯地址等以别名方式注册到注册中心。(消费者||服务提供者)以该别名去注册中心获取实际服务的通讯地址,然后实现RPC调用。
在注册中心管理的每个服务跟服务之间有个一依赖关系,在任何rpc远程框架中都会有一个注册中心来存放请求的地址
Eureka 包含两个组件
Eureka Server 提供服务注册 所有Client都注册进Server,Server在页面中可以直观的看到每个Client
Eureka Client 通过注册中心进行访问 (默认发送Server的心跳间隔为30s)如果Server在多个周期内没有收到Client的心跳,将会从服务中心将该Client剔除。(默认90s)
CAP基本概念
-
C 全拼 Consistency 表示 一致性
-
A 全拼 Availability 表示 可用性
-
P 全拼 Partition tolerance 表示 分区容错性
Eureka是基于AP
本文是在学习过程中整理,如有错误欢迎各位大佬指正!O(∩_∩)O
陆续更新中……