MSRP - Provider risorsa di archiviazione MongoDB

Informazioni su MSRP

Quando AEM Communities è configurato per utilizzare MSRP come archivio comune, il contenuto generato dall’utente (UGC) è accessibile da tutte le istanze di authoring e pubblicazione senza la necessità di sincronizzazione e replica.

Vedi anche Caratteristiche delle opzioni SRP e Topologie consigliate.

Requisiti

Configurazione MongoDB

Seleziona MSRP

La Console di configurazione dell'archiviazione consente la selezione della configurazione di storage predefinita, che identifica quale implementazione dell'SRP utilizzare.

Per accedere alla console di configurazione dell'archiviazione, all'autore:

  • Dalla navigazione globale, seleziona Strumenti > Community > Configurazione dell'archiviazione.

msrp

  • Seleziona Provider risorsa di archiviazione MongoDB (MSRP)

  • Configurazione mongoDB

    • URI di mongoDB

      default: mongodb://localhost/?maxPoolSize=10&waitQueueMultiple=5&readPreference=secondaryPreferred

    • Database di mongoDB

      default: community

    • Raccolta UGC di mongoDB

      default: content

    • Raccolta allegati mongoDB

      default: allegati

  • SolrConfiguration

    • 🔗Zookeeper Host

      In esecuzione Modalità SolrCloud con uno ZooKeeper esterno, imposta questo valore su HOST:PORT per ZooKeeper, come my.server.com:2181

      Per un insieme ZooKeeper, immetti separati da virgole HOST:PORT valori, quali host1:2181,host2:2181

      Lasciare vuoto se si esegue Solr in modalità autonoma utilizzando lo ZooKeeper interno.
      Predefinito: <blank>

      • URL solare
        L’URL utilizzato per comunicare con Solr in modalità autonoma.
        Lascia vuoto se l’esecuzione è in modalità SolrCloud.

        Predefinito: https://127.0.0.1:8983/solr/

      • Raccolta solare
        Nome della raccolta Solr.

        Predefinito: collection1

  • Seleziona Invia

NOTA

Il database mongoDB, che viene impostato automaticamente sul nome communities, non deve essere impostato sul nome di un database utilizzato per archivi di nodi o archivi di dati (binari). Vedi anche Elementi di storage in AEM 6.5.

Set di replica MongoDB

Per l'ambiente di produzione, si consiglia vivamente di configurare un set di repliche, un cluster di server MongoDB che implementa la replica primaria-secondaria e il failover automatizzato.

Per ulteriori informazioni sui set di repliche, visita MongoDB Replica documentazione.

Per lavorare con i set di repliche e imparare a definire le connessioni tra le applicazioni e le istanze MongoDB, visitare MongoDB Formato URI stringa di connessione documentazione.

Url di esempio per la connessione a un set di replica

# 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

Configurazione Solr

Un'installazione Solr può essere condivisa tra l'archivio nodi (Oak) e l'archivio comune (MSRP) utilizzando diverse raccolte.

Se le raccolte Oak e MSRP vengono utilizzate intensamente, è possibile installare un secondo Solr per motivi di prestazioni.

Per ambienti di produzione, Modalità SolrCloud offre prestazioni migliori rispetto alla modalità autonoma (una singola configurazione Solr locale).

Per informazioni dettagliate sulla configurazione, consulta Configurazione Solr per SRP.

Aggiornamento

Se esegui l’aggiornamento da una versione precedente configurata con MSRP, sarà necessario:

  1. Esegui le aggiornamento ad AEM Communities
  2. Installa nuovi file di configurazione Solr
  3. Reindicizzazione MSRP Vedere la sezione Strumento di reindicizzazione MSRP

Pubblicazione della configurazione

MSRP deve essere identificato come archivio comune su tutte le istanze di authoring e pubblicazione.

Per rendere disponibile nell’ambiente di pubblicazione la configurazione identica, accedi all’istanza dell’autore e segui i passaggi seguenti:

  • Passa dal menu principale a Strumenti > Operazioni > Replica.
  • Seleziona Attiva albero
  • Percorso iniziale:
    • Sfoglia per /etc/socialconfig/srpc/
  • Seleziona Attiva

Gestione dei dati utente

Per informazioni riguardanti utenti, profili utente e gruppi di utenti, spesso inserito nell’ambiente di pubblicazione, visita

Strumento di reindicizzazione MSRP

