微服务教程

微服务架构是一种面向服务的架构。在微服务架构中,有许多微服务。通过组合所有的微服务,构建出一个大的服务。在微服务架构中,所有的服务彼此通信。

微服务教程中,我们将了解如何使用Spring Cloud实现微服务。我们将学习如何在微服务之间建立通信,实现负载平衡对微服务进行扩展和收缩。我们还将学习如何使用Spring Cloud Config Server集中管理微服务的配置。我们将实现Eureka命名服务器,以及使用Spring Cloud SleuthZipkin实现分布式跟踪。我们将创建带有Hystrix的容错微服务。

我们的微服务教程讨论了微服务架构的基本功能,同时提供了相关示例,以便更容易理解。

Java - Javatpoint 的特点

什么是微服务

定义:根据Sam Newman的说法,"微服务是共同协作的小型服务。"

根据James Lewis和Martin Fowler的说法,"微服务架构风格是一种将单个应用程序开发为一套小型服务的方法。每个微服务运行其自己的进程,并使用轻量级机制进行通信。这些服务围绕业务功能构建,并由完全自动化的部署机制进行独立开发。"

这些服务的集中管理是最少的,它们可能使用不同的编程语言编写,并使用不同的数据存储技术。

需要记住的要点

  • 这些是通过 REST 公开的服务。
  • 这些是精心选择的小型可部署单元。
  • 这些服务必须具备云能力。

微服务定义了一种架构方法,将应用程序分解为一组松耦合的服务池,以实现业务需求。它接近面向服务的架构(SOA)。微服务架构最重要的特点是可以对大型复杂应用程序进行持续交付

微服务有助于将应用程序拆分并构建逻辑上独立的较小应用程序。例如,我们可以借助亚马逊AWS轻松构建云应用程序。

introduction-to-microservices.png

在上图中,每个微服务都有自己的业务层和数据库。如果我们更改一个微服务,不会影响其他服务。这些服务通过使用轻量级协议(如HTTP或REST)或消息协议彼此通信。

微服务的原则

微服务有以下原则:

  • 单一职责原则
  • 围绕业务域建模
  • 隔离故障
  • 基础设施自动化
  • 独立部署

单一职责原则

单一职责原则指的是程序中的类或模块应该只有一个职责。任何微服务一次不能提供多个职责。

围绕业务域建模

微服务永远不会限制自己只接受适当的技术堆栈或数据库。堆栈或数据库应该是解决业务目标最合适的。

隔离故障

大型应用程序在单个模块故障时可以保持基本不受影响。某个服务随时可能发生故障。因此,迅速检测故障并在可能的情况下自动恢复故障非常重要。

基础设施自动化

基础设施自动化是编写环境脚本的过程。借助环境脚本,我们可以将相同的配置应用于单个节点或成千上万个节点。它也称为配置管理、脚本化基础设施和系统配置管理。

独立部署

微服务是平台无关的。这意味着我们可以独立设计和部署它们,而不影响其他服务。

受众

我们的微服务教程适用于希望以简单的步骤学习微服务架构的软件专业人士和初学者。本教程将让您深入了解微服务架构及其组件,如RabbitMQ服务器、Eureka命名服务器、Zuul API网关、Ribbon、HystrixZipkin服务器。完成本教程后,您可以使用Spring Cloud开发微服务

先决条件

在继续本教程之前,您应该对JavaSpringSpring Cloud框架有基本的了解。因为我们将使用Spring Cloud开发微服务。

问题

我们保证您在微服务教程中不会遇到任何问题。如果有任何错误,请在联系表格中发布问题。

标签: spring, Spring教程, spring cloud, spring cloud教程, spring cloud框架, spring cloud面试题, springcloud组件, springcloud微服务架构, springcloud入门教程, springcloud主件, spring cloud架构图