我如何实现Infinispan缓存加载器?是否有任何模式或方法可以在infinispan中实现它?
发布于 2012-10-07 01:21:22
大多数现有的CacheLoader实现都假设数据只需要存储,并盲目地将其视为字节数组。Infinispan中的集成API除了"store(Key,Value)“或"load(Key)”之外并没有公开太多的上下文。我有点过于简单化了,但这就是核心。
有一个例外,那就是LuceneCacheLoader。这是专为与Lucene Directory for Infinispan结合使用而设计的,因为它利用以下事实
看一下获得灵感的源码;注意我只实现了加载(这是一个CacheLoader)。
如果您同时使用Infinispan和CacheLoader来控制应用程序,那么您也可以利用这些细节。
棘手的方面:
在同一事务中写入多个键时,您将能够一次访问CacheLoader逻辑范围内的一个条目,难以映射关系:必须一次处理一个实体,并且"restore connections"
考虑到这些,我相信你可以写一个。有多简单?这取决于你的应用程序。
我不确定通用的解决方案是否可以工作。如果你发现它可以,请贡献它,因为它将是一个伟大的补充项目。
https://stackoverflow.com/questions/12633680
复制相似问题