5
votes

I have an IBM Bluemix application using the Cloudant Bluemix service. Sometimes the calls to Cloudant are slow (several seconds), and a minute later the same call is sub-second. We're not hitting it too hard, but none the less, I thought I would look at replication to see if that makes a performance difference. The documentation is clear on how to create a replica, but there is not doc on how to USE replication.

I'm not sure if that's because the Cloudant features we're entitled to via Bluemix are limited? Or what, but the cloudant doc talks about, for example: - Users connect to the closest replica - If a replica does down, users are directed to the another Source: https://cloudant.com/product/cloudant-features/replication/

With my Cloudant from Bluemix account, I can create a replica (going from DB_A to B and vice versa). But now what?

I'm guessing it's now up to my app to distribute the load or else the above benefits would not apply (ie. I don't know the closest replica and I would think I would not have to write code to detect and outage and redirect to a different replica, right?).

I'm looking for guidance on how to use replication to lighten the load to see if that helps performance.

Thank you, Dan

1
Please send an email to [email protected] and provide some details about your environment. They will help to diagnose the issue.William 'Bill' Wentworth

1 Answers

0
votes

Chances are the node you are hitting is slow, or under heavy load it can happen. Replicating to another database won't help you unless you second database is on a different cluster to the first database.

Also the replications to keep the databases in sync will add additional load to the cluster you are using, even if this is across clusters load will be generated by the replicator keeping the databases in sync if you are using continuous, (which I assume you are).