Show Menu
TEMAS×

MSRP - Proveedor de recursos de Almacenamiento MongoDB

Acerca de MSRP

Cuando los AEM Communities están configurados para utilizar MSRP como su almacén común, el contenido generado por el usuario (UGC) es accesible desde todas las instancias de creación y publicación sin necesidad de sincronización ni replicación.
Consulte también Características de las Opciones de SRP y Topologías Topologías recomendadas para las comunidades recomendadas.

Requisitos

    • Versión 2.6 o buena
    • No es necesario configurar los mongos ni el uso compartido
    • Recomendar enérgicamente el uso de un conjunto de réplicas
    • Puede ejecutarse en el mismo host que AEM o de forma remota

MongoDB Configuration

Seleccionar MSRP

La consola Configuración de Almacenamiento permite seleccionar la configuración de almacenamiento predeterminada, que identifica la implementación de SRP que se va a utilizar.
Al crear, para acceder a la consola de configuración de Almacenamiento:
  • En la navegación global, seleccione Herramientas > Comunidades > Configuración de Almacenamiento.
  • Select MongoDB Storage Resource Provider (MSRP)
  • Configuración de mongoDB
    • URI de mongoDB
      predeterminado : mongodb://localhost/?maxPoolSize=10&waitQueueMultiple=5&readPreference=secondaryPreferred
    • Base de datos mongoDB
      predeterminado : comunidades
    • Colección de UGC mongoDB
      predeterminado : content
    • Colección de datos adjuntos mongoDB
      predeterminado : adjuntos
  • SolrConfiguration
    • Cuando se ejecuta en el modo Modo SolrCloud SolrCloud con un ZooKeeper externo, establezca este valor en el HOST:PORT para ZooKeeper, como my.server.com:2181
      Para un ensamblado ZooKeeper, introduzca valores separados por HOST:PORT comas, como host1:2181,host2:2181
      Deje en blanco si ejecuta Solr en modo independiente utilizando el ZooKeeper interno. Predeterminado : <blank>
      • Solr URL ​La URL que se utiliza para comunicarse con Solr en modo independiente. Deje en blanco si se ejecuta en el modo de SolrCloud.
        Predeterminado : https://127.0.0.1:8983/solr/
      • Colección ​Solr El nombre de la colección Solr.
        Predeterminado : collection1
  • Seleccione Enviar
La base de datos mongoDB, que se establece de forma predeterminada en el nombre communities , no debe establecerse en el nombre de una base de datos que se esté utilizando para almacenes de nodos o almacenes de datos (binarios). Consulte también Elementos de Almacenamiento en AEM 6.5 .

Conjunto de réplicas MongoDB

Para el entorno de producción, se recomienda enfáticamente configurar un conjunto de réplicas, un clúster de servidores MongoDB que implementa replicación primaria-secundaria y failover automatizado.
Para obtener más información sobre los conjuntos de réplicas, visite la documentación de replicación de MongoDB.
Para trabajar con conjuntos de réplicas y aprender a definir conexiones entre las aplicaciones y las instancias de MongoDB, visite la documentación de Formato URI de cadena de conexión de MongoDB.

Url de ejemplo para la conexión a un conjunto de réplicas

# Example url for:
# servers "mongoserver1", "mongoserver2", "mongoserver3"
# replica set 'rs0'
# port numbers only necessary if not default port 27017
mongodb://mongoserver1:<mongoport1>,mongoserver2:<mongoport2>,mongoserver3:<mongoport3>/?replicaSet=rs0&maxPoolSize=100&waitQueueMultiple=50&readPreference=secondaryPreferred

Configuración de Solr

Una instalación de Solr puede compartirse entre el almacén de nodos (Oak) y el almacén común (MSRP) mediante diferentes colecciones.
Si se utilizan intensamente las colecciones Oak y MSRP, se puede instalar un segundo Solr por motivos de rendimiento.
Para los entornos de producción, el modo Modo SolrCloud SolrCloud ofrece un rendimiento mejorado con respecto al modo independiente (una única configuración local de Solr).
Para obtener más información sobre la configuración, consulte Configuración solar para SRP .

Actualización

Si se actualiza desde una versión anterior configurada con MSRP, será necesario:
  1. Instalar nuevos archivos de configuración de Solr
  2. Reindexar MSRPSee sección Herramienta de reindexación MSRP

Publicación de la configuración

El MSRP debe identificarse como el almacén común en todas las instancias de creación y publicación.
Para que la configuración idéntica esté disponible en el entorno de publicación, inicie sesión en la instancia de creación y siga los pasos:
  • Vaya del menú principal a Herramientas > Operaciones > Replicación .
  • Seleccione Activar árbol
  • Ruta de inicio :
    • Vaya a /etc/socialconfig/srpc/
  • Seleccionar activar

Administración de datos de usuario

