There continues to be much ado about the cloud. Promises abound of lower infrastructure costs, lower IT support costs, better scalability, and better reliability, to name a few. But just because something is “in the cloud” doesn’t mean you should be cloudy about how it works. It is a dangerous practice to believe your site is safe against attacks, flash crowds and disasters just because it is in the cloud. You must understand how you are using the cloud and what it is doing for you, which means you need to know how it works.
Cloudy with a Chance of Election Website Crashes
As this LA Times article recounts during the recent general state election, “The traffic to the website has been exponentially higher than what was even projected by the state’s IT experts. The traffic basically blew up the cloud.” According to the state agency spokeswoman Nicole Winger, “Traffic at the Secretary of State’s site was higher than experienced during the last presidential election.” This is nothing less than a fundamental misunderstanding of what the cloud can do for you. Could it have been used to quickly install more server instances to absorb the load? – Probably. Could cloud services have been used to cache content and offload his system? – Definitely. Does this mean the cloud failed them? – No. It means they failed to use the cloud correctly in this case, inadequately preparing themselves for the flash crowd usually expected during elections.
Then there’s the recent election website crash in Louisiana. According to the NBC33 news, “Secretary of State Tom Schedler says he and his staff are looking into what crashed their website, which slowed results on election night. The Secretary of State went onto say that one of the possible solutions would be to make two separate websites – one to accommodate the media, and one for the general public.” As Louisiana tries to catch up to common practices in high-traffic web design, they will continue to use and propose sub-optimal compromises to shore up their misunderstandings about the cloud. Rather than continue this practice, my advice would be to use a content delivery network (CDN) for cacheable content and refresh frequently–just look at any news homepage. Certainly prioritizing press access over the public’s access will allow the press to get data when they need it, but is the public going to like this approach? While protecting press access, which represents a small subset of the overall traffic, this does nothing to support the majority of the users, and aren’t they your main customers?
Rise Above the Cloud
Use the cloud as you would any other tool or service. However, it is important that you understand why you are using it, what it can do for you, what it can’t do for you, and how it does what it does.
Let’s dig into this case a little more: Flash crowds, where many users want the same data at once, are best offset by a CDN, which distributes the content across a large set of servers for instant scalability. This assumes a) that the CDN is where your users are and b) that it has the capacity to absorb the flash crowd. Not all CDNs are alike; research is required. Additionally, Web designers should design their sites to allow as much origin offload as possible, in this case creating a page that can be cached with results updated every minute or so.
- The origin produces one voter results page per minute, and the CDN takes care of the rest. Scalability problem solved.
- With the pay-as-you-go pricing model for CDNs, you don’t have to build (and pay for) infrastructure in advance. Cost concern allayed.
- With the content distribution model used by CDNs, end-users get access to the data faster. Web performance improved.
By understanding how you are using the cloud and how it works, your site will be safe against attacks, flash crowds and disasters. Website crashes are not always predictable but they can be prevented with cloud services and some cloud knowhow.