我想基于该教程创建解决方案:https://www.baeldung.com/rest-api-spring-oauth2-angular
但是对于我来说,尚不清楚负载平衡后的几个Spring Boot服务器如何共享同一令牌会话。
使用会话cookie,会话数据可以存储在MySQL中,并且在服务器脱机时,会话将由另一台Spring Boot服务器恢复。
我们可以使用OAuth2为共享数据库设置相同的设置,以便可以共享会话数据,并且对最终用户来说服务器的切换可以完全透明?
我们可以使用OAuth2对共享数据库进行相同的设置,以便会话数据可以共享,服务器切换可以对最终用户完全透明?
是,您只需要定义一个JdbcTokenStore
并使用它而不是默认的InMemoryStore
来存储您的OAuth令牌。 JdbcTokenStore
必须使用指向MySQL数据库的DataSource
。
最后,如果您通过定义DataSource
将Spring Boot应用程序配置为连接到相同的MySQL数据库以存储令牌,则可以使其正常工作。
此post可能是一个很好的起点。