Neste artigo, cobriremos:
Uma das alterações mais importantes no AEM 6 são as inovações a nível do repositório.
Atualmente, há duas implementações de armazenamento de nó disponíveis no AEM6: Armazenamento Tar e armazenamento MongoDB.
O PID do armazenamento de nó Segmento foi alterado de org.apache.Jackrabbit.oak.plugins.segment.SegmentNodeStoreService em versões anteriores do AEM 6 para org.apache.Jackrabbit.oak.segment.SegmentNodeStoreService no AEM 6.3. Certifique-se de fazer os ajustes de configuração necessários para refletir essa alteração.
Por padrão, o AEM 6 usa o armazenamento Tar para armazenar nós e binários, usando as opções de configuração padrão. Para configurar manualmente suas configurações de armazenamento, siga o procedimento abaixo:
Baixe o AEM 6 quickstart jar e coloque-o em uma nova pasta.
Desempacotar AEM executando:
java -jar cq-quickstart-6.jar -unpack
Crie uma pasta chamada crx-quickstart\install
no diretório de instalação.
Crie um arquivo chamado org.apache.jackrabbit.oak.segment.SegmentNodeStoreService.cfg
na pasta recém-criada.
Edite o arquivo e defina as opções de configuração. As opções a seguir estão disponíveis para a Loja de Nó de Segmento, que é a base AEM implementação do armazenamento Tar:
repository.home
: Caminho para a home do repositório no qual vários dados relacionados ao repositório são armazenados. Por padrão, os arquivos de segmento seriam armazenados no diretório crx-quickstart/segmentstore.tarmk.size
: Tamanho máximo de um segmento em MB. O padrão é 256 MB.Start AEM.
AEM 6 pode ser configurado para execução com o armazenamento MongoDB seguindo o procedimento abaixo:
Baixe o AEM 6 quickstart jar e coloque-o em uma nova pasta.
Desempacotar AEM executando o seguinte comando:
java -jar cq-quickstart-6.jar -unpack
Verifique se MongoDB está instalado e se uma instância de mongod
está em execução. Para obter mais informações, consulte Instalando MongoDB.
Crie uma pasta chamada crx-quickstart\install
no diretório de instalação.
Configure o armazenamento de nós criando um arquivo de configuração com o nome da configuração que você deseja usar no diretório crx-quickstart\install
.
O Documento Node Store (que é a base para a implementação AEM armazenamento MongoDB) usa um arquivo chamado org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreService.cfg
Edite o arquivo e defina suas opções de configuração. As opções disponíveis são as seguintes:
mongouri
: O 🔗 MongoURI é necessário para se conectar ao Banco de Dados Mongo. O padrão é mongodb://localhost:27017
db
: Nome do banco de dados Mongo. Por padrão, as novas instalações AEM 6 usam aem-author como o nome do banco de dados.cache
: O tamanho do cache em MB. Isso é distribuído entre vários caches usados no DocumentNodeStore. O padrão é 256.changesSize
: Tamanho em MB da coleção com limites usada no Mongo para armazenar a saída do diff em cache. O padrão é 256.customBlobStore
: Valor booliano que indica que um armazenamento de dados personalizado será usado. O padrão é false.Crie um arquivo de configuração com o PID do armazenamento de dados que deseja usar e edite o arquivo para definir as opções de configuração. Para obter mais informações, consulte Configuração de armazenamento de nó e armazenamento de dados.
Start o jar AEM 6 com um backend de armazenamento MongoDB executando:
java -jar cq-quickstart-6.jar -r crx3,crx3mongo
Onde -r
é o modo de execução de backend. Neste exemplo, ele será start com suporte a MongoDB.
O Red Hat Linux usa um algoritmo de gerenciamento de memória chamado THP (Transparent Huge Pages). Enquanto AEM realiza leituras e gravações de granulação fina, o THP é otimizado para operações grandes. Por isso, é recomendável desativar o THP tanto no armazenamento Tar quanto no Mongo. Para desativar o algoritmo, siga estas etapas:
Abra o arquivo /etc/grub.conf
no editor de texto de sua escolha.
Adicione a seguinte linha ao arquivo grub.conf:
transparent_hugepage=never
Finalmente, verifique se a configuração entrou em vigor executando:
cat /sys/kernel/mm/redhat_transparent_hugepage/enabled
Se THP estiver desativado, a saída do comando acima deve ser:
always madvise [never]
Cada atualização no repositório cria uma nova revisão de conteúdo. Como resultado, a cada atualização o tamanho do repositório aumenta. Para evitar o crescimento descontrolado do repositório, é necessário limpar revisões antigas para liberar recursos de disco. Esta funcionalidade de manutenção é chamada de Limpeza de revisão. O mecanismo de Limpeza de revisão recuperará o espaço em disco ao remover dados obsoletos do repositório. Para obter mais detalhes sobre a Limpeza de revisão, leia a página Limpeza de revisão.