【发布时间】:2019-02-25 08:18:49
【问题描述】:
当主微服务崩溃而备份服务必须运行时,如何维护 Resful Web 服务的会话密钥/令牌?换句话说,备份服务(全部)将如何获取会话详细信息?
【问题讨论】:
标签: microservices restful-authentication
当主微服务崩溃而备份服务必须运行时,如何维护 Resful Web 服务的会话密钥/令牌?换句话说,备份服务(全部)将如何获取会话详细信息?
【问题讨论】:
标签: microservices restful-authentication
微服务的最佳实践是无状态。
这意味着,服务不应缓存会话密钥或令牌。会话详细信息应在 Redis 等缓存服务中维护。
并且每个微服务实例都是平等的。应该没有像“主”和“备份”实例这样的区别。所有实例都可以访问 redis 缓存。
服务请求应包含令牌。顺便说一句,浏览器可以为你做到这一点。
服务实例(可以是任何实例)首先查询缓存以获取会话详细信息,然后进行相应处理 - 如果未找到则重定向到登录;如果找到有效令牌,则验证会话有效性、访问权限等。
【讨论】: