Spring Cluod介绍


Spring Cloud是一个中间件。由Spring官方开发维护,基于Spring Boot开发。
Spring Cloud提供了一套完整的微服务解决方案。包括服务API网关、注册与发现、配置中心、全链路监控、熔断器等中立和可替换(扩展)的开源组件。

Spring Cloud项目模块

Spring Cloud组件列表如下:

组件名称所属项目组件分类
Eurekaspring-cloud-netfix注册中心
Zuulspring-cloud-netfix网关(第一代)
Sidecarspring-cloud-netfix多语言
Ribbonspring-cloud-netfix负载均衡
Hystrixspring-cloud-netfix熔断器
Turbinespring-cloud-netfix集群监控
Feignspring-cloud-openfeign声明式HTTP客户端
Consulspring-cloud-consul注册中心
Gatewayspring-cloud-gateway网关(第二代)
Sleuthspring-cloud-sleuth链路追踪
Configspring-cloud-config配置中心
Busspring-cloud-bus总线
Pipelinespring-cloud-pipelines部署管道
Dataflowspring-cloud-dataflow数据处理

一般使用到的相关模块结构如下:
在这里插入图片描述

服务治理中间件(注册中心)

服务治理中间件包含服务注册与发现、服务路由、负载均衡、自我保护、治理管理机制等功能。

在Spring Cloud框架的服务治理体系中,可以使用Eureka或者Console作为注册中心,通过Hystrix进行熔断自我保护Fallback,通过Ribbon进行负载均衡。

关于注册中心的选型比较如下:

特性EurekaConsulZookepper
服务健康检查可配支持服务状态,内存,硬盘等(弱)长连接,keepalive
多数据中心-支持-
kv存储服务-支持支持
一致性-raftpaxos
capapcacp
使用接口http(sider)http、dns客户端
watch支持支持long polling / 大部分增量全量 / 支持long polling支持
自身监控metricsmetrics-
安全-acl / httpsacl

网关中间件

网关至少需要具备4大功能:统一接入功能、协议适配功能、流量管控功能、安全防护功能。

在Spring Cloud框架的网关体系中,主要有第一代网关Zuul和第二代网关Gateway
第一代网关Zuul可以做到开箱即用,缺点是最多能达到1000至2000的QPS。不适用于高并发场景。
第二代网关Gateway底层基于Netty实现,支持高并发。

配置中心中间件

配置中心支持各种复杂的配置场景,与公司的运维体系和权限管理体系集成,各种配置兼容支持。

在Spring Cloud框架的配置中心体系中,使用Spring Cloud Config把原本放在本地文件的配置抽取出来放在中心服务器,提供更好的管理、发布能力,。
Spring Cloud Config基于应用、环境、版本三个维度管理。配置存储支持其他扩展存储,无缝支持Spring里Environment和PropertySource的接口,缺点是没有可视化的控制平台。

全链路监控中间件

全链路监控用于收集、汇总并分析日志信息,进行可视化展示和监控告警。
包含定位慢调用、定位各种错误、定位各种异常、展现依赖和拓扑、Trace调用链、应用告警灯。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值