Power of choice load balancing

Activity

Show:
Alan Boudreault
January 11, 2020, 7:27 AM

We should check if it makes sense to also include this option: https://github.com/riptano/java-driver/pull/39

Alan Boudreault
January 11, 2020, 7:38 AM

For now, I think it's not critical since a user can easily switch back to the DCAwareRR one... but I'll let you see.

James Falcon
February 11, 2020, 8:41 AM

After switching from using an event loop timer to using a background thread, performance has come back to an expected level. I ran 3 different comparisons:

 

simple statements, no server irregularities:
http://cockpit.sjc.dsinternal.org/results?grouping=query&testIds=1394_1395
Observation: Slightly higher p999+ latencies using PoC
255: Token aware round robin on master
664: PowerOfChoice on branch

prepared statements, no server irregularities:
http://cockpit.sjc.dsinternal.org/results?grouping=query&testIds=1392_1393
Observation: Much better perf using PoC across the board
c83: PowerOfChoice on branch
081: Token aware round robin on master

prepared statements, CPU burn on 2 nodes and increased latency to 500ms on a 3rd
http://cockpit.sjc.dsinternal.org/results?grouping=query&testIds=1390_1391
Observation: PoC successsfully avoiding bad nodes for most queries. p999+ PoC latencies get 5-15% worse.
04b: PowerOfChoice on branch
aab: Token aware round robin on master

 

All tests run can be found under fallout test https://fallout.sjc.dsinternal.org/tests/ui/james.falcon@datastax.com/py-perf#

Assignee

James Falcon

Reporter

Jaume Marhuenda

Fix versions

Labels

None

PM Priority

A

External issue ID

None

Doc Impact

None

Reviewer

None

Size

None

Sprint

Py P-MAJOR-NEXT

Priority

Major