我们已经实现了自己的oAuth提供程序,并且在系统在负载平衡方案中运行时遇到问题。 当我们使用单个服务器运行时,一切都很好,但是当我们打开另一台服务器时,我们会出现以下情况:
- 在服务器 1 上生成的令牌"A"
- 令牌"A"在服务器 2 上无效。
我已经对此进行了一些谷歌搜索,这似乎是一个已知问题,但似乎找不到解决方案。
任何人都有想法。
谢谢
您必须确保执行以下操作之一:
- 使用共享缓存(例如数据库或文件系统)在所有负载平衡节点之间同步授权服务器的状态,或使用某些复制机制跨节点复制状态
- 您的授权服务器颁发令牌,负载均衡器可以检查这些令牌,以找出需要将验证请求发送到哪个节点
后者的缺点是它不能在高可用性方案中使用。