问题标签 [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.
caching - Infinispan JPA 缓存加载器?
如何实现 Infinispan JPA 缓存加载器?在 infinispan API 中是否有任何模式或方法来实现它?
configuration - 一个 infinispan 的多个 memcached?
Infinispan 了解 memcached 协议。
是否可以在不实际启动多个 infinispan 实例的情况下将多个 infinispan 缓存公开为不同端口上的 memcached 服务器?
spring - Spring、Infinispan 和 JBoss 7 集成
我正在尝试使用 JBoss 7 Infinispan 缓存作为两个基于 spring 部署的战争应用程序的通信形式(稍后会更多)。我在访问 JBoss 托管缓存管理器时遇到问题。
当我使用
在两个应用程序中的每一个上,我都有两个单独的缓存。有什么方法可以访问 JBoss 服务器创建的缓存而不使用 @ManagedBean 注释和 Java EE 标准?
完成。感谢 Kazaag,我使用了 JNDI。
我有一个 DefaultEmbeddedCacheManager 类强制转换异常的众所周知的问题。我使用了反射。
此外,我必须将容器标记为急切地开始。
尽管有不同的类加载器,但缓存会被复制。
java - 以编程方式在 jboss 7 中配置 infinispan
有没有办法我可以完全从standalone.xml中删除infinispan的配置,并在我的persistence.xml中有如下配置:
提前致谢
java - EC2 上的 JGroups 节点不说话,尽管他们看到了对方
我正在尝试使用 Hibernate Search,以便从 jgroupsSlave 节点对 Lucene 索引的所有写入都发送到 jgroupsMaster 节点,然后将 Lucene 索引与 Infinispan 共享回从站。一切都在本地工作,但是当节点在 EC2 上发现彼此时,它们似乎没有进行通信。
他们都在互相发送你还活着的消息。
安全组
我有两个 jar,一个用于 master,一个用于 slave,我在他们自己的 EC2 实例上运行。我可以从另一个实例 ping 每个实例,它们都在同一个安全组中,它为我组中任何机器之间的通信定义了以下规则。
ICMP 的所有端口 0-65535 用于 TCP 0-65535 用于 UDP
所以我认为这不是安全组配置问题。
hibernate.properties
infinispan.xml
jgroups-ec2.xml
我直接从最新的 infinispan-core 发行版(5.2.0.Beta3,但我也尝试了我认为的 5.1.4)中复制了这个。我唯一改变的是将他们的 s3_ping 替换为我的,但我再次看到节点写入 s3,并且它们找到了彼此,所以我认为这不是问题。我也开始主/从,将 jgroups.tcp.address 的环境变量设置为他们的私有 IP 地址。我还尝试了一些大大简化的配置,但没有任何成功。
关于问题可能是什么的任何想法?我花了几天时间玩它,它让我发疯。我认为它必须与 jgroups 配置有关,因为它在本地工作并且无法在 EC2 上交谈。
你们还有其他信息想帮助解决这个问题吗?
java - infinispan:集群实例不共享缓存
我花了 2 多天的时间什么都没做,只是试图让 Infinispan 在集群环境中工作,但它不起作用。我不想运行单独的 infinispan 服务器,我只想将它嵌入到在集群 Glassfish 上运行的应用程序中。那不可能吗?我有一个示例 JSF 应用程序,您可以在其中将值加载到应该位于缓存中的地图中。我拉起一个集群实例,添加值,它们就会显示出来。但是当我转到另一个集群实例时,它显示地图为空。
我知道我做错了什么,我只是不知道是什么。一直在搜索互联网,没有关于如何让它工作的全面教程。
配置(从据称显示集群http://www.mastertheboss.com/infinispan/infinispan-tutorial-part-2/page-2的教程中复制):
上下文监听器:
豆:
我现在真的不知道该怎么办...
infinispan - JBoss 7 + Infinispan 和事务
我正在使用 JBoss As 7.1.1 Final。我已经使用事务模式“FULL_XA”配置了一个复制缓存。
我将缓存用作内存数据库。缓存中的条目由应用程序操作(添加/更新/删除)。我面临这样一种情况,即 JTA 事务回滚不会恢复先前在缓存中添加的条目。Infinispan 文档指定了为缓存配置的事务管理器。我相信在 JBoss 应用服务器上,infinispan 应该能够自动选择正确的事务管理器。此外,infinispan 1.2 XSD 没有提供关于我们应该如何为缓存配置事务管理器的任何细节。我们真的需要在这里配置一个事务管理器吗?如果不是,那么缓存添加在事务回滚后未回滚的可能原因是什么。
一旦相应的事务回滚,infinispan 是否提供删除缓存中先前添加的条目的能力?这本质上与持久数据存储(如 RDBMS)提供的原子性保证相同。
infinispan - Infinispan keyset() 不适合生产
我决定使用 infinispan 分布式网格来扩展我的应用程序以支持集群,但是在使用这种共享资源时遇到了限制。如何检索分布式缓存中的所有值或键?我问这个是因为在他们的文档中,不建议在生产中运行所有收集方法(意思是 keySet())。现在我有一个带有键/值对的本地存储桶/缓存,但是为了处理我需要检索键并遍历集合的值。设置 set = cache.keySet();
当本地缓存中有大量条目时,keySet() 返回一个副本,这对内存来说是一个沉重的负担。我尝试使用查询功能,但是如果我想查找值并且不需要它,则有一些网络调用。此外,查询功能不支持复杂的过滤器。您知道在生产中使用 infinispan 时哪种方法最好吗?
由于这是一个实验阶段,我正在使用最后一个 infinispan 版本。
非常感谢。
java - 如何在 JBoss AS7 中使用 hibernate-infinispan 的 write behind 方法
我在独立的 JBoss AS7 中创建了一个 REST API,使用 hibernate 作为 JPA 提供程序,使用 Infinispan 作为二级缓存。
我在https://docs.jboss.org/author/display/ISPN/Write-Through+And+Write-Behind+Caching中看到 Infinispan 可以使用 write-behind 方法,将数据从缓存异步保存到db,这是我的项目需要的东西。
我想启用此功能,但我无法在任何地方找到如何做到这一点。
如果有帮助,我可以解释为什么我需要这种行为。我有一个名为 Stat 的实体类。在那个类中,我有一个 int balance 值,例如:
REST 方法之一同时访问该余额,从中减去一个并在数据库中更新它。这在项目中造成了瓶颈,因为许多线程试图获取锁来读取和更新数据库的余额。
所以,我认为我可以使用 Infinispan 来更新内存中的余额,并让 Infinispan 异步持久化对数据库的更改。
任何帮助将不胜感激。
spring - 使用 Infinispan 作为二级缓存提供程序的 Spring JPA 和 Hibernate 4
我在谷歌上搜索,发现有几个人有同样的问题,但找不到具体的答案。
基本上我们将 Spring 与 JPA 以及 Hibernate 4.1.7 一起使用,并尝试将 Infinispan 设置为 2 级缓存提供程序:
但是,在启动期间,我收到以下异常:
原因:org.infinispan.CacheException:这是事务缓存,但找不到事务管理器。正确配置事务管理器查找。
我们不使用 JTA,而是使用 Spring 的 JpaTransactionManager,我猜在运行时,Hibernate 应该知道现有的 jpaTransactionManager 并使用它,但是,Infinispan 不知道它因此爆炸了。任何帮助表示赞赏。