首先要知道的是Spring Cloud是微服务架构。

微服务架构是一种架构模式,它将单一的应用程序划分成一组很小的服务,服务之间相互协调、互相配合。每个服务都运行在独立的进程中,服务与服务间采用轻量级通信机制(通常是HTTP协议的RESTful API)。每个服务都有着自己的业务,并且能够被独立的部署到生产环境、类生产环境等,对于具体的一个服务而言,应该根据上下文,选择合适的语言、工具对其进行构建。

Spring Cloud中是一种微服务架构,其中包含如下功能:

服务注册与发现、服务调用、服务熔断、负载均衡、服务降级、服务消息队列、配置中心管理、服务网关、服务监控、全链路追踪、自动化构建部署、服务定时任务。

但是在项目中一般只会用到如下几种:

服务注册与发现:EUREKA

服务负载与调用:NETFLIX OSS RIBBON、NETFLIX FEIGN

服务熔断降级:HYSTRIX

服务网关:NETFLIX Zuul

服务器分布式配置:Spring Coloud Config

服务开发:Spring Boot

下面来看下官方解析

Cloud

分布式系统的开发与一般的系统来说是具有挑战性的。服务之间的交流更为密切,Cloud把项目的工作重点由应用层移到了网络层。代码想要连接到Cloud服务需要12个因素,如配置文件,状态,日志,连接到后端的服务。Spring Cloud提供了这些成套的服务使得开发者的程序服务能够在云上跑起来。

Spring Cloud architecture

图如下:

Service discovery

在cloud,应用只会知道除了本地服务,不会知道其他主机上的服务。然而Netflix Eureka和或HashiCorp Consul可以人本地服务知道其他主机上服务的问题,Spring Boot提供了DiscoveryClient实现用于Eureka、Consul、Zookeeper、Kubernetes系统注册方面的服务。

API gateway

Cloud上的服务都依赖与API gateway维护其安全,服务隐藏,调节负载等作用

Cloud configuration

cloud中,配置文件往往是在一套环境中或者系统中或者几个应用中使用,而不是单独在一个应用中使用,Spring Cloud Config就是用于提供这些帮助的。

Tracing

分布式应用程序的调试比较复杂,定为故障需要几个独立的服务一起运行定位。Spring Cloud Sleuth可以测试应用程序。

Spring Cloud文档阅读笔记-初识Spring Cloud(对Spring Cloud初步了解)相关推荐

  1. Spring Boot文档阅读笔记-Spring Boot @Bean解析

    利用SpringBoot的@Bean创建一个简单的Bean. Spring的@Bean注解是放在方法上的,带上这个注解的方法会被Spring容器管理.并且这个方法要返回一个值(对象),这个值和对象会被 ...

  2. Spring Boot文档阅读笔记-how-to-implement-2-way-ssl-using-spring-boot

    two-way-ssl需要12次握手(除去TCP的三次握手),如下图: 双向认证过程: 1.客户端发送ClientHello消息,告诉服务端要使用SSL. 2.客户端发送ServerHello的响应, ...

  3. Spring Boot文档阅读笔记-EhCache的使用

    这里要先注意2个概念: buffer和cache,很多人会讲这两个概念混用.但其实这是两个概念! buffer:一般是指存储临时数据的实体.只能读写一次,对于程序员来说buffer是可见的,比如TCB ...

  4. Spring Boot文档阅读笔记-DataSource configuration

    DataSource:一个工厂可以连接任意厂家的数据库.通常使用URL以及一些认证去建立数据库连接. DataSource在代码中是一个对象,这个对象贯彻并落实了javax.sql.DataSourc ...

  5. Spring Boot文档阅读笔记-Creating Asynchronous Methods解析

    创建一个GitHub用户信息查找服务,这个服务是通过GitHub的API获取数据的. 接口是http的,如下: 这里创建一个model去接收对象: @Data @JsonIgnorePropertie ...

  6. Spring Boot文档阅读笔记=Caching Data with Spring

    此篇博文展示了使用Spring去管理Bean开启缓存. maven如下: <?xml version="1.0" encoding="UTF-8"?> ...

  7. Spring Boot文档阅读笔记-对Securing a Web Application解析

    首先创建一个非安全的Web应用 这个应用包含两个页面,一个是home页面,一个是"Hello,World"页面.home页面使用Thymeleaf,相关代码如下: <!DOC ...

  8. Spring Boot文档阅读笔记-使用Spring Data JPA连接多源数据库(MySQL和Oracle)

    下面这个小项目展示了如何连接2个数据库,一个是Oracle,一个是MySQL. 关键的Maven依赖: <dependency><groupId>org.springframe ...

  9. Spring Boot文档阅读笔记-构建Restful风格的WebService客户端

    对应的maven如下: <?xml version="1.0" encoding="UTF-8"?> <project xmlns=" ...

最新文章

  1. linux下杀死进程的10种方法
  2. 三种常见单片机时钟电路方案,对比其优缺点
  3. 小米10pro使用说明书_华为Mate40、华为P40和小米10拍照对比:哪一款最好?
  4. java连接imserver_java后端IM消息推送服务开发——协议
  5. dos输入java Hello,出现错误: 找不到或无法加载主类 Hello
  6. 美国大学计算机学科分类
  7. 计算机一级b考试理论知识,计算机等级考试一级B基础知识精选考点串讲
  8. grasshopper for rhino 6下载_福利篇 | Rhino常用插件功能汇总
  9. 共聚焦扫描显微镜的工作原理
  10. Java8中关于LocalDateTime转换方法总结
  11. java 将服务器的图片打包下载成.zip ,通过浏览器下载。
  12. 嵌入式(embedded)与非嵌入式数据库
  13. mysql查出繁体文字_Mysql获取数据出现繁体显示为乱码的问题
  14. 【Unity开发】随手记:点击屏幕选中物体
  15. python 构造函数里的同名变量_Python22个构造函数法-助力数据挖掘与分析
  16. CSDN看书的书架入口
  17. RabbitMQ流量削峰应用
  18. 2022-2027年中国智能电网建设光通信器件行业市场调研及未来发展趋势预测报告
  19. 无法验证到服务器的安全证书,打开outlook提示…无法验证的安全证书……
  20. ChatGPT写的C++学习路线是怎样的

热门文章

  1. 大厂年薪100万的可视化工程师,水平到底有多牛,看完我服了
  2. 如何批量查询PR值、百度权重、百度快照及收录量,用BlueCatTools批量网站查询工具
  3. 互联网为什么要版权,我支持资源共享。
  4. 飞秋 包括《java就业培训课程》
  5. 紧张的飞秋(FEIQ)爱好者汗都下来了
  6. 程序员自我提高情绪10招
  7. 程序员如何接私单做SOHO一族
  8. 第 5 节:前端面试指南 — Vue 篇(附面试题)
  9. java的servlet是干嘛的_Servlet能够做什么?
  10. Harvard-X免费生物信息课程 (代码、文档、数据) - 适合系统学习