WhatsApp is still down
Something else is actually going on…
As for WhatsApp, that is of course a FB property.
https://arstechnica.com/information-technology/2021/10/faceb...
Best guess: there's a DNS dependency in HN's critical path somewhere and the DNS server they used was being hammered with the facebook dns lookup retries.
Here's a crazy idea: maybe a lot of HN people also spend time on FB during the day. When FB was down, they had more time to spend on HN!
> But that's not all. Now human behavior and application logic kicks in and causes another exponential effect. A tsunami of additional DNS traffic follows.
> This happened in part because apps won't accept an error for an answer and start retrying, sometimes aggressively, and in part because end-users also won't take an error for an answer and start reloading the pages, or killing and relaunching their apps, sometimes also aggressively.
... > So now, because Facebook and their sites are so big, we have DNS resolvers worldwide handling 30x more queries than usual and potentially causing latency and timeout issues to other platforms.
https://blog.cloudflare.com/october-2021-facebook-outage/
Edit: Although looking at the graph on that page, it appears that only DNS requests for FB properties increased 30x, so that last sentence appears to be misleading. Regardless, a significant overall increase.
But why does my browser need to do a DNS lookup every time I request a page from HN? It's not like the IP address changes every 5 minutes.
As for why, you'd have to ask them. It could be to allow for relatively quick DNS failover in the case of an outage. Or if using a proxy like Cloudflare, that provider could prefer short DNS TTLs to have flexibility in their routing.
dig +noauthority +noquestion +nostats news.ycombinator.com @ns-225.awsdns-28.com.
news.ycombinator.com. 300 IN A 209.216.230.240
Once they came back online and their DNS was resolving, it alleviated all that pressure.
I then executed that request in the terminal. This request was met with the same ~5 second delay I was seeing with my browser. Front and center was my authentication cookie in the header, so I removed that from the command and the request was normal in response time (extremely fast in HN’s case). I put the cookie back, it was slow, I took the cookie out it was fast. I did this 4-5 times until i was satisfied that was it.
The delay could have been due to upstream dependencies on DNS, extra load on the authenticated request pipelines, some Facebook subterfuge in the bowels of HN or just an extremely unusual syncopation in the patterns of the universe.
But clearly the authenticated requests were slow and the unauthenticated ones were not.
The JS is uncompressed and very readable. It only contains logic for site use, no code to call back some other trackers.
A perfect example of site that doesn't need to use client-side analytics to sell ads.