【问题标题】:What caching model/framework with Websphere Spring Hibernate Oracle?Websphere Spring Hibernate Oracle 的缓存模型/框架是什么?
【发布时间】:2010-10-01 16:27:42
【问题描述】:

我们正在考虑为我们的应用程序实施一个缓存框架,以帮助提高我们网站的整体性能。

我们在 Websphere 6.1、Spring、Hibernate 和 Oracle 上运行。目前的重点是静态数据或在一天中变化很小但被大量使用的数据。

所以任何信息都会很棒。我已经开始了我的谷歌搜索和阅读,但想了解对社区成员有用的东西。我们感兴趣的一件事是,当下划线数据发生更改时,让系统使缓存失效的能力。

谢谢

更新:

我在 IBM 网站上看到一篇文章,其中提到 Hibernate 的集群感知缓存与 WebSphere Application Server 的结合尚未确定;因此,尚未确定是否支持它们的使用。

对此有什么想法?我们在集群环境中运行。

【问题讨论】:

标签: java hibernate spring caching websphere


【解决方案1】:

好吧,休眠缓存系统就是这样做的,我有效且轻松地使用了ehCacheHibernate (and the second level cache system)

Lucene 也可能是一个选项,具体取决于具体情况。 Hibernate SearchCompass 可以帮助解决这个问题(尽管可能需要一些主要工作)。

使用Terracotta 进行复制也是一种选择,尽管我从未这样做过。

【讨论】:

    【解决方案2】:

    Hibernate 内置了一级和二级缓存。您可以将其配置为使用 EhCache、OSCache、SwarmCache 或 C3P0 - 您可以选择。

    【讨论】:

      【解决方案3】:

      您还可以利用 WebSphere 的默认缓存(即 DynaCache)来实现二级缓存。这将允许您利用 WebSphere 缓存基础架构来管理、监控和配置您的缓存

      【讨论】:

        【解决方案4】:

        我用过ehCache和OSCache,发现OSCache更容易配置和使用。

        【讨论】:

          【解决方案5】:

          我们的其中一件事 感兴趣的是有能力 系统使缓存无效时 下划线确实发生了变化 数据。

          据我所知,Hibernate 实际上并没有执行上述操作——来自Hibernate's docs

          小心。缓存永远不会意识到 对持久存储所做的更改 通过另一个应用程序(尽管他们 可以配置为定期过期 缓存数据)。

          显然,这意味着缓存没有 ESP,并且无法判断不在集群中的应用程序是否在数据库上调用了直接 DML - 但我猜你想要的是公开的能力旧版应用程序在更新该数据时挂钩并使缓存无效的服务。而且据我所知,没有关于如何做到这一点的建议。

          【讨论】:

            猜你喜欢
            • 2015-03-11
            • 1970-01-01
            • 2018-11-29
            • 1970-01-01
            • 1970-01-01
            • 2011-08-21
            • 2011-10-19
            • 1970-01-01
            • 2012-07-01
            相关资源
            最近更新 更多