Fah*_*ook 16 java cookies session weblogic microservices
我们有以下设置.
因此,我不必担心有关水平扩展/运行应用程序的多个实例的会话.STM/Weblogic集群确保后续请求来到同一个受管服务器.
我们目前拥有的是单片应用程序,我们正在努力转向微服务.此外,我们不想离开当前的基础设施(即STM/Weblogic集群/ Auth工具).我们计划的是:
所以我的问题是
请建议任何更好的替代方案和资源/链接.谢谢.
Mar*_*nik 22
让我分享一下我的看法.
首先,如果你可以保持你的应用程序无状态,那么一定要这样做:)它将是性能和可扩展性方面的最佳解决方案.
现在,如果它不可能,那么你应该维护一些分布式会话管理层.
负责身份验证的网关可以生成一些唯一的会话标识符,以后可以将其用作密钥.此密钥可以传播到所有微服务,并成为API的一部分或其他东西.
为了访问会话,微服务可以通过密钥"获取"值并使用它.
在实现方面:我将看看NoSQL解决方案.其中一些可以满足您需求的是:
我相信还有其他解决方案.
现在,性能在这里至关重要,否则整个解决方案将会太慢.所以在我的理解中,使用RDBMS在这里并不好,而且可能更难以扩展它.
希望这可以帮助
1)API网关是否应该是有状态的,而其他微服务是无状态的?
是的,在12 Factor App 指南中,所有服务都应该是无状态的。
2)如果是这样,API网关和微服务之间应该如何共享用户会话数据?
您的 API 应该是无状态的,因此不要将会话状态共享给微服务。推荐的方法是设置一个Redis缓存来存储会话数据。
| 归档时间: |
|
| 查看次数: |
17281 次 |
| 最近记录: |