AEM 6.4中的存储元素 storage-elements-in-aem
在本文中,我们将介绍:
AEM 6中的存储概述 overview-of-storage-in-aem
AEM 6中最重要的更改之一是存储库级别的创新。
目前,AEM6中提供了两个节点存储实施:Tar存储和MongoDB存储。
焦油存储 tar-storage
使用Tar存储运行新安装的AEM实例 running-a-freshly-installed-aem-instance-with-tar-storage
默认情况下,AEM 6使用Tar存储,使用默认配置选项来存储节点和二进制文件。 要手动配置其存储设置,请按照以下步骤操作:
-
下载AEM 6快速入门Jar并将其置于新文件夹中。
-
运行以解包AEM:
java -jar cq-quickstart-6.jar -unpack
-
创建名为的文件夹
crx-quickstart\install
在安装目录中。 -
创建一个名为
org.apache.jackrabbit.oak.segment.SegmentNodeStoreService.cfg
中。 -
编辑文件并设置配置选项。 区段节点存储提供了以下选项,这是AEM Tar存储实施的基础:
repository.home
:存储各种存储库相关数据的存储库主页的路径。 默认情况下,区段文件将存储在crx-quickstart/segmentstore目录下。tarmk.size
:区段的最大大小(MB)。 默认为256MB。
-
启动AEM。
Mongo存储 mongo-storage
使用Mongo Storage运行新安装的AEM实例 running-a-freshly-installed-aem-instance-with-mongo-storage
AEM 6可配置为通过MongoDB存储运行,具体过程如下:
-
下载AEM 6快速入门Jar并将其放入新文件夹中。
-
运行以下命令解包AEM:
java -jar cq-quickstart-6.jar -unpack
-
确保安装了MongoDB,并且实例为
mongod
正在运行。 有关更多信息,请参阅 安装MongoDB. -
创建名为的文件夹
crx-quickstart\install
在安装目录中。 -
通过创建一个配置文件来配置节点存储,该配置文件的名称是您要在
crx-quickstart\install
目录访问Advertising Cloud的帮助。文档节点存储(是AEM MongoDB存储实施的基础)使用名为的文件
org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreService.cfg
-
编辑文件并设置配置选项。 以下选项可供选择:
mongouri
:的 MongoURI 连接到Mongo数据库时需要。 默认值为mongodb://localhost:27017
db
:Mongo数据库的名称。 默认情况下,新的AEM 6安装使用 aem-author 作为数据库名称。cache
:高速缓存大小(MB)。 它分布在DocumentNodeStore中使用的各种缓存中。 默认为256。changesSize
:Mongo中用于缓存差异输出的封闭集合的大小(MB)。 默认为256。customBlobStore
:布尔值,指示将使用自定义数据存储。 默认值为false。
-
使用您要使用的数据存储的PID创建配置文件,然后编辑该文件以设置配置选项。 有关详细信息,请参阅 配置节点存储和数据存储.
-
通过运行以下操作,使用MongoDB存储后端启动AEM 6 jar :
code language-shell java -jar cq-quickstart-6.jar -r crx3,crx3mongo
其中
-r
是后端运行模式。 在本例中,将从MongoDB支持开始。
禁用透明大页面 disabling-transparent-huge-pages
Red Hat Linux使用一种名为“透明大页”(THP)的内存管理算法。 在AEM执行细粒度读取和写入时,THP已针对大型操作进行优化。 因此,建议您在Tar和Mongo存储上禁用THP。 要禁用算法,请执行以下步骤:
-
打开
/etc/grub.conf
文件。 -
将以下行添加到 grub.conf 文件:
code language-none transparent_hugepage=never
-
最后,通过运行以检查该设置是否生效:
code language-none cat /sys/kernel/mm/redhat_transparent_hugepage/enabled
如果禁用了THP,则上述命令的输出应为:
code language-none always madvise [never]
维护存储库 maintaining-the-repository
对存储库的每次更新都会创建新的内容修订版本。 因此,每次更新时,存储库的大小都会增大。 为避免存储库增长失控,需要清理旧的修订版本以释放磁盘资源。 此维护功能称为修订清理。 修订清理机制将通过从存储库中删除过时的数据来回收磁盘空间。 有关修订清理的更多详细信息,请阅读 “修订清理”页.