zoukankan      html  css  js  c++  java
  • 上手Spring Cloud

    记得一年前 Spring Cloud、Docker + k8s 才刚才火起来呀,当时公司的系统刚转成 Docker 部署,使用的分布式框架任然是 Dubbo。

    现在也就相隔一年半, JD 上 Spring Cloud 已经成标配了,份额看着比 Dubbo 还大。Docker + k8s 也已经是一个加分项被写在 JD 上了。

    为了知识体系的完整性,今天撸了一个 Spring Cloud 的 Demo。

    Demo 用到了 Spring Cloud 最核心的几个功能,上图来说明系统架构。

    Spring Cloud Demo 架构

    • 服务注册中心 Eureka:用于服务的注册与发现,服务注册中心保存每一个系统服务名称、IP 地址和端口等信息。服务调用的时候根据服务名称到注册中心找注册信息,就可以实现远程服务的调用。
    • 负载均衡 Ribbon:Ribbon 是 Netflix 发布的负载均衡器。Ribbon 和 Eureka 配合使用,Ribbon 从 EurekaServer 获取一份注册表,再使用负责均衡算法选择调用哪个服务。比如说这里的订单系统要调用库存系统,库存系统在 Eureka 注册了两个服务,Ribbon 就会帮我们选择调用哪一个库存服务。
    • 接口调用 Fegin:微服务之间通过 Rest 接口通讯,Spring Cloud 中使用 Feign 来调用 Rest 接口。
    • 微服务网关 Zuul:由于我们使用的是微服务,可能有成百上千的接口,不可能让前端记住这么多接口然后来调用。而且这么多接口暴露出来也存在很大的安全分线。所以使用 Zuul 来做转发服务、安全认证的事情。

    以上,一套 Spring Cloud 的核心架构就齐活了,当然还有服务熔断、配置管理的功能没有加上,作为一个 Demo 是够了。

  • 相关阅读:
    ftp上传下载
    java生成xml
    Java:删除某文件夹下的所有文件
    java读取某个文件夹下的所有文件
    JFileChooser 中文API
    得到java异常printStackTrace的详细信息
    关于SQL命令中不等号(!=,<>)
    ABP前端保存notify提示在Edge浏览器显示null
    关于MY Sql 查询锁表信息和解锁表
    VS2019 backspace键失效,无法使用
  • 原文地址:https://www.cnblogs.com/shuiyj/p/13185107.html
Copyright © 2011-2022 走看看