使用文件系统而不是数据库来存储jackrabbit中的pdf文件

在我们的项目中,我们使用带有spring和tomcat的jackrabbit来管理pdf文件。

目前,MySql数据库正用于存储blob文件(就jackrabbit而言,它被称为BundleDbPersistenceManager)。

一旦生成的文件数量增加,我们就会考虑使用文件系统而不是数据库来提高性能并消除复制开销。 在规格 jackrabbit团队建议使用BundleFsPersistenceManager而不是像这样的评论

不适用于生产环境(只读用途除外)

有没有人有使用BundleFsPersistenceManager的经验,并且可以引用从mysql数据库中的blob到文件系统中的文件的无痛迁移的任何资源?

非常感谢你提前

Jackrabbit中的持久性有点复杂,首先阅读配置概述文档是有意义的。

在Jackrabbit中,二进制文件默认存储在数据存储中 ,而不是存储在持久性管理器中 。 即使您使用BundleDbPersistenceManager ,大型二进制文件也存储在数据存储中。 您可以将(默认) FileDataStoreBundleDbPersistenceManager组合在一起。

我建议不要使用BundleFsPersistenceManager,因为如果程序在写入时被杀死,数据很容易被破坏。