Time and again …
And so it goes that people talk past each other and they don’t even realize it. In my view this is what happened to Lumber 84 during their SuperBowl LI’s campaign. They drove traffic to a website that was ill equipped to handle the influx.
It takes a certain design to survive a flash mob’s interest. Ever wondered why the bathrooms at the stadium or the theater are significantly larger than those of in a train station, say Grand Central? Both facilities are design to handle lots and lots of people. The hallways are spacious, the materials used are hard/durable materials. So why would the bathrooms be so different? In two words, arrival rate. The arrival rate is what drives the design.
Simply put processing 100 widgets that arrive in a trickle means one or two processors would likely be sufficient. In contrast if those 100 widgets show up at once, the last widget processed will necessarily have a long wait time while all the previous 99 widgets are processed. For every one second of additional processing time, the 100th widget will spend an additional 99 seconds in queue, assuming only one processor. Open a second processor and the wait and delay are halved.
Specifics
The journey84.com site was not designed like a stadium or a theater, to handle a timed event, instead it was designed like a regular site. Consequently it is not surprising that when a flash mob showed up, it failed. Let’s take a look at this transaction below.
> GET / HTTP/1.1 > User-Agent: curl/7.35.0 > Host: journey84.com > Accept: */* > < HTTP/1.1 200 OK < Cache-Control: private < Content-Length: 20263 < Content-Type: text/html; charset=utf-8 < Server: Microsoft-IIS/8.0 < X-AspNetMvc-Version: 5.2 < X-AspNet-Version: 4.0.30319 < X-Powered-By: ASP.NET < Set-Cookie: ARRAffinity=e1c140a4aab77c745107aadc5e7989608b845ae8bef3dccacc8aa1d26a8caebe;Path=/;Domain=journey84.com < Date: Mon, 06 Feb 2017 01:40:56 GMT
Cache-Control: private
The server is saying that the home page for the website should not be cached by so-called public proxies. Only end-browsers should cache the page. The server is saying only I can give the page to the browser. Helpful proxies need not apply. Consequently all browser’s request will come to the server.
Set-Cookie: ARRAffinity
The Azure Request Router Affinity cookie is enabled. Why would you do that? What is so special about this particular website that requires session affinity to the server? This feature should have been disabled.
In the end…
…the result was easily predictable and what most people saw was this
Hardly a compelling marketing campaign.