Se hai fatto un uso estensivo dei permessi / ACL in CQ o CRX, questo può influenzare le prestazioni di ricerca CRX perché quando i risultati della ricerca vengono recuperati devono essere filtrati rispetto ai permessi nel repository CRX.
Nei casi in cui questo è un problema, se si considerano i thread dump si vedrà che è presente un ingente lock contention relativo alle tracce di stack contenenti la classe CacheEntryCollector.
Per vedere se hai abbastanza permessi (nodi rep:ACE) impostati nel tuo repository per influenzare notevolmente le prestazioni, fai quanto segue:
Se il risultato sono più di 5000 nodi, vedi sotto per i dettagli su come migliorare le prestazioni del sistema.
1. Prima di tutto, ricerca se puoi o meno ridurre il numero totale di ACL. Qui ci sono alcuni suggerimenti che possono essere utili:
Nota: Se non sai come visualizzare le ACL in CRX allora vedi questo articolo. Puoi anche cercare gli ACL usando la ricerca di cui sopra //element(*,rep:ACL) order by @jcr:score.
2. Una volta ridotto il numero totale di ACE, se si verificano ancora problemi di prestazioni, guarda se è possibile implementare un livello di cache nel codice dell'applicazione per i risultati di ricerca più comuni.
3. Infine, per aumentare la dimensione della cache ACL.
CRX 2.2
Accedi al tuo account