Here's a graph of the number of posts per day on our Piazza page. There are clearly visible spikes for the first day of class and each of the three assignments.
@PID_1 Well, the fourth noticeable peak would be a combination of both the midterm and assignment 3, so we might see a smaller peak for assignment 4, all things considered. And assignment 3 was a new assignment, so it's reasonable that the peak was so high.
We saw that even on a daily basis (e.g., 3 AM vs 12 noon) there is a considerable difference in server activity. While it's easy for Amazon to buy a ton of servers for winter and have fewer active in the summer (maybe even renting them out), it's harder to rent out your servers at 3 AM at night every night. Do companies like Amazon just use elasticity to save energy (and therefore money) or is there a more efficient way to handle that downtime?
There are many ways to handle that downtime. As you mentioned, Amazon can rent out that server time (after all it's only 3 A.M. in one place). The way that Amazon rents out machines is virtual machine based, so Amazon may be able to give more performance to uses when the servers have low utilization.
Also, Amazon could temporarily shutdown certain machines and/or cores on the machines. This would save energy, and these servers could be turned on later when traffic bursts high again.
@bmperez I am also interested in AWS's ways to address this issue but I sort of doubt the first point you made. It seems that Amazon's servers that locate on the east coast would more probably provide service to people on the east coast. Specifically, CMU guys always rent servers in Virginia, while people on the west coast would rent servers in California or Oregon.
I'm interested in whether 418 staff uses elasticity during high traffic. If not, what is the average load time when traffic is high. Load time is a big factor in usability. For example, Google can have the best results in a certain time, but they cut down the time in exchange for a little worse quality in results to improve user experience.
This website is under the cmu.edu domain, so I wonder if it invokes scaling alongside other cmu.edu traffic spikes (i.e. prospective student research, alumni reunions). Or does cs.cmu.edu use its own separate servers from cmu.edu, which might get traffic spikes around any CS midterms or course scheduling?
@acfeng Although the bursts of traffic look pretty big in the graph, I doubt that the 418 website receives enough traffic (even during the days before an exam) to warrant any sort of multi-server elasticity. Even if you assume all the traffic on the peak day (34,436 requests) comes in over a 6-hour window, that's only about 1.6 requests per second (0.63 seconds/request), which any reasonably modern server should be able to handle without problem (I bet anyone's laptop could do it, too).