A Server Array consists of mostly identical EC2 instances where the number of instances varies over time in response to changing factors. For example, the number of instances can go up based on high CPU usage, or go back down with low CPU usage. A series of alert specifications and escalations are used to define the conditions under which the server array will change, such as launching or terminating servers.

There are two types of server arrays:

  • Alert-based - These arrays are driven by user-defined alert specifications and escalations. When certain predefined conditions are met (ex: cpu usage > 80%), it triggers an alert escalation that performs a specified action (ex: grow the array) on the server array. An alert-based server array for a web application is commonly used for autoscaling, where additional application servers are launched and added to the server array to compensate for a sudden increase in server requests.
  • Queue-based - (These are EC2-only) These arrays are driven by queues and worker daemons. Queue-based arrays are commonly used for back-end batch processing tasks where the number of worker instances in an array will vary depending on the jobs in the input queue.

Select the New action button to create a new Server Array.

Further Reading