【发布时间】:2021-06-21 00:21:41
【问题描述】:
我创建了一个基于 Spring Cloud Gateway 作为 Api Gateway 的完整应用程序微服务架构,具有后端服务、RabbitMQ 等,如下面的截图链接所示,由 Spring 建议。我还有一个以 Keycloak 形式用 Angular 和 SSO 编写的 Web 应用程序。我的 Web 应用程序基于 Nginx。
https://spring.io/images/diagram-microservices-dark-4a2e5817aac093437f4f3b3a5be8be88.svg
我的问题是,主要入口点是否应该是 Spring Cloud Gateway,然后是路由到 Web 应用程序,或者更确切地说是 Nginx Angular,它将 Api Gateway 和 SSO 作为单独的实体进行查询?
【问题讨论】:
-
你能分享你的代码吗?
-
如果您使用 Keycloak 的 UI 进行身份验证,您可以选择任何一种方式,但如果您依赖 Keycloak 的 API,我的建议是让 Spring Cloud 网关仅作为后端服务的入口点。用户首先使用 Nginx Angular,对于后端 API,它们由 SCG 路由。
-
感谢您的回复。我曾经使用 SCG 作为使用 Keycloak API 的资源服务器,但目前我正在考虑减少访问网关以限制服务产生的请求。所以我试图直接从前端调用 SSO。
标签: angular spring nginx microservices spring-cloud-gateway