乐趣区

关于spring-cloud:Spring-Cloud系列之微服务介绍

置信我,请认真读完,点开每一个链接,或者你能力真正理解什么是微服务?什么是分布式?什么是云计算?相对没有多余!

1 微服务

微服务架构是“新常态”。构建小型的、自蕴含的、随时能够运行的应用程序能够为代码带来极大的灵活性和灵活性。spring boot 的许多专门构建的个性使得在大规模生产中构建和运行微服务变得非常容易。别忘了,没有 spring cloud,就没有一个微服务架构是残缺的,它简化了治理,加强了您的容错能力。

1.1 什么是微服务?

微服务是一种古代的软件办法,利用程序代码能够独立于其余程序以可治理的小块模式交付。

1.2 为什么要构建微服务?

它们的小规模和绝对隔离能够带来许多额定的益处,例如更容易保护、进步生产力、更大的容错能力、更好的业务协调等等。

2 Spring Cloud

开发分布式系统可能具备挑战性。复杂性从应用层转移到网络层,要求服务之间进行更大的交互。使您的代码成为“本机云”意味着要解决 12 个因素的问题,例如内部配置、无状态状态、日志记录和连贯到反对服务。spring cloud 我的项目套件蕴含许多使应用程序在云中运行所需的服务。

2.1 Service discovery——服务发现

在云中,应用程序不可能总是晓得其余服务的确切地位。服务注册核心(如 Netflix Eureka)或 sidecar 解决方案(如 HashiCorp consur)都能够提供帮忙。spring cloud 为风行的注册核心提供了 Discovery Client 实现,比方 Eureka、consur、Zookeeper,甚至 Kubernetes 的内置零碎。还有一个 spring cloud 负载平衡器(Spring Cloud LoadBalancer),能够帮忙您在服务实例之间小心地调配负载。

2.2 API gateway——API 网关

因为有如此多的客户机和服务器,在您的云架构中蕴含一个 API 网关通常是很有帮忙的。网关能够负责爱护和路由音讯、暗藏服务、限度负载以及许多其余有用的事件。spring cloud gateway 为您提供了对 API 层的准确管制,集成了 spring cloud 服务发现和客户端负载平衡解决方案,以简化配置和保护。

2.3 Cloud configuration——云配置

在云中,配置不能简略地嵌入到应用程序中。配置必须足够灵便,以应答多个应用程序、环境和服务实例,并在不停机的状况下解决动态变化。spring cloud config 旨在加重这些累赘,并提供与 Git 等版本控制系统的集成,以帮忙您确保配置的平安。

2.4 Circuit breakers——断路器

分布式系统可能不牢靠。申请可能会遇到超时或齐全失败。断路器能够帮忙缓解这些问题,spring cloud 断路器为您提供了三种风行的抉择:Resilience4J、Sentinel 或 Hystrix。

2.5 Tracing——追踪

调试分布式应用程序可能很简单,而且须要很长时间。对于任何给定的失败,您可能须要将来自多个独立服务的信息跟踪拼凑在一起。spring cloud sleuth 能够以一种可预测和可反复的形式为您的利用程序安装工具。当与 Zipkin 联合应用时,您能够将注意力集中在任何可能存在的提早问题上。

2.6 Testing——测试

在云计算中,领有牢靠、可信、稳固的 api 能够取得额定的分数,但要实现这一指标还须要一段旅程。基于契约的测试是高绩效团队常常应用的一种技术。它有助于规范化 api 的内容,并围绕它们构建测试,以确保代码始终处于查看状态。
spring cloud contract 通过应用 Groovy、Java 或 Kotlin 编写的契约,为 REST 和基于消息传递的 api 提供基于契约的测试反对。

3 流数据

spring cloud stream 使得应用和生成事件变得非常容易,无论您抉择哪个消息传递平台。spring cloud stream 只需几行代码就能够将您的微服务与实时消息传递连接起来,以帮忙您构建高度可伸缩、事件驱动的零碎。
Get started with Spring Cloud Stream

4 治理微服务

spring boot 的可选仪器框架 microller 间接将度量发送给 Prometheus、Atlas 等,以提供有价值的见解。spring cloud 的 Sleuth 和 Zipkin 我的项目补充了这一点,它们提供了分布式跟踪,以便您可能实时跟踪正在产生的事件。
Get started with Micrometer on Spring Boot

5 云计算

微服务的小型、无状态个性使其成为程度扩大的现实抉择。像 TAS 和 PKS 这样的平台能够提供可扩大的基础设施来匹配,并大大减少您的治理开销。应用云连接器,您还能够轻松地应用多个后端服务。
Try Pivotal Web Services for free

6 链接

  • https://spring.io/microservices
  • https://spring.io/cloud
  • https://run.pivotal.io/

Spring Cloud 系列

Spring Cloud 系列之微服务介绍
[Spring Cloud 系列之微服务注册核心]()
[Spring Cloud 系列之微服务对立配置核心]()
[Spring Cloud 系列之微服务 RPC]()
[Spring Cloud 系列之微服务服务监控]()
[Spring Cloud 系列之微服务链路跟踪]()
[Spring Cloud 系列之微服务受权与认证]()

对于

我是冯文议(Erwin Feng),Java Developer,专一于程序设计与开发。开源我的项目:JavaLib、api-result。喜爱电影、游戏、音乐、茶、旅行。
我的集体网站:https://fengwenyi.com
我的 Github:https://github.com/fengwenyi

退出移动版