Product overview > Availability overview > Replicas and shards
Reading from replicas
You can configure map sets such that a client is permitted to read from a replica rather than being restricted to primary shards only.
It can often be advantageous to allow replicas to serve as more than simply potential primaries in the case of failures. For example, map sets can be configured to allow read operations to be routed to replicas by setting the replicaReadEnabled option on the MapSet to true. The default setting is false.
For more information on the MapSet element, see Deployment policy descriptor XML file.
Enable reading of replicas can improve performance by spreading read requests to more Java™ virtual machines. If the option is not enabled, all read requests such as the ObjectMap.get or the Query.getResultIterator methods are routed to the primary. When replicaReadEnabled is set to true, some get requests might return stale data, so an application using this option must be able to tolerate this possibility. However, a cache miss will not occur. If the data is not on the replica, the get request is redirected to the primary and tried again.
The replicaReadEnabled option can be used with both synchronous and asynchronous replication.
Parent topic:Replicas and shards
Load balancing across replicas
Shard life cycles