Friday, May 29, 2020

how to Troubleshoot performance issue in ATG-Endeca Integration?

As part of peak load or during load test if following symptoms are seen in ATG-Endeca integration. Out of Memory in store instance. Sto... thumbnail 1 summary
As part of peak load or during load test if following symptoms are seen in ATG-Endeca integration.

  1. Out of Memory in store instance.
  2. Store instance takes lots of time to process a request.
  3. Promote content from Endeca takes lots of time to apply
  4. Dgraph CPU usage looks correct and no issue seen in Dgraph instance.
  5. High network I/O in Dgraph instance.

Troubleshoot`/Debug from Endeca/Assembler side

1. Get Dgraph request log from all Dgraph instance. Dgraph log can find out under below folder /LLM/logs/dgraphs/<<Dgraph_Name>>/<<Dgraph_Name>>.reqlog.

2. Run Request log analyzer to see the issue at each Dgraph level. Following parameters needs to be observed from log analyzer output

  • Query Queueing time - See if Thread size is defined correctly for Dgraph
  • Query response delay in Dgraph
    • Get MDEX statistics using http://<Draph_server>:<port>/admin?op=stats.
  • Endeca MDEX Performance Statistics
  • Large Response Size 
    • Unnecessary supplement objects are getting returned from Assembler Cartridge
    • Select clause in ResultsList/Spotlight cartridge not used to get Endeca record object from Dgraph
Endeca Statistics Large Endeca query response Size

Click here to see Endeca Query Performance Tuning

Click here to see Slow Query Response Time

Click here to see Cartridge select clause implementation

Troubleshoot/Debug from ATG side

1.Enable loggingDebug on the following components and try to replicate the issue.

  • /atg/endeca/assembler/AssemblerTools
  • /atg/endeca/assembler/NucleusAssemblerFactory
  • /atg/endeca/assembler/AssemblerPipelineServlet
2. Enable Performance Monitor in ATG store insatce for some times and collect information to debug it further and turned it off.

3. Run Top Command to see which process is taking more time.

4.  See if port 8007 has number of connection due to promote content. This is set as part of /atg/endeca/assembler/cartridge/manager/DefaultWorkbenchContentSource componet.

From Author

Was this post resolve the solution you are looking for? am I missing any points that can be added here?
Provide your comments

No comments

Post a Comment

Note: Only a member of this blog may post a comment.

Text Widget