【问题标题】:Backup Spring Session with GemFire使用 GemFire 的备用 Spring 会话
【发布时间】:2015-02-12 18:19:19
【问题描述】:

Spring 文档说 Spring Session 在使用 REST 端点时可以透明地利用 Redis 来支持 Web 应用程序的 HttpSession。

有谁知道 Spring 在这个地方是否支持 GemFire 而不是 Redis 来支持 Web 应用程序的 HttpSession ?

参考:http://docs.spring.io/spring-session/docs/current/reference/html5/guides/rest.html

【问题讨论】:

    标签: gemfire spring-data-gemfire spring-session


    【解决方案1】:

    还没有,;)。

    但是,我确实花了一点时间研究为 Spring Session 实现一个 GemFire 适配器以支持(存储/复制)一个 HttpSession 所涉及的工作。我仍然需要更深入地挖掘,我将在此处 (SGF-373) 跟踪 JIRA 中的这项工作。

    还知道 GemFire 已经支持使用 GemFire 的 HTTP Session Management Module 进行 HTTP 服务器会话复制。

    当我有更多详细信息时会回复。

    【讨论】:

    • 谢谢.. 是的,我们也开始研究 GemFire 会话管理模块,但我们唯一担心的是,它是否与 GemFire 紧密耦合。以防万一我们以后想迁移到 Redis 或任何其他平台,我们是否必须将 Session Management 重新开发到另一个兼容的平台。除此之外,GemFire 会话管理模块乍一看似乎还不错。
    • 我根据我的研究和理解发布了一个答案。如果您能就此发表意见,那就太好了。
    【解决方案2】:

    这 3 个步骤(概括地说)是否足以让 Spring Session 写入 Gemfire 存储库而不是 Redis?

    第 1 步:只实现一个配置类,它提供所有功能作为注解

    1. 让spring加载配置类
    2. 在容器中注册 Spring Session Filter
    3. 建立repo连接工厂
    4. repo 连接配置

    我们将继续重用 Spring Session 的 springSessionRepositoryFilter

    第2步:需要开发一个等效的GemfireOperationsSessionRepository实现接口SessionRepository

    第 3 步:SessionMessageListener.java 3.1。需要确定一种技术来识别 Session 中的增量更改并将其保存到底层存储库 3.2.需要了解如何捕获来自底层存储库的会话过期通知以调用 SessionDestroyEvent 和清理操作 -

    【讨论】:

    • @yathirgan 抱歉,回复延迟;我已经被其他事情抢占了,今天晚些时候我会尝试在这方面花费一些周期,并跟进你的其他 2 个帖子。不过看起来你正在取得进步,耶!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多