问题标签 [infinispan]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Infinispan 相当于 ehcache 的 copyOnRead 和 copyOnWrite
我计划在现有的 Web 应用程序中实施缓存解决方案。没什么复杂的:基本上是一个支持溢出到磁盘和自动驱逐的并发映射。将来可能需要对缓存进行集群,但现在不是。
我喜欢 ehcache 的 copyOnRead 和 copyOnWrite 功能,因为这意味着我不必在修改从缓存中取出的内容之前手动克隆内容。现在我已经开始研究Infinispan了,但我还没有找到任何类似的东西。它存在吗?
即,以下单元测试应该通过:
java - Hibernate 分布式二级缓存提供“免费”复制?
我一直在试验 Hibernate 3.6,我想知道提供的 infinispan 分布式缓存的功能。
我需要在主站点和灾难恢复站点之间进行数据库复制。
虽然可以将 PostgreSQL 配置为复制,但我认为这可能会导致相同的数据从主站点发送两次到 DR 站点。我的应用程序预计会有很多更新,所以请记住这一点。由于这将通过受限的 WAN 链接,因此感觉会发送大量数据,这看起来不是一个好主意。
是否可以将 infinispan 配置为在两个站点之间进行复制,这样底层数据库就不需要自己复制?如果是这样,怎么做?它的带宽密集程度如何?
java - 我在 Infinispan 缓存中收到 TimeOutException
下面是我的配置文件:
下面是我的异常追踪:
hibernate - 是否可以限制特定实体的 Hibernate 二级缓存的大小?
我有一个启用 Hibernate 二级缓存的场景,我想缓存一个实体,该实体每天创建 1000 个实例并保留 8 年,但查询仅处理最近 2 天。我想避免创建历史表,因为对于历史查找的罕见情况,代码取决于日期。
在 Hibernate 中,使用 Infinispan 作为 Level-2 提供者,是否可以非常具体地配置具有特定属性(驱逐策略、大小等)的特定缓存,Hibernate 应该将其用于实体 Foo?
jboss - infinispan 中的 Jboss AS 5 网络会话
如何在 Infinispan 中维护 JBoss AS 5 Web 会话?
infinispan - Infinispan:无法删除条目作为键
我的日志不断显示以下内容。我不知道出了什么问题。如果有人知道这个问题,请回复。提前致谢。
ehcache - EHCache 与 Terracotta Vs Infinispan
我们正在新项目的设计阶段工作,我们需要决定缓存框架。我们需要决定是否使用带有 Terracotta 或 Infinispan 的 EHCache 来满足缓存要求?谁能告诉我 EHCache 和 Infinispan 的优缺点?
提前致谢。
hibernate - 如何启用 infinispan-configs.xml 的 namedCache “实体”,用于支持其 namedCache “local-query”
当使用 Hibernate 3.5.6-FINAL 作为我们的 JPA 提供程序并使用 infinispan 4.2.0.ALPHA1 作为二级查询缓存提供程序时,我担心,与 Hibernate 文档相反,数据库结果被多次存储在不同的内存中infinispan namedCache 中的位置(对于返回某些相同记录的不同 HQL 查询的结果集),“local-query”。由于我们的许多频繁发出的查询在其结果集中有很大的交集,这可能会很快耗尽内存并使查询缓存无用。
我怀疑我错误地配置了 infinispan 或 hibernate 或两者,因为我似乎无法让 hibernate 2 级实体缓存作为查询缓存的支持运行。我希望看到一个将 infinispan 作为 hibernate-as-JPA 2 级查询缓存的示例,其结果本身由 infinispan 作为 hibernate-as-JPA 2 级实体缓存支持。
细节:
Hibernate 3.5 文档(http://docs.jboss.org/hibernate/core/3.5/reference/en/html/performance.html#performance-querycache-enable)声称:
查询缓存不缓存缓存中实际实体的状态;它只缓存标识符值和值类型的结果。出于这个原因,[原文如此] 对于那些预期作为查询结果缓存的一部分缓存的实体,查询缓存应始终与二级缓存一起使用
但是,使用 infinispan (根据http://community.jboss.org/wiki/usinginfinispanasjpahibernatesecondlevelcacheprovider )启用休眠级别 2 查询缓存, 就像在我们的 persistence.xml 中一样:
并检查 infinispan CacheManager JMX 属性仅显示 infinispan-configs.xml 中定义的六个 namedCache 之一(来自 GAV org.hibernate/hibernate-infinispan/3.5.6-FINAL,这取决于 GAV org.infinispan/infinispan-core/ 4.2.0.ALPHA1) 被创建,还有一个没有在那里定义:
我怀疑上面引用的 jboss wiki 文章在讨论实体缓存时指的是 namedCache “实体”;但是,我找不到如何创建该缓存。(除此之外:我还担心创建了 infinispan-configs.xml 的本地查询,但没有创建 infinispan-configs.xml 的时间戳;相反,我们收到了一个 UpdateTimestampsCache,它必须在 hibernate 的其他地方定义。)
在我们的 persistence.xml 中,然后注释相关实体 @javax.persistence.Cacheable 确实(根据 infinispan CacheManager JMX 属性)创建了实体缓存(命名为实体的包限定 java 类名),但它们似乎甚至未使用当 JMX 统计数据显示本地查询的命中率很高时(实际上,这种缓存命中查询的性能非常出色)。
我的恐惧是没有根据的吗?即使在多个 HQL 查询的结果集中返回实体信息,infinispan 也只存储一次实体信息?如果不是,那么获取 infinispan-configs.xml 的 namedCache 的正确方法是什么,“实体”用于避免实体数据的重复存储?最后,如何使用 infinispan-configs.xml 的 namedCache,“timestamps”,而不是“org.hibernate.cache.UpdateTimestampsCache”,作为休眠二级时间戳缓存?
infinispan - Infinispan 提供什么样的数据库支持?
我不想使用 Infinispan 作为我的数据源。提供什么样的数据库支持?Hibernate 2nd-Level Cache 是必要的吗?
hibernate - 尝试使用 Infinispan 作为 JPA/Hibernate 二级缓存提供程序,但没有成功
我想使用 Infinispan 来缓存重复调用的查询。
我按照本教程为此设置了 Hibernate:
使用 Infinispan 作为 JPA-Hibernate 二级缓存提供程序。
我遵循了每一步,虽然日志显示 Infinispan 用作二级缓存并启用了查询缓存,但似乎没有缓存任何查询。
我还尝试了本教程: Infinispan as Hibernate 2nd-Level Cache in JBoss AS 5.x,也没有成功。
以下是我所做的配置的摘录:
(orm.xml)
(持久性.xml)
我正在使用 JBoss EAP 5.1 和 hibernate-infinispan 3.5.6-Final。