We have managed to setup xDb in our production environment. Currently, we only setup a single instance of Processing/Aggregation server. We are planning to add another server as a processing/aggregation server to share the load on processing analytics data. I would like to know how to achieve this goal and understand how the servers will handle the job given that both servers are up and running in parallel. Can you please advice the steps or references?

I have read some articles that this can be done but there is not concrete details on how to setup correctly.

Thanks in advance.

Sitecore version: Sitecore 8.1 rev. 160519

up vote 5 down vote accepted

Practically speaking, you just need to follow the Sitecore documentation whenever you set up a new processing instance. There doesn't have to be any difference or special setup between them.

The way it works is, processing agents are built to leverage concurrency. In fact, you can (and should) run multiple aggregation agents on every processing instance.

These agents automatically distribute work by using processing pools—the workflow of this is in part described here. When there are many interactions in a processing pool, every aggregation agent will take a limited range of those and process them one-by-one. Other agents will process their own ranges.

All in all, xDB is built to be distributed. You spin up as many processing instances as you wish, and they just work.

  • Thank you Dmytro! I have implemented the multiple processing servers and working as you have mentioned. – arseny Feb 17 at 14:16

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.