Para obtener información sobre usuarios , perfiles de usuarios y grupos de usuarios, que se especifican a menudo en el entorno de publicación, visite

Herramienta de reindexación MSRP

Hay un extremo HTTP para volver a indexar Solr para MSRP al instalar nuevos archivos de configuración o reparar un índice Solr dañado.
Con esta herramienta, MongoDB es la fuente de la verdad para el MSRP; las copias de seguridad sólo se deben realizar de MongoDB.
El árbol UGC completo se puede volver a indexar, o solo un subárbol específico, tal como se especifica en el parámetro *path *data.
Esta herramienta se puede ejecutar desde la línea de comandos mediante cURL o cualquier otra herramienta HTTP.
Al reindexar, hay un equilibrio entre la memoria y el rendimiento controlado por el parámetro *batchSize *data, que especifica cuántos registros UGC se reindexan por lote.
Un valor predeterminado razonable es 5000:
  • Si la memoria es un problema, especifique un número menor
  • Si la velocidad es un problema, especifique un número mayor para aumentar la velocidad

Ejecución de la herramienta de reindexación MSRP mediante el comando cURL

El siguiente comando cURL muestra lo que es necesario para que una solicitud HTTP vuelva a indexar UGC almacenado en MSRP.
El formato básico es:
cURL -u inicio de sesión -d datos reindex-url
inicio de sesión = id-administrador:contraseñaPor ejemplo: admin:admin
data = "batchSize= size &path= path"
size = cuántas entradas de UGC se reindexarán por operación /content/usergenerated/asi/mongo/
path = la ubicación raíz del árbol de UGC para volver a indexar
  • Para volver a indexar todo el UGC, especifique el valor de la asipath propiedad de /etc/socialconfig/srpc/defaultconfiguration
  • Para limitar el índice a algún UGC, especifique un subárbol de asipath
reindex-url = el punto final para volver a indexar el SRP http://localhost:4503/services/social/datastore/mongo/reindex
Si está reindexando DSRP Solr , la dirección URL es /services/social/datastore/rdb/reindex

Ejemplo de reindexación MSRP

curl -s -u admin:admin -d 'batchSize=10000&path=/content/usergenerated/asi/mongo/' http://localhost:4503/services/social/datastore/mongo/reindex

Cómo Demostrar el MSRP

Para configurar el MSRP para un entorno de demostración o desarrollo, consulte HowTo Setup MongoDB for Demo .

Solución de problemas

UGC no visible en MongoDB

Compruebe la configuración de la opción de almacenamiento para asegurarse de que MSRP se ha configurado como el proveedor predeterminado. De forma predeterminada, el proveedor de recursos de almacenamiento es JSRP.
En todas las instancias de creación y publicación de AEM, vuelva a la consola de configuración de Almacenamiento o compruebe el repositorio de AEM:
  • En JCR, if /etc/socialconfig
    • No contiene un nodo srpc , significa que el proveedor de almacenamiento es JSRP.
    • Si el nodo srpc existe y contiene la configuración predeterminada del nodo, las propiedades de configuración predeterminada deben definir MSRP para que sea el proveedor predeterminado.

UGC desaparece tras la actualización

Si realiza la actualización desde un sitio existente de AEM Communities 6.0, cualquier UGC preexistente debe convertirse para ajustarse a la estructura requerida para la API de SRP después de actualizar a AEM Communities 6.3.
Hay una herramienta de código abierto disponible en GitHub para este propósito:
La herramienta de migración se puede personalizar para exportar UGC de versiones anteriores de comunidades sociales AEM para importarlos a AEM Communities 6.1 o posterior.

Error: proveedor de campos no definido

Si aparece el siguiente error en los registros, indica que el archivo esquema Solr no está configurado correctamente.

JsonMappingException: field provider_id no definido

Caused by: com.fasterxml.jackson.databind.JsonMappingException: undefined field provider_id
at com.fasterxml.jackson.databind.ser.DefaultSerializerProvider.serializeValue(DefaultSerializerProvider.java:129)
at com.fasterxml.jackson.databind.ObjectMapper.writeValue(ObjectMapper.java:1819)
at com.adobe.cq.social.scf.core.BaseSocialComponent.toJSONString(BaseSocialComponent.java:196)
... 124 common frames omitted

Para resolver el error, al seguir las instrucciones para instalar MLS estándar, asegúrese de:
  • Los archivos de configuración XML se copiaron en la ubicación de Solr correcta.
  • Solr se reinició después de que los nuevos archivos de configuración reemplazaran a los existentes.

Falla la conexión segura con MongoDB

Si un intento de establecer una conexión segura con el servidor MongoDB falla debido a la falta de una definición de clase, es necesario actualizar el paquete de controladores MongoDB, mongo-java-driver , disponible en el repositorio público.
  1. Copie el paquete en la carpeta "crx-quickstart/install" para una instancia de AEM.
  2. Reinicie la instancia de AEM.