AEM 6.5中的存储元素 storage-elements-in-aem
本文涵盖以下内容:
AEM 6中的存储概述 overview-of-storage-in-aem
AEM 6最重要的变化之一是存储库级别的创新。
目前,AEM6中有两种节点存储实现可用: Tar存储和MongoDB存储。
Tar存储 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为单位)。 默认值为256 MB。
-
启动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
目录中使用的配置的名称。Document Node Store (作为AEM MongoDB存储实现的基础)使用名为
org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreService.cfg
的文件 -
编辑文件并设置配置选项。 以下选项可供选择:
mongouri
:连接到Mongo数据库所需的MongoURI。 默认值为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®使用称为Transparent Great Pages (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]
- 有关Red Hat® Linux®上透明大页面的更多信息,请参阅Red Hat®客户门户中的以下文章: 如何在Red Hat Enterprise Linux 6、7和8中使用、监视和禁用透明大页面?
- 有关Linux®优化提示,请参阅性能优化。
维护存储库 maintaining-the-repository
存储库的每次更新都会创建一个内容修订版本。 因此,存储库的大小会随着每次更新而增长。 为避免存储库增长失控,必须清理旧修订以释放磁盘资源。 此维护功能称为修订版清理。 修订清理机制通过从存储库中删除过时数据来回收磁盘空间。 有关修订清理的更多详细信息,请阅读修订清理页面。