microservices - 网关中的用户管理是个好主意吗?
问题描述
我正在使用 JWT 安全机制开发一个围绕 Jhipster 堆栈构建的微服务平台。
我们已经在特定的 user-api 中删除了用户管理,并且我们还有一个特定的许可证概念,在单独的 license-api 中处理。
然而,这种架构意味着这 3 个组件之间有很多调用,我们开始看到一些性能问题。
因此,我正在考虑合并这些服务来解决性能问题。
但是,鉴于其他服务可能需要查询用户或许可证信息,因此,我想知道让微服务查询网关是否是一种好习惯?
解决方案
使用微服务架构很棒,目标是有凝聚力,所以如果将两个微服务合并为一个仍然尊重凝聚力,那就继续做吧(这是尊重所有这些都留在一个域或主题中的事实(用户管理) )
但是,如果 mergin 不是一个选项,为什么不使用 graphQl 进行用户管理微服务,你应该考虑这个选项。
假设您使用的是 jpa,也许您的性能问题与查询相关。
对我来说,除了作为网关之外,我永远不会将网关用于其他事情
有很多事情会导致性能问题。在决定合并之前尝试关注微服务的所有最佳实践
推荐阅读
- angular - 如何将对象值绑定到 ngStyle?
- pdf - 无法从 pdf 中提取 cmyk 颜色空间
- jasper-reports - jasperreports TextField 以 doc 格式在页面之间换行
- javascript - Winston 添加自定义日志级别
- java - 为什么我的 H2 自动增量列在升级到 Hibernate5 后没有回滚
- git - 引导程序 4 - Git
- python - 如何在 python 中设置 HTTP cookie 的“SameSite”属性?
- html - 如何在图片下方放置文字
- javascript - cordova plugman - 插件版本管理
- ballerina - 如何为芭蕾舞演员对象分配/获取价值?