如何将Amazon S3配置为Hibernate Search 4.5.3的远程缓存存储

问题描述 投票:0回答:1

我已将Hibernate Search配置为使用infinispan并使用基于文件系统的缓存存储来保存文件系统中的索引而不是内存。

现在,我希望配置S3而不是文件系统,但我无法找到正确的配置。

我的infinispan.xml文件是:

<infinispan
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="urn:infinispan:config:6.0 http://www.infinispan.org/schemas/infinispan-config-6.0.xsd"
      xmlns="urn:infinispan:config:6.0">

  <global>
    <globalJmxStatistics enabled="false" />
    <!-- <transport clusterName="storage-test-cluster" /> -->
    <shutdown hookBehavior="DONT_REGISTER" />
  </global>

  <default>
    <storeAsBinary
      enabled="false" />
    <locking
      isolationLevel="READ_COMMITTED"
      lockAcquisitionTimeout="20000"
      writeSkewCheck="false"
      concurrencyLevel="5000"
      useLockStriping="false" />
    <invocationBatching
      enabled="false" />
  </default>

  <namedCache name="LuceneIndexesMetadata">
    <persistence passivation="false">
       <singleFile
         fetchPersistentState="true"
         preload="true"
         purgeOnStartup="false"
         shared="true"
         ignoreModifications="false"
         location="C:\\infinispan">
       </singleFile>
     </persistence>
  </namedCache>

  <namedCache name="LuceneIndexesData">
    <persistence passivation="false">
       <singleFile
         fetchPersistentState="true"
         preload="true"
         purgeOnStartup="false"
         shared="true"
         ignoreModifications="false"
         location="C:\\infinispan">
       </singleFile>
     </persistence>
  </namedCache>

  <namedCache name="LuceneIndexesLocking">
    <!-- No CacheLoader configured here -->
  </namedCache>

</infinispan>

任何人都可以帮助我配置此文件以将Amazon S3用作缓存存储。

java hibernate amazon-s3 hibernate-search infinispan
1个回答
2
投票

您正在使用的Hibernate Search和Infinispan的特定版本非常陈旧。具体来说,Infinispan在版本6中不支持Amazon S3上的存储。

我建议升级到一些仍在维护的更新版本。

在编写本文时,您可以使用Infinispan 9.1.5.Final和Hibernate Search 5.8.2.Final。

© www.soinside.com 2019 - 2024. All rights reserved.