Esiste un endpoint HTTP per la reindicizzazione di Solr per MSRP quando si installano nuovi file di configurazione o si ripara un indice Solr danneggiato.

Con questo strumento, MongoDB è l'origine di verità per MSRP; i backup devono essere eseguiti solo da MongoDB.

L'intero albero UGC può essere reindicizzato, o solo un sottoalbero specifico, come specificato dal parametro *path *data.

Questo strumento può essere eseguito dalla riga di comando utilizzando cURL o qualsiasi altro strumento HTTP.

Durante la reindicizzazione, esiste un compromesso tra memoria e prestazioni controllato dal parametro *batchSize *data, che specifica quanti record UGC vengono reindicizzati per batch.

Un valore di default ragionevole è 5000:

  • Se la memoria è un problema, specifica un numero più piccolo
  • Se la velocità è un problema, specifica un numero maggiore per aumentare la velocità

Esecuzione dello strumento di reindicizzazione MSRP tramite il comando cURL

Il seguente comando cURL mostra ciò che è necessario per una richiesta HTTP per reindicizzare UGC memorizzato in MSRP.

Il formato di base è:

cURL -u segno -d dati reindex-url

segno = administrator-id:password Ad esempio: admin:admin

dati = "batchSize=size&path=path"

size = quante voci UGC reindicizzare per operazione
/content/usergenerated/asi/mongo/

path = la posizione principale dell'albero dell'UGC da reindicizzare

  • Per reindicizzare tutti gli UGC, specifica il valore del asipathproprietà di
    /etc/socialconfig/srpc/defaultconfiguration
  • Per limitare l'indice ad alcuni UGC, specifica una sottostruttura di asipath

reindex-url = punto finale per la reindicizzazione dell'SRP
http://localhost:4503/services/social/datastore/mongo/reindex

NOTA

Se sei reindicizzazione DSRP Solr, l’URL è /services/social/datastore/rdb/reindex

Esempio di reindicizzazione MSRP

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

Come demo MSRP

Per configurare MSRP per un ambiente di dimostrazione o sviluppo, vedi Come impostare MongoDB per la demo.

Risoluzione dei problemi

UGC non visibile in MongoDB

Assicurati che MSRP sia stato configurato come provider predefinito controllando la configurazione dell'opzione di archiviazione. Per impostazione predefinita, il provider delle risorse di archiviazione è JSRP.

Su tutte le istanze di authoring e pubblicazione AEM, rivisita il Console di configurazione dell'archiviazione oppure controlla l'archivio AEM:

  • In JCR, se /etc/socialconfig

    • Non contiene un srpc node, significa che il provider di archiviazione è JSRP.
    • Se il nodo srpc esiste e contiene il nodo configurazione predefinita, le proprietà della configurazione predefinita devono definire MSRP come provider predefinito.

UGC scompare dopo l'aggiornamento

Se esegui l’aggiornamento da un sito AEM Communities 6.0 esistente, qualsiasi UGC preesistente deve essere convertito per essere conforme alla struttura richiesta per il SRP API dopo l’aggiornamento ad AEM Communities 6.3.

È disponibile uno strumento open source su GitHub a questo scopo:

Lo strumento di migrazione può essere personalizzato per esportare UGC da versioni precedenti di AEM social community per l’importazione in AEM Communities 6.1 o versioni successive.

Errore - id_provider del campo non definito

Se nei registri viene visualizzato il seguente errore, indica che il file dello schema Solr non è configurato correttamente.

JsonMappingException: field provider_id non definito

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

Per risolvere l'errore, quando si seguono le istruzioni per Installazione di MLS standard, garantire:

  • I file di configurazione XML sono stati copiati nel percorso Solr corretto.
  • Solr è stato riavviato dopo che i nuovi file di configurazione hanno sostituito quelli esistenti.

Connessione sicura a MongoDB non riuscita

Se un tentativo di effettuare una connessione protetta al server MongoDB non riesce a causa di una definizione di classe mancante, è necessario aggiornare il bundle del driver MongoDB, mongo-java-driver, disponibile dall’archivio maven pubblico.

  1. Scarica il driver da https://search.maven.org/#artifactdetails%7Corg.mongodb%7Cmongo-java-driver%7C2.13.2%7Cjar (versione 2.13.2 o successiva).
  2. Copia il bundle nella cartella "crx-quickstart/install" per un'istanza AEM.
  3. Riavvia l'istanza AEM.

Riferimenti

In questa pagina