- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想在集群中设置 Jackrabbit(我正在用 Liferay 设置它)。
我阅读了这份文件 - http://wiki.apache.org/jackrabbit/Clustering ,不幸的是它很短,所以我不明白一些概念和最佳实践。让我先解释一下我的设置:
我们有 2 个共享相同文件系统的 weblogic 服务器,并且我们将相同的 war 部署到两个 weblogics。我使用 Oracle 作为数据库(我在 WL 中配置了连接池并想使用 JNDI 进行连接)
正如我从文档中了解到的,每个节点都必须有一个单独的配置,它有自己的存储库目录、工作区文件系统和搜索索引。
两个节点共享 PersistranceManager、存储库文件系统和数据存储(如果我有和)
以下是问题:
<?xml version="1.0"?>
<Repository>
<FileSystem class="org.apache.jackrabbit.core.fs.db.OracleFileSystem">
<param name="driver" value="javax.naming.InitialContext"/>
<param name="url" value="ISG" />
<param name="schema" value="oracle"/>
<param name="schemaObjectPrefix" value="J_R_FS_"/>
</FileSystem>
<Security appName="Jackrabbit">
<AccessManager class="org.apache.jackrabbit.core.security.SimpleAccessManager" />
<LoginModule class="org.apache.jackrabbit.core.security.SimpleLoginModule">
<param name="anonymousId" value="anonymous" />
</LoginModule>
</Security>
<Workspaces rootPath="${rep.home}/workspaces" defaultWorkspace="liferay" />
<Workspace name="${wsp.name}">
<PersistenceManager class="org.apache.jackrabbit.core.persistence.db.OraclePersistenceManager">
<param name="driver" value="javax.naming.InitialContext"/>
<param name="url" value="ISG" />
<param name="tableSpace" value="" />
<param name="schema" value="oracle" />
<param name="schemaObjectPrefix" value="J_PM_${wsp.name}_" />
<param name="externalBLOBs" value="false" />
</PersistenceManager>
<FileSystem class="org.apache.jackrabbit.core.fs.db.OracleFileSystem">
<param name="driver" value="javax.naming.InitialContext"/>
<param name="url" value="ISG" />
<param name="tableSpace" value="" />
<param name="schema" value="oracle"/>
<param name="schemaObjectPrefix" value="J_FS_${wsp.name}_"/>
</FileSystem>
</Workspace>
<Versioning rootPath="${rep.home}/version">
<FileSystem class="org.apache.jackrabbit.core.fs.db.OracleFileSystem">
<param name="driver" value="javax.naming.InitialContext"/>
<param name="url" value="ISG" />
<param name="schema" value="oracle"/>
<param name="schemaObjectPrefix" value="J_V_FS_"/>
</FileSystem>
<PersistenceManager class="org.apache.jackrabbit.core.persistence.db.OraclePersistenceManager">
<param name="driver" value="javax.naming.InitialContext"/>
<param name="url" value="ISG" />
<param name="tableSpace" value="" />
<param name="schema" value="oracle" />
<param name="schemaObjectPrefix" value="J_V_PM_" />
<param name="externalBLOBs" value="false" />
</PersistenceManager>
</Versioning>
<Cluster id="node_1" syncDelay="2000">
<Journal class="org.apache.jackrabbit.core.journal.OracleDatabaseJournal">
<param name="revision" value="${rep.home}/revision.log"/>
<param name="driver" value="javax.naming.InitialContext"/>
<param name="url" value="ISG" />
<param name="tableSpace" value="" />
<param name="schema" value="oracle"/>
<param name="schemaObjectPrefix" value="J_C_"/>
</Journal>
</Cluster>
</Repository>
最佳答案
Liferay 的官方文档建议在集群场景中使用数据库共享 Jackrabbit 数据,而不是文件系统。
假设您在每个 Liferay 节点上使用文件系统(这是开箱即用的 Liferay 配置)。节点 A 将无法访问节点 B 上的 Jackrabbit 数据,反之亦然。随着时间的推移,节点变得越来越不同步。为了解决这个问题,您可以创建一个网络共享并将每个节点配置为指向该共享。这样做的问题是,如果每个 Liferay 节点同时写入,可能会导致文件损坏。
这给您留下了两个选择;保持独立的文件系统并集成同步实用程序或将数据放入数据库中。由于文件系统同步充其量只是一个骗局,因此您最好的选择是将 Jackrabbit 数据放入数据库中。
使用数据库有一些优点和缺点。它可能会降低性能,确实如此。与此同时,数据现在是常规灾难恢复策略的一部分,有些人可能会认为它更便于携带。
编辑 - 添加:在 5.2 版中的某个时候添加了一个 AdvancedFileSystemHook,它解决了使用共享网络文件系统时文件损坏和锁定问题的问题。为了实现这一点,更改您的 portal-ext.properties 文件以使用 AdvancedFileSystemHook,将您的数据迁移到共享位置,将您的水平节点指向共享位置。
关于liferay - 在集群环境中设置 Jackrabbit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7126226/
任何人都知道如何将内容从一个 Magnolia CMS 存储库(Jackrabbit 存储库)传输/迁移到我们的应用程序使用的另一个自定义 jacrabbit 存储库? 最佳答案 正如另一张海报所建议
我们只使用 Jackrabbit 来存储文件,我们稍后会使用它们的完整路径或 UUID 来检索这些文件。在这种情况下关闭 Jackrabbit 索引是否安全? Jackrabbit XPath 查询呢
我有两个包含相同内容的 Jackrabbit 实例。重建 Lucene 索引很慢,30+ 小时,集群中需要的停机时间是有风险的。是否可以只重新索引一个 Jackrabbit,然后将 Lucene 索引
如果这听起来很愚蠢,我很抱歉,但是 Jackrabbit 和 Oak 之间有什么区别?我正在研究 JCR170,特别是如何在两个 jackrabbit 安装之间迁移内容,我遇到了 JackRabbit
在您的应用程序中将 Apache Jackrabbit JCR 作为嵌入式服务运行时,是否有一种快速的方法可以在不关闭 Jackrabbit 的情况下对 Jackrabbit 存储库的内容进行可靠且一
一旦节点被删除,您如何找到它以便您可以使用 jackrabbit 或 jcr API 恢复它? 最佳答案 我不是 Jackrabbit 版本控制方面的专家,但据我所知,除非您知道其中的一些数据,否则没
在我的项目中,我需要将 Jackrabbit 1.3 更改为 Jackrabbit 2.1.1。我的工作是为查询工作。如果索引格式和查询格式有变化,请建议我。 Jackrabbit 2.1.1 使用
如果我明白了,Apache Sling 会为 Jackrabbit JCR 存储库充当 REST CRUD 接口(interface)。 由于已经存在 RESTful 协议(protocol)(其 A
我已经使用 jackrabbit-standalone-2.4.2.jar 创建了一个代码,并且在项目目录中获取了 jackrabbit.log_IS_UNDEFINED.log 文件。该日志文件非常
我尝试使用 Jackrabbit 和 Oracle DB 作为持久层。因此,我在 Tomcat 6 服务器(本地)上安装了 Jackrabbit。数据库在虚拟机中运行。从 Jackrabbits 项目
我在 Jackrabbit 存储库中标记了对象(实际上是 Adobe/Day CQ 的 CRX,但我认为这是 Jackrabbit 代码): Assets :标签 = A、B 子 Assets 数
我有一个基于文件系统的Jackrabbit存储库,我想直接查看和编辑。是否有一个允许我直接查看/编辑/删除/添加节点的工具? 最佳答案 Jackrabbit本身目前没有内置的通用JCR资源管理器,但是
我正在将海量数据导入JackRabbit JCR存储库。一个好的可视化JCR存储库的UI管理工具将非常适合检查导入的数据是否布局正确,也将使我作为开发人员的生活更加轻松。 最佳答案 我是JCR Con
我想在集群中设置 Jackrabbit(我正在用 Liferay 设置它)。 我阅读了这份文件 - http://wiki.apache.org/jackrabbit/Clustering ,不幸的是
我遇到了一个问题,即由于一次有超过 1000 个访问控制条目处于事件状态,许多进程被阻塞;这是known issue in Jackrabbit ;已确定解决方法并将其推出到 2.4.1 中,但 CQ
我已经向 jackrabbit 用户列表发送了相同的消息,但没有人回复我。 我想使用 Jackrabbit 2.4.3 更新一个节点及其子节点,抛出 jackrabbit-jcr2dav。 (就像合并
在我们对使用 jackrabbit 的应用程序进行了一些性能测试之后,我们面临着并发修改 jackrabbit 存储库的巨大问题。当我们在多线程模拟中添加节点或编辑节点时,就会出现问题。然后我编写了非
我目前正在建立一个 Liferay 门户实例。 Liferay 使用 Jackrabbit 作为其文档存储库管理系统。要配置 Jackrabbit,我必须将数据库访问 URL、用户名和密码放入repo
有人可以提供一个集成 spring 3 和 jackrabbit 2.5 的例子吗?如果您可以在示例中提供 spring 配置 (applicationContext.xml) 和 jackrabbi
我的应用程序使用独立版本的 jackrabbit,我们想转移到嵌入式模式以便我们可以对其进行集群。 我阅读了 jackrabbit 集群站点上的要求,但仍然感到困惑。我应该为每个集群节点设置不同的主目
我是一名优秀的程序员,十分优秀!