6 ms·
I've noticed that Wikipedia is, now days, extremely fast if I'm not logged in. Just about any article loads near-instantaneously, it might even be faster than H
by Reason077 3y ago
I've noticed that Wikipedia is, now days, extremely fast if I'm not logged in. Just about any article loads near-instantaneously, it might even be faster than Hacker News!
But if I'm logged in its much slower - there's perhaps a second or so lag on every page view. Presumably this is because there's a cache or fast-path for pre-rendered pages, which can't be used when logged in?
- robin_reala 3y agoThis is fairly typical, and applies to HN too – you’ll see dang suggesting that people log out when there’s breaking news that gets a lot of engagement here.
- remram 3y agoThe difference is that HN stays very fast. Being logged in is more costly for the backend, but doesn't degrade your experience as a user. On Wikipedia you really suffer for being logged in.
- electroly 3y agoWhen HN is slammed, you just get the "sorry, HN is having problems" message. This is when dang suggests logging out. On many occasions that turns not being able to see the site at all into the site working quickly.
- remram 3y agoSure, past some threshold HN goes down, and at that point there is a (big) difference between the logged-in and logged-out experience. My point is that, the rest of the time, there is not, whereas for Wikipedia, the logged-in experience is always significantly worse than the logged-out experience. This encourages people to not log in which is a problem.
- znpy 3y agoIf you’re not logged you’re getting the pre-rendered, cached page. If you’re logged, a number of things have to be recomputed before the page can be rendered. I run mediawiki at home, the difference is even more stark (i have a small home server).
- jonatron 3y agoWikipedia/Wikimedia are quite open about their infrastructure. You can even see the Varnish Frontend Hitrate on their Grafana server: https://grafana.wikimedia.org/d/wiU3SdEWk/cache-host-drilldown?orgId=1 https://grafana.wikimedia.org/d/wiU3SdEWk/cache-host-drilldo... (currently 87.6%, min 69.9%, max 92.2%)
- tuukkah 3y agoYes, and you can read the documentation which has links to the source code, e.g. here: https://wikitech.wikimedia.org/wiki/Caching_overview#Retention https://wikitech.wikimedia.org/wiki/Caching_overview#Retenti...
- starkparker 3y agoWikipedia uses extensive caching when logged out, and caches much less when logged in to facilitate editing and user account functionally. https://wikitech.wikimedia.org/wiki/Caching_overview https://wikitech.wikimedia.org/wiki/Caching_overview
- bawolff 3y agoLogged out users get served by varnish cache on a server geo-located near you. Logged in users still get cached pages, but the cache is only part of the page, its not as fast a cache, the servers are not geolocated (they are in usa only for main data center), and depending on user prefs you may be more likely to get a cache miss even on the partial cache.
- flangola7 3y agoWhat's a cache miss?
- jeltz 3y agoA well established term which is trivial to google. It is when you do a cache lookup and do not find anything.
- Paul-Craft 3y agoLet's be nice to the lucky 10000 who get to learn what a cache miss is today. https://xkcd.com/1053/ https://xkcd.com/1053/
- white_dragon88 3y ago[flagged]
- PKop 3y agoThe resource you are requesting is not in the cache, thus requiring a full load from whatever the source is.
- Rapzid 3y agoThe cache takes a swing at the request. If it hits it returns, if it misses it gets caught by the origin.
- stavros 3y agoIt's fast, temporary storage, and it's mister to you!
- kibwen 3y agoSurely there must be a better way to do this, not just for Wikipedia but for all websites with optional logins. It seems like the only difference in the vast majority of cases is to change a single link in the corner of the page from "login" to "the name of my account", which is a silly reason to miss the cache.
- swyx 3y agothis is literally the goal of 20 year old AJAX patterns. progressively enhanced html with javascript on top. absolutely a solvable problem. perhaps wikipedia could look into using Astro or SvelteKit.