美文网首页
2. 微服务解决方案之Spring Cloud

2. 微服务解决方案之Spring Cloud

作者: RandyLou | 来源:发表于2020-09-24 07:25 被阅读0次

    1. 概述

    微服务是复杂业务的良好解决方案,但是实现成本和难度都略高,Spring Cloud大大简化的这个步骤。这一章主要讲业务常用的解决方案,包括:

    1. Spring Cloud Netflix
    2. Spring Cloud Alibaba

    2. 什么是Spring Cloud

    Spring Cloud是帮助开发者快速构建微服务的工具,主要致力于解决如下问题:

    • 配置中心,提供版本号、有审核的配置管理
    • 服务注册与发现
    • 智能路由
    • 负载均衡
    • 断路器
    • 领导者选举
    • 分布式消息
    • 微代理(micro-proxy)
    • 控制总线(control bus)
    • Token(one-time token)
    • 分布式锁(global locks)
    • 分布式session
    • 集群状态(cluster state)

    Spring本身擅长的是整合,将一些优秀的开源组件按照Spring Cloud的规范,引入到Spring Cloud中,极大的简化使用的复杂度。Spring Cloud Alibaba和Spring Cloud Netflix就是符合对应Spring Cloud规范的一套实现。

    3. Spring Cloud的版本简介

    Spring Cloud本身的版本是通过伦敦的地铁站名词命名的。通过官网你可以看对对应版本匹配的Spring Boot版本:

    对应Spring Boot版本

    官网的Spring Cloud下放置了对应组件,组件会带对应兼容的版本号:

    对应组件版本

    4. Spring Cloud Netflix

    Spring Cloud Netflix是Netflix的一系列组件在Spring Cloud规范下的整合,包括:

    • Eureka,服务注册与发现
    • Zuul,服务网关
    • Ribbon,客户端负载均衡
    • Feign,远程服务的客户端代理
    • Hystrix,断路器,实现熔断和限流
    • Hystrix Dashboard,监控面板
    • Turbin,各个实例的Hystrix信息整合

    由于Netflix维护不利,Zuul、Ribbon、Hystrix相关的项目(带删除线)已经处于维护模式(基本等于黄了)。

    开源软件不再维护的情况并不鲜见,架构师要有改代码的能力,至少能做到官方不维护的情况下能过修改痛点,让公司能够在小成本的情况下切换到新的技术栈。

    5. Spring Cloud Alibaba

    Spring Cloud Alibaba是阿里旗下开源组件在Spring Cloud规范下的整合。包括:

    • Sentinel,流控和服务降级
    • Nacos,配置中心
    • Nacos,服务注册与发现
    • Seata,分布式事务
    • RocketMQ,消息队列
    • Dubbo,RPC通信

    相较于Spring Cloud Netflix,Spring Cloud Alibaba的群众基础更好,Dubbo已经被国内公司大量使用。

    相关文章

      网友评论

          本文标题:2. 微服务解决方案之Spring Cloud

          本文链接:https://www.haomeiwen.com/subject/pkzayktx.html