Table of Contents
Weighted arrays allow you to adjust the distribution of your array's launched instances to favor a particular ration among the available data centers/zones. The UI defines the weights in percentages, but the actual algorithm is a weighted distribution.
If the weighted array option is selected in the Server Details tab, the user enters proportions to describe precisely how they want to scale across datacenters on the Array Details tab
Weighted array instances are launched sequentially using the defined probability to choose a region in each occurrence of a launched instance. For example, if there are 2 instances each in zone A, zone B, zone C and zone D and you specified a weighted distribution of 25%, 25%, 25% and 25%, there is an equal chance of an instance launching in any of those regions. Say zone A is selected. An instance will attempt to launch in zone A. If that instance fails, it will not retry launching in that zone until successful, it will continue to randomly select a zone until an instance is successful. This helps if there is an outage in a zone or one is overloaded. A round robin method would attempt to launch in the same zone zone until successful. This way it's not completely predictable, and the weights you specify will be applied each attempt at launching an instance. The weighted array algorithm takes into account the distribution of instances that already exists.
The allocation is weighted randomly, so the number of instances launched in each zone may not be equal at any point in time but asymptotically equal. The weighted random approach is more effective than trying to keep perfect distribution. If a datacenter/zone runs out of instances, the randomized algorithm will be able to launch in the next available zone.
© 2006-2014 RightScale, Inc. All rights reserved.
RightScale is a registered trademark of RightScale, Inc. All other products and services may be trademarks or servicemarks of their respective owners.