Load Balancing
One of the key capabilities that the cloud brings to hosting modern applications is the ability to create elastic applications that can change in scope and scale in response to changes in load. The technology that makes much of this possible is load balancing. Once again this is not a new technology, what makes it so powerful in the cloud is its ease of implementation and deep integration into the architecture. In the cloud it is relatively easy to assemble an architecture that relies on a set of load balancing nodes to keep track of changes in load on the system and respond to those changes by either spawning new instances of operating systems located at the data center closest to the origin of the traffic (if your web application becomes popular in
Japan instances could be spawned at the Tokyo AWS data center rather than in Northern Virginia). The method by which this is implemented relies on changing DNS records to pint incoming traffic to the least busy server. The metrics by which you determine which machine is busier than the next are entirely up to the user. Students can implement this technology in their cloud based application with little understanding of the underlying mechanisms by which it works, but this is an important technology in the cloud and would make a very good subject to bring into our curriculum.