Class HelixScatterGatherRoutingStrategy
- java.lang.Object
-
- com.linkedin.venice.fastclient.meta.AbstractClientRoutingStrategy
-
- com.linkedin.venice.fastclient.meta.HelixScatterGatherRoutingStrategy
-
- All Implemented Interfaces:
ClientRoutingStrategy
public class HelixScatterGatherRoutingStrategy extends AbstractClientRoutingStrategy
This strategy will assign an ordering of helix groups via round-robin for even distribution. The fanout in multi-get will be performed using instances belonging to the assigned groups. If no instance belonging to the selected group is found for a given partition, the instance with the next group in the assigned ordering will be used
-
-
Constructor Summary
Constructors Constructor Description HelixScatterGatherRoutingStrategy(InstanceHealthMonitor instanceHealthMonitor)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.List<java.lang.String>
getReplicas(long requestId, java.util.List<java.lang.String> replicas, int requiredReplicaCount)
void
updateHelixGroupInfo(java.util.Map<java.lang.String,java.lang.Integer> instanceToHelixGroupIdMap)
-
-
-
Constructor Detail
-
HelixScatterGatherRoutingStrategy
public HelixScatterGatherRoutingStrategy(InstanceHealthMonitor instanceHealthMonitor)
-
-
Method Detail
-
getReplicas
public java.util.List<java.lang.String> getReplicas(long requestId, java.util.List<java.lang.String> replicas, int requiredReplicaCount)
- Specified by:
getReplicas
in interfaceClientRoutingStrategy
- Overrides:
getReplicas
in classAbstractClientRoutingStrategy
-
updateHelixGroupInfo
public void updateHelixGroupInfo(java.util.Map<java.lang.String,java.lang.Integer> instanceToHelixGroupIdMap)
- Overrides:
updateHelixGroupInfo
in classAbstractClientRoutingStrategy
-
-