• JAVA 微服务架构的全局认识


    1、微服务和SOA区别

    SOA:     关注服务重用

    微服务:主要关注解耦,服务力度 

    2、什么是SpringCloud (Spring Cloud 是一个技术生态:提供了快速构建微服务的技术组件)

    1、服务的动态感知(下线,上线(恢复、扩容)) Eureka

    2、如何高效管理服务提供者的地址

    3、负载均衡:Ribbon(轮询,随机,想要时间来计算权重轮询)

    4、统一配置中心: application.properties

    配置文件、安全性、维护苦难

    动态的配置管理文件:阀值调整(限流的阀值、线程池的阀值)、降级,限流开关

      配置中心的其它实现
      携程的apollo
      阿里的disconf
      zookeeper
      diamond
      Spring cloud Config 

    5、API网关(Spring cloud gateway 、 String cloud zuul)
    统一授权,日志的记录,权限的认证,限流、熔断(实际上就是过滤和路由器)

    6、限流:sentinel、 hystrix、缓存、降级(主动降级,被动降级)

    7、通讯总线, 异步化通讯: spring cloub bus  (Kaffka,  RabbitMq)

    8、监控、链路追踪:Spring cloub Sleuth  + zipkin pinpoint  skywlking cat 大众点评 jaeger

      tranceId : 链路ID
      spanld: 经过了几次请求

    Spring Cloud 大版本里面的小版本

    springcloud版本号查看:https://spring.io/projects/spring-cloud#learn
    1、SR(发行版本)
    2、RC
    3、M1 M2 (PRE)
    4、GA 稳定版本
    5、BULD-XXX(开发版本)

    Spring boot 版本 和 Spring Cloud 版本的关系
    大版本:
    1.2.x     Angel版本(天使)     兼容Spring Boot 1.2.x
    1.3.x     Brixton版本(布里克斯顿)     兼容Spring Boot 1.3.x,也兼容Spring Boot 1.4.x
    1.4.x     Camden版本(卡姆登)     兼容Spring Boot 1.4.x,也兼容Spring Boot 1.5.x
    1.5.x     Dalston版本(多尔斯顿)     兼容Spring Boot 1.5.x,不兼容Spring Boot 2.0.x
    1.5.x     Edgware版本(埃奇韦尔)     兼容Spring Boot 1.5.x,不兼容Spring Boot 2.0.x
    2.0.x     Finchley版本(芬奇利)     兼容Spring Boot 2.0.x,不兼容Spring Boot 1.5.x
    2.1.x     Greenwich版本(格林威治)     

    实际开发版本关系
    spring-boot-starter-parent     spring-cloud-dependencies
    版本号     发布日期     版本号     发布日期
    1.5.9.RELEASE     Nov, 2017     Edgware.RELEASE     Nov, 2017
    1.5.16.RELEASE     Sep, 2018     Edgware.SR5     Oct, 2018
    1.5.20.RELEASE     Apr, 2019     Edgware.SR5     Oct, 2018
    2.0.2.RELEASE     May, 2018     Finchley.BUILD-SNAPSHOT     2018年未知月
    2.0.6.RELEASE     Oct, 2018     Finchley.SR2     Oct, 2018
    2.1.4.RELEASE     Apr, 2019     Greenwich.SR1     Mar, 2019

  • 相关阅读:
    CentOS 上配置 lua 的服务器环境(enet)
    报错解决 unable to unroll loop, loop does not appear to terminate in a timely manner (994 iterations) or unrolled loop is too large, use the [unroll(n)] attribute to force an exact higher number
    开源许可证的选择
    Lua 协程
    [命令模式]在游戏开发中的应用
    NGUI 源码分析- AnchorPoint
    NGUI 源码分析- UIWidgetInspector
    Java程序员需要学习的知识点
    Linux下安装Perl和Perl的DBI模块
    Linux安装JDK
  • 原文地址:https://www.cnblogs.com/laotan/p/13170671.html
Copyright © 2020-2023  润新知