使用JHipster进行微服务

微服务架构与整体架构

生成应用时JHipster问您的第一个问题是您要生成的应用程序类型。您可以在两种架构之间进行选择:

  • “monolithic”架构使用一个单独的,所有组件集一体的应用程序,其中包含前端代码和后端Spring Boot代码。
  • “微服务”架构将前端和后端分开,因此您的应用程序可以更轻松地扩展和解决基础架构问题。

“monolithic”应用程序更易于操作,因此,如果您没有任何特定要求,则建议使用此选项,并且将其作为默认选项。

微服务架构概述

JHipster微服务架构以以下方式工作:

  • gateway是JHipster生成的应用程序(生成时选择microservice applicationmicroservice gateway),该应用程序处理Web流量,并为Angular/React应用程序提供服务。如果您要遵循Backends for Frontends模式,则可以存在几种不同的网关,但这不是强制性的。
  • JHipster Registry是一个所有应用程序在运行时候在其注册并从中获取其配置的服务。它还提供了运行时监视仪表板。
  • Consul是服务发现服务以及提供键/值存储。它可以用作JHipster Registry的替代服务。
  • Microservices是JHipster生成的应用程序(生成时选择microservice application),用于处理REST请求。它们是无状态的,可以并行启动它们的多个实例来达到负载均衡的目的。

在下图中,绿色组件特定于您的应用程序,蓝色组件提供了其基础结构。

Diagram