Getting straight to the point
One historical issue with the client method of connecting to the cluster is that most operations require multiple hops to perform an action. This is because we only maintain a connection to a single node of the cluster and run all our operations through it. With more recent versions of Hazelcast, this issue has been addressed; clients have been made smarter. As the strategy of data partitioning is relatively simple and operates on a consistent hashing algorithm, this knowledge and awareness has been added to the clients, allowing them to route cluster operations directly to the node that owns the data being interacted with. For operations that are not key based and hence, don't have a nominal owner, LoadBalancer
within the client will attempt to spread the load between the available member nodes; by default, this uses a round-robin strategy but is a configurable option within ClientConfig
used to create the client.
However, these routing smarts might not work...