zoukankan      html  css  js  c++  java
  • SpringCloud 使用

    SpringCloud

    启动顺序:

    (1)配置文件

    (2)Zuul

    (3)Eureka

    (4)其他项目

    基础功能:

    服务治理: Spring Cloud Eureka

    作用:解决子系统之间的远程调用问题,不需要维护服务之间系统调用的静态ip等。服务ABCD,在E服务Eureka中注册,ABCD之间的调用通过服务名来调用。
    ABCD称为Eureka的客户端,其中又细分为服务提供者和服务消费者,E为服务端。如果D不需要对外提供服务,只是一个单纯的消费者,是不需要注册到E中的。

    服务提供者:
    [1] 服务注册
    [2] 服务续约
    [3] 服务下线

    服务消费者:
    [1] 获取服务
    [2] 服务调用

    服务注册中心:
    [1] 失效剔除,没有续约的服务。
    [2] 自我保护,服务续约总是失败,尽可能保护这些注册信息。

    eureka:
    client:
    register-with-eureka: false # 当前微服务不注册到eureka中(消费端)
    service-url:
    defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7002.com:7002/eureka/,http://eureka7003.com:7003/eureka/


    E服务一般进行如下配置:
    register-with-eureka: false #false表示不向注册中心注册自己。
    fetch-registry: false #false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务


    客户端负载均衡: Spring Cloud Ribbon(对应的服务端负载均衡Nginx)

    RestTemplate 取代传统的httpclient进行远程调用,直接用spring封装好的工具类。

    // 服务实例名
    private static final String REST_URL_PREFIX = "http://MICROSERVICECLOUD-DEPT";

    restTemplate.postForObject(REST_URL_PREFIX + "/dept/add", dept, Boolean.class);


    服务容错保护: Spring Cloud Hystrix

    在高并发的情况下,由于单个服务的延迟,可能导致所有的请求都处于延迟状态,甚至在几秒钟就使服务处于负载饱和的状态,资源耗尽,直到不可用,最终导致这个分布式系统都不可用,这就是“雪崩”。
    [1] Fallback(失败快速返回),直接响应返回错误信息。
    [2] 资源/依赖隔离(线程池隔离),不会影响其他线程的正常运行状态。

    声明式服务调用: Spring Cloud Feign

    基于Netflix Feign 实现,整合了Ribbon与Hystrix, 除了整合这两者的强大功能之外,它还提供了声明式的服务调用(不再通过RestTemplate)。
    @FeignClient,用于服务之间的调用。

    API网关服务:Spring Cloud Zuul

    用于权限控制等,也就是平时项目中的拦截器和过滤器。

    分布式配置中心: Spring Cloud Config

    所有的配置文件管理的地方。

  • 相关阅读:
    Java安全之JNDI注入
    Visual Studio 2019 升级16.8之后(升级.Net 5),RazorTagHelper任务意外失败
    .Net Core 3.1升级 .Net 5后出现代码错误 rzc generate exited with code 1.
    重走py 之路 ——普通操作与函数(三)
    重走py 之路 ——字典和集合(二)
    设计模式结(完结篇)
    重走py 之路 ——列表(一)
    RestfulApi 学习笔记——分页和排序(五)
    RestfulApi 学习笔记——查询与过滤还有搜索(五)
    Android开发 Error:The number of method references in a .dex file cannot exceed 64K.Android开发 Error:The number of method references in a .dex file cannot exceed 64K
  • 原文地址:https://www.cnblogs.com/pzyin/p/12891967.html
Copyright © 2011-2022 走看看