Spring webflux 会话管理
Spring webflux session management
我在 netty 上使用 Spring boot 2 和 spring webflux 运行。
我想添加会话管理而不需要后备数据库或 redis 服务器(所以 Spring 会话似乎不是这里的解决方案)。
我可以在我的控制器中使用 WebSession,但是我需要在我的负载平衡器上启用粘性会话,我希望避免这种情况。
我想要的是以下之一:
- 像 Play 框架中的客户端会话(会话存储为 cookie 并添加到每个后续请求中)
- Hazelcast session replication 但这只适用于 servlet 容器
有没有人经历过同样的事情并找到了可行的解决方案?
Spring Session 计划提供 ReactiveSessionRepository
的 Hazelcast 实现。目前的计划是等待 Hazelcast 4.0,它将以 Java 8 作为基线并使用 CompletableFuture
而不是他们自己的 ICompletableFuture
。您可以跟踪 gh-831 了解此主题的进展。
与此同时,您可以尝试使用 ReactiveMapSessionRepository
,传入 Hazelcast 的 IMap
。
我在 netty 上使用 Spring boot 2 和 spring webflux 运行。
我想添加会话管理而不需要后备数据库或 redis 服务器(所以 Spring 会话似乎不是这里的解决方案)。
我可以在我的控制器中使用 WebSession,但是我需要在我的负载平衡器上启用粘性会话,我希望避免这种情况。
我想要的是以下之一:
- 像 Play 框架中的客户端会话(会话存储为 cookie 并添加到每个后续请求中)
- Hazelcast session replication 但这只适用于 servlet 容器
有没有人经历过同样的事情并找到了可行的解决方案?
Spring Session 计划提供 ReactiveSessionRepository
的 Hazelcast 实现。目前的计划是等待 Hazelcast 4.0,它将以 Java 8 作为基线并使用 CompletableFuture
而不是他们自己的 ICompletableFuture
。您可以跟踪 gh-831 了解此主题的进展。
与此同时,您可以尝试使用 ReactiveMapSessionRepository
,传入 Hazelcast 的 IMap
。