我需要像这样的杰克兔群集的建议,任何人都可以提供参考。
有服务器1& 2和jackrabbit服务器1& 2在那里。每个jack兔子服务器都创建了一个jack jack文件夹。
如果server1访问插孔兔服务器2,则所需内容不可用。 我该如何实现此功能。
答案 0 :(得分:2)
拥有2台服务器的场景很常见。所有这一切都需要配置Apache Jackrabbit进行设置。为清楚起见,我假设你使用的是Apache Jackrabbit 2.x而不是OAK。
使用Jackrabbit 2,您可以通过两种方式在两台服务器之间配置群集:
使用网络共享
您可以使用共享网络驱动器。在Jackrabbit存储库配置(repository.xml)中,您需要基于FileJournal配置集群元素。
<Cluster id="node1">
<Journal class="org.apache.jackrabbit.core.journal.FileJournal">
<param name="revision" value="${rep.home}/revision.log" />
<param name="directory" value="/nfs/myserver/myjournal" />
</Journal>
</Cluster>
使用数据库
您可以使用数据库来共享内容和日志(同步不同的存储库所需。在下面的示例中,我们将使用Oracle,但它可以是任何类型的RDBMS。
<Cluster id="node1" syncDelay="2000">
<Journal class="org.apache.jackrabbit.core.journal.OracleDatabaseJournal">
<param name="revision" value="${rep.home}/revision.log" />
<param name="driver" value="oracle.jdbc.driver.OracleDriver" />
<param name="url" value="jdbc:oracle:thin:@myhost:1521:mydb" />
<param name="user" value="scott"/>
<param name="password" value="tiger"/>
</Journal>
</Cluster>
在这两种情况下,在Cluster元素上设置不同的ID非常重要,以便Jackrabbit知道哪些节点仍需要更新。
有关详细信息,请参阅Apache Jackrabbit Clustering页面。