The newest release 4.3.2 of the official ArangoDB Java driver comes with load balancing for cluster setups and advanced fallback mechanics.
Load balancing strategies
There are two different strategies for load balancing that the Java driver provides. The first and most common strategy is the round robin way. Round robin does, what the name already assumes, a round robin load balancing where a list of known coordinators in the cluster is iterated through. Each database operation uses a different coordinator than the one before.
Most of the database operations can be handled by this simple logic. But for AQL queries we need something smarter. We have to stick to a specific coordinator when performing AQL queries where its result is not fully returned in a single response. In this case, ArangoDB creates state in form of a local cursor on the coordinator, the initial query was sent to. Every following request to get more batches of the result has to go to the same coordinator. Different to most simple standalone load balancer the driver is able to take care of that.