spring - 在没有数据库的 JHipster 微服务架构中创建网关

标签 spring microservices jhipster api-gateway

我正在尝试基于支持的微服务架构的 JHipster。我已经按照文档中的描述创建了一个注册表、网关和一个微服务(基于 JWT 身份验证)并且一切正常。但是我不确定为什么 JHistter 中的网关需要有一个数据库。对我来说仍然没有答案的问题:
1- 为什么网关需要数据库?在哪些情况下您会使用/不使用数据库创建网关?
2- 网关和微服务是否使用相同的数据库?还是应该使用单独的数据库实例?

最佳答案

1) 使用 JWT 或 OAuth2 身份验证类型的网关需要一个数据库来存储用户及其帐户详细信息。使用 UAA 身份验证类型的网关不需要数据库,因为 UAA 微服务处理用户和身份验证。

2)网关和微服务应该使用自己的数据库实例。您可以在 dev 中使用相同的数据库实例,但在 prod每个人都应该有自己的。

您可以生成一个 docker-composekubernetes使用 JHipster 子生成器为您的网关/微服务配置,在生成的 YML 文件中,您将看到每个应用程序都有自己的数据库实例。

关于spring - 在没有数据库的 JHipster 微服务架构中创建网关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58973682/

相关文章:

microservices - 关于代码恢复、安全和数据库共享的微服务架构问题

jhipster - 在 JHipster 4.10.0 中使用 Keycloak

java - 如何在 Gradle 中指定 servlet-api 版本?

支持列表的 Spring 绑定(bind)/速度

java - 在微服务架构中存储常量字段的最佳方式是什么?

java - Java 中枚举的缺点是什么?

java - Jhipster 如何使用 JDL-studio 在 "Authority"实体中添加关系

hibernate - 使用 Spring 和 Hibernate 将读写事务路由到主事务,将只读事务路由到副本

Spring Security 获取用户对象

mysql - 如何从 Spring Boot Docker 服务连接远程 MySQL DB?